Exemplo n.º 1
0
        public JsonResult DelAutoReplay(Entities.AutoReplyInfo item)
        {
            var result = new Result();

            WeixinAutoReplyApplication.DeleteAutoReply(item);
            result.success = true;
            result.msg     = "规则删除成功!";
            return(Json(result));
        }
Exemplo n.º 2
0
        // GET: Admin/WeiXin

        public ActionResult FocusReplay()
        {
            var item = WeixinAutoReplyApplication.GetAutoReplyByKey(CommonModel.ReplyType.Follow);

            if (item == null)
            {
                item           = new Entities.AutoReplyInfo();
                item.TextReply = "欢迎关注";
            }
            return(View(item));
        }
Exemplo n.º 3
0
 /// <summary>
 /// 删除规则
 /// </summary>
 /// <param name="autoReplyInfo"></param>
 /// <returns></returns>
 public static void DeleteAutoReply(Entities.AutoReplyInfo autoReplyInfo)
 {
     _iAutoReplyService.DeleteAutoReply(autoReplyInfo);
 }
Exemplo n.º 4
0
 /// <summary>
 /// 添加/修改规则
 /// </summary>
 /// <param name="autoReplyInfo"></param>
 /// <returns></returns>
 public static void ModAutoReply(Entities.AutoReplyInfo autoReplyInfo)
 {
     _iAutoReplyService.ModAutoReply(autoReplyInfo);
 }
Exemplo n.º 5
0
        private string GetResxml(Entities.AutoReplyInfo data, IRequestMessageBase requestBaseMsg)
        {
            string resxml = "";

            try
            {
                var siteSetting = SiteSettingApplication.SiteSettings;
                int nowtime     = ConvertDateTimeInt(DateTime.Now);
                if (data.ReplyContentType == 1)
                {
                    if (!string.IsNullOrEmpty(data.TextReply))
                    {
                        resxml = "<xml><ToUserName><![CDATA[" + requestBaseMsg.FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + requestBaseMsg.ToUserName + "]]></FromUserName><CreateTime>" + nowtime + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + data.TextReply + "]]></Content><FuncFlag>0</FuncFlag></xml>";
                    }
                }
                else if (data.ReplyContentType == 2)
                {
                    if (string.IsNullOrWhiteSpace(siteSetting.WeixinAppId))
                    {
                        Log.Info("未配置微信公众号!");
                    }
                    if (string.IsNullOrEmpty(data.MediaId))
                    {
                        Log.Info("素材ID不能为空!");
                    }
                    var           artList = _iWXMsgTemplateService.GetMedia(data.MediaId, siteSetting.WeixinAppId, siteSetting.WeixinAppSecret);
                    StringBuilder sb      = new StringBuilder();
                    sb.Append("<xml>");
                    sb.AppendFormat("<ToUserName><![CDATA[{0}]]></ToUserName>", requestBaseMsg.FromUserName);
                    sb.AppendFormat("<FromUserName><![CDATA[{0}]]></FromUserName>", requestBaseMsg.ToUserName);
                    sb.AppendFormat("<CreateTime>{0}</CreateTime>", nowtime);
                    sb.Append("<MsgType><![CDATA[news]]></MsgType>");
                    sb.AppendFormat("<ArticleCount>{0}</ArticleCount>", artList.Count());
                    sb.Append("<Articles>");
                    foreach (var item in artList)
                    {
                        Log.Debug("微信自动回复图文消息的图片media_id:" + item.thumb_media_id);
                        var ImageDir = Core.Helper.IOHelper.GetMapPath("/Storage/Weixin/AutoReply");
                        if (!System.IO.Directory.Exists(ImageDir))
                        {
                            System.IO.Directory.CreateDirectory(ImageDir);
                        }
                        string filepath = Path.Combine(ImageDir, item.thumb_media_id + ".png");
                        if (!System.IO.File.Exists(filepath))
                        {
                            MemoryStream stream = new MemoryStream();
                            _iWXMsgTemplateService.GetMedia(item.thumb_media_id, siteSetting.WeixinAppId, siteSetting.WeixinAppSecret, stream);
                            System.Drawing.Image img = System.Drawing.Image.FromStream(stream);
                            img.Save(filepath);
                        }
                        Log.Debug("微信自动回复图文消息的图片Url:" + filepath);
                        var repUrl = CurrentUrlHelper.CurrentUrlNoPort() + "/Storage/Weixin/AutoReply/" + item.thumb_media_id + ".png";
                        sb.Append("<item>");
                        sb.AppendFormat("<Title><![CDATA[{0}]]></Title>", item.title);
                        sb.AppendFormat("<Description><![CDATA[{0}]]></Description>", item.digest);
                        sb.AppendFormat("<PicUrl><![CDATA[{0}]]></PicUrl>", repUrl);
                        sb.AppendFormat("<Url><![CDATA[{0}]]></Url>", item.url);
                        sb.Append("</item>");
                    }
                    sb.Append("</Articles>");
                    sb.Append("</xml>");
                    resxml = sb.ToString();
                }
            }
            catch (Exception e)
            {
                Log.Error(e.Message);
            }
            return(resxml);
        }