Exemplo n.º 1
0
        public dynamic Request(string subject, object body)
        {
            object response = null;

            try {
                var     token   = Guid.NewGuid().ToString();
                dynamic payload = new ExpandoObject();
                payload.subject = subject;
                payload.body    = body;
                payload.token   = token;
                var json = LowerCaseSerializer.SerializeObject(payload);
                _responseHandlers.TryAdd(token, (msg) => {
                    response = msg;
                });
                _serverChatService.SendMessage(json);
                while (response == null)
                {
                    Thread.Sleep(200);
                }
                Action <object> removedItem;
                _responseHandlers.TryRemove(token, out removedItem);
                return((dynamic)response);
            } catch (Exception ex) {
                _onSendException(ex);
            }
            return(null);
        }
Exemplo n.º 2
0
 public void Send(string subject, object body)
 {
     try {
         dynamic payload = new ExpandoObject();
         payload.subject = subject;
         payload.body    = body;
         payload.token   = "";
         var json = LowerCaseSerializer.SerializeObject(payload);
         _serverChatService.SendMessage(json);
     } catch (Exception ex) {
         _onSendException(ex);
     }
 }