void m_WebSocketClient_MessageReceived(object sender, MessageReceivedEventArgs e) { MessageModel model = new MessageModel(e.Message); switch (model.Command) { case EnumCommand.AuthQuestion: m_WebSocketClient.Send(EnumCommand.AuthUser + " " + ConfigurationManager.AppSettings["ClientCode"] + "$aaa"); break; case EnumCommand.AuthAccept: //m_Logined = true; m_PrivateKey = Careysoft.Basic.Public.DES.Decrypt(model.Body, DateTime.Now.AddDays(-1).ToString("yyyyMMdd")); StartHeartBeat(); break; case EnumCommand.MessagePoint: string body = model.Body; body = Careysoft.Basic.Public.DES.Decrypt(body, m_PrivateKey); MessageBodyModel msgModel = Careysoft.Basic.Public.ObjectSerializer.Xml16ToInstances <MessageBodyModel>(body); DoMessagePoint(msgModel); //发送 break; } }
private void TimmerCheck() { while (m_Checked) { if (!m_AutoServerConnected) { MessageBodyModel bodyModel = new MessageBodyModel(); bodyModel.Header.TargetCode = ConfigurationManager.AppSettings["AutoExecuteClientCode"]; bodyModel.Header.SourceCode = ConfigurationManager.AppSettings["ClientCode"]; bodyModel.Header.MessageType = EnumMessageType.Point; bodyModel.Header.TagetType = EnumClientType.Normal; bodyModel.MessageContentType = EnumMessageContentType.Text; bodyModel.MessageContent = Model.EnumServerMessage.QueryState.ToString(); string sendMessage = Careysoft.Basic.Public.ObjectSerializer.InstancesToXML <MessageBodyModel>(bodyModel); sendMessage = Careysoft.Basic.Public.DES.Encrypt(sendMessage, m_PrivateKey); MessageModel model2 = new MessageModel(EnumCommand.MessagePoint, sendMessage); m_WebSocketClient.Send(model2.ToString()); m_ConnectingCount--; if (m_ConnectingCount == 0) { if (this.InvokeRequired) { this.BeginInvoke((MethodInvoker) delegate { lab_connection.Appearance.ForeColor = Color.Tomato; lab_connection.Caption = "自动服务状态:服务停止"; m_Checked = false; }); } } } Thread.Sleep(2000); } }
public void SendGroupMessage(MessageBodyModel msgModel) { if (m_WebSocketClient != null && m_WebSocketClient.State == WebSocketState.Open) { string sendMessage = ""; msgModel.Header.SourceCode = ConfigurationManager.AppSettings["ClientCode"]; sendMessage = Careysoft.Basic.Public.ObjectSerializer.InstancesToXML <MessageBodyModel>(msgModel); sendMessage = Careysoft.Basic.Public.DES.Encrypt(sendMessage, m_PrivateKey); MessageModel model = new MessageModel(EnumCommand.MessageGroup, sendMessage); m_WebSocketClient.Send(model.ToString()); } }
private void DoMessagePoint(MessageBodyModel msgModel) { Model.EnumServerMessage messageContent = (Model.EnumServerMessage)Enum.Parse(typeof(Model.EnumServerMessage), msgModel.MessageContent); m_AutoServerConnected = true; switch (messageContent) { case Model.EnumServerMessage.StateWorked: { if (this.InvokeRequired) { this.BeginInvoke((MethodInvoker) delegate { lab_connection.Appearance.ForeColor = Color.LightGreen; lab_connection.Caption = "自动服务状态:正常运行"; m_Checked = false; }); } } break; case Model.EnumServerMessage.StateNoWork: { if (this.InvokeRequired) { this.BeginInvoke((MethodInvoker) delegate { lab_connection.Appearance.ForeColor = Color.Coral; lab_connection.Caption = "自动服务状态:服务停止"; m_Checked = false; }); } } break; case Model.EnumServerMessage.StateShutdown: { if (this.InvokeRequired) { this.BeginInvoke((MethodInvoker) delegate { lab_connection.Appearance.ForeColor = Color.Coral; lab_connection.Caption = "自动服务状态:服务停止"; m_Checked = false; }); } } break; } }
private void DoMessagePoint(MessageBodyModel msgModel) { //string sendMessage = ""; //Model.EnumServerMessage messageContent = (Model.EnumServerMessage)Enum.Parse(typeof(Model.EnumServerMessage), msgModel.MessageContent); //switch (messageContent) { // case Model.EnumServerMessage.Hello: // string codeTemp = msgModel.Header.TargetCode; // msgModel.Header.TargetCode = msgModel.Header.SourceCode; // msgModel.Header.SourceCode = codeTemp; // sendMessage = Careysoft.Basic.Public.ObjectSerializer.InstancesToXML<MessageBodyModel>(msgModel); // sendMessage = Careysoft.Basic.Public.DES.Encrypt(sendMessage, m_PrivateKey); // break; //} //MessageModel model = new MessageModel(EnumCommand.MessagePoint, sendMessage); //m_WebSocketClient.Send(model.ToString()); EventRecieveMessage(msgModel, null); }