/// <summary> /// 微信消息发送接口 /// </summary> /// <param name="msg"></param> private void weixinNoticeSend(SocketMsgData.SocketRequest msg) { try { Console.WriteLine("推送微信消息"); //Console.WriteLine("{0:M} {1:t}:推送微信消息", DateTime.Now, DateTime.Now ); if (msg != null) { try { SeatManage.ClassModel.WeiXinBaseMsg weixinMsg = msg.Parameters[0] as SeatManage.ClassModel.WeiXinBaseMsg; string weixinId = AMS.ServiceProxy.WeiXinProxy.GetReaderWeixinIdByCardNo(weixinMsg.CardNum, weixinMsg.SchoolNum); if (string.IsNullOrEmpty(weixinId))//如果微信Id为null,则程序终止 { return; } WeiXinJK.Model.WeiXinJsonTxtMessage json = new WeiXinJK.Model.WeiXinJsonTxtMessage(weixinId, weixinMsg.ToString()); string weiXinMsgSendUrl = System.Configuration.ConfigurationManager.AppSettings["weiXinMsgSendUrl"]; string strjson = json.Getmess(); Console.WriteLine("{0:M} {1:t}:推送微信消息{2}", DateTime.Now, DateTime.Now, strjson); SeatManage.SeatManageComm.HttpRequest.Post(weiXinMsgSendUrl, strjson); } catch (Exception ex) { Console.WriteLine(ex.Message); } } } catch (Exception ex) { SeatManage.SeatManageComm.WriteLog.Write(string.Format("weixinNoticeSend执行失败:{0},异常来自:{1}", ex.Message, ex.Source)); } }
void server_OnMsgReceived(string uid, SocketMsgData.SocketMsgBase e) { try { SocketMsgData.SocketMsgBase msg = e; if (msg.SubSystem == SocketMsgData.TcpSeatManageSubSystem.SocketClient && msg.MsgType == SocketMsgData.TcpMsgDataType.ClientToken) { if (schoolNums.ContainsKey(msg.Sender)) { schoolNums[msg.Sender] = uid; } else { schoolNums.Add(msg.Sender, uid); } Console.WriteLine("{0:M} {1:t}:学校{2}已建立连接", DateTime.Now, DateTime.Now, msg.Sender); SeatManage.SeatManageComm.WriteLog.Write(schoolLinkLog, string.Format("学校{0}已连接,Ip地址:{1}", msg.Sender, uid)); if (OnSchoolConnectionHandler != null) { OnSchoolConnectionHandler(msg.Sender, uid); } } else { if (OnReceivedMsg != null) { OnReceivedMsg(msg); } switch (msg.MsgType) { case TcpMsgDataType.Relay: RelaySocketMsg(uid, msg); break; case TcpMsgDataType.WeiXinNotice: SocketMsgData.SocketRequest request = msg as SocketMsgData.SocketRequest; weixinNoticeSend(request); break; } } } catch (Exception ex) { SeatManage.SeatManageComm.WriteLog.Write(string.Format("消息处理失败:{0},异常来自:{1}", ex.Message, ex.Source)); } }