public async Task <ActionResult> Post([FromBody] Commons.Message message) { var messageEnvelop = new Microsoft.Azure.ServiceBus.Message { MessageId = message.ID.ToString(), ContentType = "application/json", Body = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(message)) }; await queueClient.SendAsync(messageEnvelop); return(Ok()); }
public async Task <ActionResult> Broadcast([FromBody] Commons.Message message) { var messageEnvelop = new Message { MessageId = message.ID.ToString(), ContentType = "application/json", Body = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(message)), }; messageEnvelop.UserProperties["domain"] = new MailAddress(message.Receipient).Host; await topicClient.SendAsync(messageEnvelop); return(Ok()); }
private void btnSend_Click(object sender, EventArgs e) { if (txtMessage.Text.Trim().Length == 0) return; byte[] buffer = Encoding.ASCII.GetBytes(txtMessage.Text); //Statics.CurrentClient.GetStream().Write(buffer, 0, buffer.Length); Commons.Message msg = new Commons.Message(); msg.Command = Commons.Statics.Commands.SENDMSG; msg.To = this.Tag.ToString(); msg.Sender = Statics.CurrentUser; msg.Text = txtMessage.Text.Trim(); Commons.Message.Send(msg, Statics.CurrentClient.GetStream()); AppendToHistory(msg.Text, Statics.CurrentUser.UserName); txtMessage.Text = string.Empty; }
public void RegisterLogout() { Commons.Message msg = new Commons.Message(); msg.Command = Commons.Statics.Commands.USEROFFLINE; msg.Sender = Statics.CurrentUser; }
private void UserList_Load(object sender, EventArgs e) { Statics.CurrentClient = new TcpClient(); Statics.CurrentClient.Connect("node7", 1269); if (Statics.CurrentClient.Connected) { Commons.Message msg = new Commons.Message(); msg.Command = Commons.Statics.Commands.ADD; Commons.UserInfo user = new Commons.UserInfo(); user.UserName = Environment.UserName; user.Identifier = Environment.UserName; lblUser.Text = Environment.UserName; msg.Sender = user; Statics.CurrentUser = user; Commons.Message.Send(msg, Statics.CurrentClient.GetStream()); this.Text = "ProjectTalk™ - " + Statics.CurrentUser.UserName; ThreadStart tsReadMessage; Thread thReadMessage; tsReadMessage = delegate { ReadMessage(); }; thReadMessage = new Thread(tsReadMessage); thReadMessage.SetApartmentState(ApartmentState.STA); thReadMessage.Start(); refreshTimer.Start(); } }
void ProcessMessage(Commons.Message msg, NetworkStream ns) { Commons.Message response = new Commons.Message(); switch (msg.Command) { case Commons.Statics.Commands.LISTUSERS: // List all the users. Statics.CurrentUsers = Commons.UserInfo.Deserialize(msg.Text); break; case Commons.Statics.Commands.SENDMSG: //Statics.MessageQueue.Add(msg); if (Statics.MessageWindows.Count > 0) { List<string> tags = (from MessageWindow mw in Statics.MessageWindows select mw.Tag.ToString()).ToList<string>(); if (!tags.Contains(msg.Sender.UserName)) { MessageWindow msgWindow = new MessageWindow(msg.Sender.UserName); msgWindow.Show(); Statics.MessageWindows.Add(msgWindow); } else { MessageWindow msw = (MessageWindow)(from MessageWindow mw in Statics.MessageWindows where mw.Tag.ToString().Equals(msg.Sender.UserName) select mw).ToList<MessageWindow>().First<MessageWindow>(); SetMessage(msw, msg); } } else { OpenNewWindow(msg); } break; case Commons.Statics.Commands.USERONLINE: if (!Statics.CurrentUsers.Contains(msg.Sender)) Statics.CurrentUsers.Add(msg.Sender); break; case Commons.Statics.Commands.USEROFFLINE: if (Statics.CurrentUsers.Contains(msg.Sender)) Statics.CurrentUsers.Remove(msg.Sender); break; } }