/// <summary> /// 删除规则 /// </summary> protected void DeleteMsgRule() { int msgId = EConvert.ConvertTo <int>(Request["msgId"]); bool result = MsgReplyBll.DeleteMsgRule(msgId); Json(new { state = result }); }
/// <summary> /// 保存规则 /// </summary> protected void SaveRule() { string json = Request["ruleInfo"]; var dto = JsonConvert.DeserializeObject <MsgReplyResult>(json); bool result = MsgReplyBll.SaveMsgRule(dto); Json(new { state = result }); }
/// <summary> /// 获取关键字回复规则 /// </summary> protected void GetAllRule() { var result = MsgReplyBll.GetAllMsgRule(); if (result != null && result.Count > 0) { Json(new { state = true, data = result }); return; } Json(new { state = false }); }
/// <summary> /// 处理文字请求 /// </summary> /// <returns></returns> public override Senparc.Weixin.MP.Entities.IResponseMessageBase OnTextRequest(RequestMessageText requestMessage) { Task.Run(() => { try { string openId = requestMessage.FromUserName; string replyMode; LogHandler.Info(JsonConvert.SerializeObject(requestMessage)); var contentList = MsgReplyBll.GetReplyInfo(requestMessage.Content, out replyMode); LogHandler.Info(JsonConvert.SerializeObject(contentList)); LogHandler.Info("replyMode" + replyMode); if (contentList != null && contentList.Count > 0) { if (replyMode == AutoReplyMode.random_one.ToString()) { contentList = new List <mpmsgreplycontent>() { contentList[0] }; } foreach (var replyContent in contentList) { switch (replyContent.ReplyType) { //类型枚举参照 Senparc.Weixin.MP.AutoReplyType 枚举 case "text": CustomApi.SendText(BaseClass.AppId, openId, EConvert.ConvertEmojiHtml(Senparc.Weixin.HttpUtility.RequestUtility.UrlDecode(replyContent.ReplyContent))); break; case "img": CustomApi.SendImage(BaseClass.AppId, openId, replyContent.ReplyContent); break; case "news": CustomApi.SendMpNews(BaseClass.AppId, openId, replyContent.ReplyContent); break; } } } else { var replyItem = MpEventBll.GetByKey("ych_automsg"); if (replyItem != null) { switch (replyItem.ReplyType) { case "text": CustomApi.SendText(BaseClass.AppId, openId, EConvert.ConvertEmojiHtml(Senparc.Weixin.HttpUtility.RequestUtility.UrlDecode(replyItem.ReplyContent))); break; case "img": CustomApi.SendImage(BaseClass.AppId, openId, replyItem.ReplyContent); break; } } } } catch (Exception e) { LogHandler.Error($"错误位置:微信文字请求回复\n请求数据:{JsonConvert.SerializeObject(requestMessage)}\n错误信息:{e.StackTrace}"); } }); //将消息转发到客服 var responseMessage = CreateResponseMessage <ResponseMessageTransfer_Customer_Service>(); return(responseMessage); }