/// <summary>
 /// Push a message to clients.
 /// </summary>
 /// <param name="messageType">The message type.</param>
 /// <param name="name">The message sender name.</param>
 /// <param name="message">The message to push.</param>
 public void PushMessage(MessageTypes messageType, string name, string message)
 {
     var command = new EnvironmentMessage().ToPostUrl();
     var client = new RestClient(Host);
     var request = new RestRequest(command, Method.POST);
     request.AddParameter("messageType", messageType);
     request.AddParameter("name", name);
     request.AddParameter("message", message);
     client.ExecuteAsync(request, response => {});
 }
        public override void Before(HttpContext context)
        {
            if (_message == null)
            {
                var time                 = DateTimeOffset.Now;
                var timeZoneInfo         = TimeZoneInfo.Local;
                var isDaylightSavingTime = timeZoneInfo.IsDaylightSavingTime(time);

                _message = new EnvironmentMessage
                {
                    ServerName               = Environment.MachineName,
                    ServerTime               = time.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fff"),
                    ServerTimezoneOffset     = time.ToString("zzz"),
                    ServerDaylightSavingTime = isDaylightSavingTime,
                    FrameworkDescription     = RuntimeInformation.FrameworkDescription,
                    ProcessArchitecture      = RuntimeInformation.ProcessArchitecture.ToString(),
                    OSDescription            = RuntimeInformation.OSDescription,
                    OSArchitecture           = RuntimeInformation.OSArchitecture.ToString()
                };
            }

            _broker.SendMessage(_message);
        }
 /// <summary>
 /// Push environment messages.
 /// </summary>
 /// <param name="request">The request.</param>
 public void Post(EnvironmentMessage request)
 {
     ServerEvents.NotifyChannel("spectator", new SpectatorMessage { MessageType = request.MessageType, Name = request.Name, Message = request.Message });
 }
Ejemplo n.º 4
0
 public void SendMessage(EnvironmentMessage msg)
 {
     pipeClient.Write(JsonUtility.ToJson(msg));
 }
Ejemplo n.º 5
0
 public abstract void NextStep(ref EnvironmentMessage message);