/// <summary>
        /// JObject转换成文本信息
        /// </summary>
        /// <param name="rootMsg"></param>
        /// <param name="jObject"></param>
        /// <returns></returns>
        public static RequestTextMsg ToTextMsg(this RequestRootMsg rootMsg, JObject jObject)
        {
            RequestTextMsg textMsg = new RequestTextMsg
            {
                CreateTime   = rootMsg.CreateTime,
                FromUserName = rootMsg.FromUserName,
                ToUserName   = rootMsg.ToUserName,
                Content      = (string)jObject["Content"][CDATA_KEY],
                MsgId        = (long)jObject["MsgId"]
            };

            return(textMsg);
        }
예제 #2
0
        /// <summary>
        /// 文本请求响应
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public ResponseRootMsg OnTextRequest(RequestTextMsg request)
        {
            var dbkeyword = databaseFixture.Db.WxKeyword.Find(m => m.Keyword == request.Content.Trim());

            if (dbkeyword == null)
            {
                return(null);
            }
            var dbrule = databaseFixture.Db.WxRule.Find(m => m.Id == dbkeyword.RuleId);

            if (dbrule == null)
            {
                return(null);
            }
            switch ((ResponseMsgType)dbrule.ResponseMsgType)
            {
            case ResponseMsgType.Text:
                return(GetResponseTextMsgByRuleId(dbrule.Id, request));

            case ResponseMsgType.Image:
                break;

            case ResponseMsgType.Voice:
                break;

            case ResponseMsgType.Video:
                break;

            case ResponseMsgType.Music:
                break;

            case ResponseMsgType.News:
                break;

            case ResponseMsgType.Transfer_Customer_Service:
                break;

            default:
                break;
            }
            return(null);
        }
예제 #3
0
 /// <summary>
 /// 文本请求处理
 /// </summary>
 /// <param name="request">文本请求实体</param>
 /// <returns></returns>
 protected virtual ResponseRootMsg OnTextRequest(RequestTextMsg request)
 {
     throw new NotImplementedException();
 }
        /// <summary>
        /// 文本请求
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        protected override ResponseRootMsg OnTextRequest(RequestTextMsg request)
        {
            var res = _ruleService.OnTextRequest(request);

            return(res ?? this.OnDefault(request));
        }
예제 #5
0
 /// <summary>
 /// 文本请求处理
 /// </summary>
 /// <param name="request">文本请求实体</param>
 /// <returns></returns>
 public virtual ResponseRootMsg OnTextRequest(RequestTextMsg request)
 {
     return(OnDefault(request));
 }