diff --git a/WelsonJS.Toolkit/WelsonJS.Service/MessageReceiver.cs b/WelsonJS.Toolkit/WelsonJS.Service/MessageReceiver.cs deleted file mode 100644 index d14c543..0000000 --- a/WelsonJS.Toolkit/WelsonJS.Service/MessageReceiver.cs +++ /dev/null @@ -1,135 +0,0 @@ -// MessageReceiver.cs -// https://github.com/gnh1201/welsonjs -using Grpc.Core; -using Grpc.Net.Client; -using System; -using System.Management; -using System.Net.Http; -using System.ServiceProcess; -using System.Threading.Tasks; -using WelsonJS.GrpcService; - -namespace WelsonJS.Service -{ - public class MessageReceiver - { - private GrpcChannel channel; - private ServiceMain parent; - private string deviceId; - private string serverAddress; - - public MessageReceiver(ServiceBase parent, string workingDirectory) - { - this.parent = (ServiceMain)parent; - - // Read the device ID on this computer - deviceId = GetSystemUUID(); - - // Read configuration from settings.ini - if (!String.IsNullOrEmpty(deviceId)) - { - this.parent.Log($"Resolved the device ID: {deviceId}"); - - try - { - serverAddress = this.parent.GetSettingsFileHandler().Read("GRPC_HOST", "Service"); - if (String.IsNullOrEmpty(serverAddress)) - { - throw new Exception("The server address could not be empty."); - } - } - catch (Exception ex) - { - serverAddress = "http://localhost:50051"; - this.parent.Log($"Failed to read the server address. {ex.Message} Use default value: {serverAddress}"); - } - } - else - { - serverAddress = null; - this.parent.Log($"Failed to resolve the device ID"); - } - - // Set the GRPC channel - if (serverAddress != null) - { - try - { - HttpClientHandler httpHandler = new HttpClientHandler(); - - this.parent.Log($"Use the remote address: {serverAddress}"); - channel = GrpcChannel.ForAddress(serverAddress, new GrpcChannelOptions - { - HttpHandler = httpHandler // use HTTP/1.1 - }); - } - catch (Exception ex) - { - channel = null; - this.parent.Log($"Failed to initialize the GRPC channel: {ex.Message}"); - } - } - } - - public void Start() - { - if (channel != null) - { - Task.Run(() => GetTask()); - parent.Log("GRPC Message Receiver Started"); - } - else - { - parent.Log("Failed to initalize the GRPC channel"); - } - } - - private async Task GetTask() - { - parent.Log("Use the device ID: " + deviceId); - - try - { - var client = new MessageController.MessageControllerClient(channel); - - var request = new MessageRequest { - ClientId = deviceId - }; - var call = client.SendMessageStream(request); - - while (await call.ResponseStream.MoveNext()) - { - var response = call.ResponseStream.Current; - parent.Log($"< {response.Message}"); - - // dispatch to the script runtime - parent.DispatchServiceEvent("messageReceived", new string[] { response.Message }); - } - } - finally - { - channel?.Dispose(); - } - } - - private string GetSystemUUID() - { - try - { - using (var searcher = new ManagementObjectSearcher("SELECT UUID FROM Win32_ComputerSystemProduct")) - { - foreach (var mo in searcher.Get()) - { - return mo["UUID"].ToString(); - } - } - } - catch (Exception ex) - { - parent.Log($"An error occurred while retrieving the system UUID: {ex.Message}"); - } - - return null; - } - } -} diff --git a/WelsonJS.Toolkit/WelsonJS.Service/Protos/WelsonJS.GrpcService.proto b/WelsonJS.Toolkit/WelsonJS.Service/Protos/WelsonJS.GrpcService.proto deleted file mode 100644 index b3b542f..0000000 --- a/WelsonJS.Toolkit/WelsonJS.Service/Protos/WelsonJS.GrpcService.proto +++ /dev/null @@ -1,15 +0,0 @@ -syntax = "proto3"; - -option csharp_namespace = "WelsonJS.GrpcService"; - -service MessageController { - rpc SendMessageStream (MessageRequest) returns (stream MessageReply); -} - -message MessageRequest { - string clientId = 1; -} - -message MessageReply { - string message = 1; -} \ No newline at end of file diff --git a/WelsonJS.Toolkit/WelsonJS.Service/ServiceMain.cs b/WelsonJS.Toolkit/WelsonJS.Service/ServiceMain.cs index c46878a..f91c0da 100644 --- a/WelsonJS.Toolkit/WelsonJS.Service/ServiceMain.cs +++ b/WelsonJS.Toolkit/WelsonJS.Service/ServiceMain.cs @@ -261,16 +261,6 @@ namespace WelsonJS.Service Log("File Event Monitor is Disabled"); } - // Start GRPC Message Receiver - if (!disabledMessageReceiver) { - MessageReceiver receiver = new MessageReceiver(this, workingDirectory); - receiver.Start(); - } - else - { - Log("GRPC Message Receiver is Disabled"); - } - // Start all the registered timers timers.ForEach(timer => timer?.Start()); diff --git a/WelsonJS.Toolkit/WelsonJS.Service/WelsonJS.Service.csproj b/WelsonJS.Toolkit/WelsonJS.Service/WelsonJS.Service.csproj index 0e83121..433da9b 100644 --- a/WelsonJS.Toolkit/WelsonJS.Service/WelsonJS.Service.csproj +++ b/WelsonJS.Toolkit/WelsonJS.Service/WelsonJS.Service.csproj @@ -89,9 +89,6 @@ ..\packages\Grpc.Core.2.46.6\lib\net45\Grpc.Core.dll - - ..\packages\Grpc.Core.Api.2.65.0\lib\net462\Grpc.Core.Api.dll - ..\packages\Grpc.Net.Client.2.65.0\lib\net462\Grpc.Net.Client.dll @@ -112,9 +109,6 @@ ..\packages\RestSharp.111.4.1\lib\net48\RestSharp.dll - - ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll - @@ -122,20 +116,11 @@ - - ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll - ..\packages\System.Net.Http.WinHttpHandler.8.0.2\lib\net462\System.Net.Http.WinHttpHandler.dll - - ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll - - - ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll - ..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll @@ -155,7 +140,6 @@ - Component @@ -202,9 +186,7 @@ - - Always - + diff --git a/WelsonJS.Toolkit/WelsonJS.Service/packages.config b/WelsonJS.Toolkit/WelsonJS.Service/packages.config index 4b033f1..4d11241 100644 --- a/WelsonJS.Toolkit/WelsonJS.Service/packages.config +++ b/WelsonJS.Toolkit/WelsonJS.Service/packages.config @@ -3,7 +3,6 @@ - @@ -12,12 +11,8 @@ - - - -