/** * Creates and sends the map update message type * @param str the string that will be udpdated to players text * @param player the player to send the update message to */ static void SendUpdateMessage(String str, Player player) { UpdateChat UC = new UpdateChat(); UC.message = str; MemoryStream stream = UC.WriteData(player.Salt); player.Socket.Send(stream.ToArray()); }
public Form2(ClientTopicsManager client, String pseudo, String password) { transm.AddReceiveDel(receiveMessage); this.client = client; this.pseudo = pseudo; this.password = password; this.topic = ""; this.Text = pseudo; InitializeComponent(); textChat += new UpdateChat(this.showText); textTopic += new UpdateTopic(this.showTopic); textMember += new UpdateMember(this.showMember); showTopic(); }
public PostChat UpdateUser(UpdateChat inputData, string apiKey) { var updateInfo = JsonConvert.SerializeObject(inputData); var httpContent = new StringContent(updateInfo, Encoding.UTF8, "application/json"); string apiLink = "https://latest-chat.herokuapp.com/api/user/update"; var response = _client.PostAsync(apiLink, httpContent).Result; var data = response.Content.ReadAsStringAsync().Result; var returned = JsonConvert.DeserializeObject <PostChat>(data); LoggedIn.Username = returned.Username; LoggedIn.UserId = returned.UserId; LoggedIn.AvatarUrl = inputData.AvatarUrl; return(returned); }
public void EncodeAndDecode_UpdateChat() { MessageId msgId = new MessageId(); MessageId convId = new MessageId(); UpdateChat msg1 = new UpdateChat() { MsgId = msgId, ConvId = convId, PlayerID = 7, Message = "New game who dis?" }; byte[] bytes = msg1.Encode(); UpdateChat msg2 = Message.Decode <UpdateChat>(bytes); Assert.IsNotNull(msg2); Assert.AreEqual(msg1.MsgId, msg2.MsgId); Assert.AreEqual(msg1.ConvId, msg2.ConvId); Assert.AreEqual(msg1.PlayerID, msg2.PlayerID); Assert.AreEqual(msg1.Message, msg2.Message); }
/** * Thread responsible for receiving all incoming data from the server * @param o form object reference */ private void ClientReceive(Object o) { MudClient form = (MudClient)o; while (form.bConnected == true) { try { byte[] buffer = new byte[4096]; int result; //listen for buffer result = form.clientSocket.Receive(buffer); if (result > 0) { //decode stream Msg m = Msg.DecodeStream(buffer, Salt, ShouldDecrypt); //Get message type and do approriate actiobn if (m != null) { Console.Write("Got a message: "); switch (m.mID) { case DungeonResponse.ID: { DungeonResponse dr = (DungeonResponse)m; form.AddDungeonText(dr.response, true); } break; case MapLayout.ID: { MapLayout ml = (MapLayout)m; DrawQueue.Enqueue(() => ParseMap(ml.mapInfo)); break; } case LoginResponse.ID: { LoginResponse lm = (LoginResponse)m; if (lm.loggedIn == "1") { //Login was successful start decrypting and start main game loginScreen.LoginResponse(lm.message, true); ShouldDecrypt = true; } else { //login failed, show failed message loginScreen.LoginResponse(lm.message, false); ShouldDecrypt = false; } } break; case PlayerLocations.ID: { PlayerLocations pl = (PlayerLocations)m; DrawQueue.Enqueue(() => UpdatePlayerLocations(pl.LocationString)); } break; case UpdateChat.ID: { UpdateChat uc = (UpdateChat)m; form.AddDungeonText(uc.message, false); } break; case SaltSend.ID: { SaltSend ss = (SaltSend)m; Salt = ss.salt; SendLoginMessage(); break; } case SaltRequest.ID: { SaltRequest sr = (SaltRequest)m; SendCreateUserMessage(); break; } default: break; } } } } catch (Exception ex) { //If a discconect happens restart the service form.bConnected = false; Console.WriteLine(U.NL("Lost server!") + ex); Application.Restart(); Environment.Exit(0); } } }
public IChatModel Any(UpdateChat request) { return(workflow.Update(request)); }
public void on_message_receive_event(string id, string message) { if (this.txtLog.InvokeRequired) { UpdateChat d = new UpdateChat(on_message_receive_event); this.Invoke(d, new object[] { id, message }); } else { txtLog.AppendText(Environment.NewLine + id + ": " + message); typeBox.Text = ""; txtLog_AlignTextToBottom(); txtLog_ScrollToBottom(); } if (_tabIdDict.ContainsKey(id)) { _tabIdDict[id].UpdateChatBox(id, message); } }
public IActionResult UpdateUser(UpdateChat inputData, [FromHeader] string apiKey) { var updated = chatService.UpdateUser(inputData, apiKey); return(View("MainPage")); }
public void on_message_receive_event(string id, string message) { if (txtLog.InvokeRequired) { UpdateChat d = new UpdateChat(on_message_receive_event); this.Invoke(d, new object[] { id, message }); } else { txtLog.AppendText(Environment.NewLine + "Dokter " + id + ": " + message); txtLog_AlignTextToBottom(); txtLog_ScrollToBottom(); } }