微信公共服务平台开发(.Net 的实现)7-------发送图文消息
程序员文章站
2022-05-23 18:17:48
之前我们讲过让微信发送给我们普通的文本信息,下面我们来看看如何发送图文信息,需要注意的是这里说的是,让微信发给我们,而不是我们拍个图片发给微信处理,我们上传图片在以后的章节介绍.下...
之前我们讲过让微信发送给我们普通的文本信息,下面我们来看看如何发送图文信息,需要注意的是这里说的是,让微信发给我们,而不是我们拍个图片发给微信处理,我们上传图片在以后的章节介绍.下面是发送图文消息的函数,涉及title(标题),description(摘要),picurl(图片),链接(url)几个关键的参数:
protected string sendPicTextMessage(Msg _mode,string title,string description,string picurl,string url) { string res = string.Format(@" {2} 1", _mode.FromUserName, _mode.ToUserName, DateTime.Now,title, description, picurl, url); return res; }
直接在调用函数即可:
protected void Page_Load(object sender, EventArgs e) { MyMenu(); wxmessage wx = GetWxMessage(); string res = ""; if (!string.IsNullOrEmpty(wx.EventName) && wx.EventName.Trim() == "subscribe") { string content = ""; content = "/:rose欢迎北京永杰友信科技有限公司/:rose\n直接回复“你好”"; res = sendTextMessage(wx, content); } else if (!string.IsNullOrEmpty(wx.EventName) && wx.EventName.Trim() == "CLICK") { if(wx.EventKey=="Hello") res = sendTextMessage(wx, "你好,欢迎使用北京永杰友信科技有限公司公共微信平台!"); if(wx.EventKey=="P1") res = sendTextMessage(wx, "你好,点击了产品1"); if(wx.EventKey=="P2") res = sendTextMessage(wx, "你好,点击了产品2"); } else { if (wx.MsgType == "text" && wx.Content == "你好") { res = sendTextMessage(wx, "你好,欢迎使用北京永杰友信科技有限公司公共微信平台!"); } if (wx.MsgType == "text" && wx.Content == "图文") { res = sendPicTextMessage(wx,"这里是一个标题","这里是摘要","https://mp.weixin.qq.com/wiki/skins/common/images/weixin_wiki_logo.png","https://www.4ugood.net"); } else if (wx.MsgType == "voice") { res = sendTextMessage(wx, wx.Recognition); } else { res = sendTextMessage(wx, "你好,未能识别消息!"); } } Response.Write(res); } private wxmessage GetWxMessage() { wxmessage wx = new wxmessage(); StreamReader str = new StreamReader(Request.InputStream, System.Text.Encoding.UTF8); XmlDocument xml = new XmlDocument(); xml.Load(str); wx.ToUserName = xml.SelectSingleNode("xml").SelectSingleNode("ToUserName").InnerText; wx.FromUserName = xml.SelectSingleNode("xml").SelectSingleNode("FromUserName").InnerText; wx.MsgType = xml.SelectSingleNode("xml").SelectSingleNode("MsgType").InnerText; if (wx.MsgType.Trim() == "text") { wx.Content = xml.SelectSingleNode("xml").SelectSingleNode("Content").InnerText; } if (wx.MsgType.Trim() == "event") { wx.EventName = xml.SelectSingleNode("xml").SelectSingleNode("Event").InnerText; wx.EventKey = xml.SelectSingleNode("xml").SelectSingleNode("EventKey").InnerText; } if (wx.MsgType.Trim() == "voice") { wx.Recognition = xml.SelectSingleNode("xml").SelectSingleNode("Recognition").InnerText; } return wx; }
推荐阅读
-
微信公共服务平台开发(.Net 的实现)4-------语音识别
-
微信公共服务平台开发(.Net 的实现)2-------获得ACCESSTOKEN
-
微信公共服务平台开发(.Net 的实现)3-------发送文本消息
-
微信公共服务平台开发(.Net 的实现)7-------发送图文消息
-
微信公共服务平台开发(.Net 的实现)6-------自定义菜单
-
微信公共服务平台开发(.Net 的实现)1-------认证“成为开发者”
-
微信公共服务平台开发(.Net 的实现)8-------处理图片(上传下载发送)
-
微信图文消息阅读量和点赞数是发送消息是自带的还是需要开发者实现?
-
微信公共服务平台开发(.Net 的实现)3-------发送文本消息
-
微信公共服务平台开发(.Net 的实现)2-------获得ACCESSTOKEN