微信公众平台开发介绍(三)

前些时间,微信公众平台开放了更多的api,但是只适用于服务号。对于订阅号来说,还是很少的接口可用。

上一节中,只解决了一种类型的消息,就是事件消息。包括关注和取消关注。服务号还增加了自定义菜单事件和上报地理位置事件。

在这一讲中主要介绍一下被动回复消息,就是接收到用户上行的消息,所做出的回复。消息类型主要包括文本消息,图片消息,语音消息,视频消息,图文消息等。还有一类消息是公众号主动推送的消息,但是接口只适用于服务号。

基于回复消息,我们还可以定制自定义回复,就是基于用户的消息,及时,友好的发生相关信息。下一节中会介绍。

对于每种消息类型,我们都有一个相应的类来处理。在这一节中,只介绍回复消息。

在这一节中,我们对用户消息的处理,类似与“echo”功能,即用户输入什么,我们会返回什么。这样代码简单,而且容易说明。

上一节中讲到,根据微信推送的消息类型,我们会有不同的类来具体处理。我们先看下文本消息,文本消息是用TextMsg类来处理的。

processMsg主要处理接收到的消息,responseMsg是具体的回复消息。postObj是微信推送来的消息体,每个消息类型都不一样。具体的属性可以参考文档。textTpl也一样,也是微信给我们定义好的,只要把相应的参数设置正确就可以。

以此类推,其他的消息类型也是如此,除了图文消息。用户不可能发送图文消息,但是我们能回复。

图文消息相对来说比较复杂,可以同时发送多条图文。 articleCount表示共发送多少条图文,news数组中定义了具体的消息。其中,picUrl是图文消息的封面,必须是公网能访问到的url就可以。url指的用户点击消息后,跳转到的地址。这里图文数量,微信也做了限制,不能超过10条。

测试代码如下:

可以在任何一个processMsg 中,加上测试代码就可以。

代码参考:https://github.com/bruceding/MPDemo 

此条目发表在MP平台分类目录。将固定链接加入收藏夹。

发表评论

邮箱地址不会被公开。