欢迎访问上海特蓝信息科技有限公司,任何服务请联系我们 咨询电话:021-54256069服务咨询

新闻详情

微信公众号接口可开发内容讲解

日期2017.12.12

一、对话服务类

1. 基础支持

1.1 获取accesstoken 为了验证实际第三方服务器通信使用,对公众号功能设计没有实际作用。

1.2 获取微信服务器IP地址 为了核验和微信服务器之间的通信是安全的,检查微信服务器IP防止伪造服务器和公众号服务通信,对公众号功能设计没有实际作用。

2. 接收消息

2.1 验证消息真实性。

微信服务器核验第三方服务器消息,对公众号功能设计没有实际作用。

2.2 接收普通消息。

微信服务器接收用户发送的文本消息,并且根据文本消息做出自动回复,回复结果由第三方服务器返回给微信服务器,微信服务器再推送给用户,此项回复内容可以是查字典式的一来一回回复,也可以是类似于微软小冰一样的智能机器人,内容都靠第三方服务器返回。

2.3 接收事件推送。

在用户和微信公众号产生交互的过程中,用户的一些操作动作(点击公众号菜单拉取消息、点击公众号菜单跳转链接、关注/取消关注、上报地理位置、扫描带参数的二维码)使得微信服务器通过事件推送的形式通知第三方服务器获取该信息,有些动作允许第三方服务器回复用户,有些不允许;这里可以让第三方做的事情有用户关注时候给用户返回相应指定内容或者模板化的内容、用户扫描带参数的二维码时候关注公众号并且给用户返回二维码所应返回指定内容、用户上报地理位置时候根据用户的地理位置匹配对应信息、用户点击自定义菜单的时候根据用户点击行为自动返回内容或者直接跳转链接。

2.4 接收语音识别结果。

当普通微信用户向公众号发录制的语音消息时,微信服务器会将语音会话解析为文本通话并转发至第三方服务器,后续可反馈功能可参照“接收普通消息”接口。

3. 发送消息

3.1 自动回复。

用户发送消息给公众号时,第三方服务器根据用户发送的信息进行响应并给用户在公众号内返回对应的信息(目前支持系统给用户回复文本、图片、图文、语音、视频、音乐),自动回复接口只能在用户主动向公众号发送消息的时候才能触及。

3.2 客服消息。

当用户和公众号产生特定的动作交互时候,微信会把消息数据推送给第三方服务器,第三方服务器可以在48小时内调用客服接口发消息给普通微信用户,此接口主要用于客服等有人工消息处理环节的功能。目前通道允许的动作列表有:用户发送消息、点击自定义菜单、关注公众号、扫描二维码、用户支付成功、用户维权。第三方也可以利用此通道的48小时连接机制,在48小时内推送多条内容给用户。

3.3 群发消息。

公众平台为订阅号提供每天一次的群发权限;为服务号提供每自然月4条的群发权限。具备开发能力的第三方和公众号运营者可以通过高级群发接口实现更灵活的群发。第三方可以结合微信用户openid和自有用户的交易等数据,给用户打各种tag并且依据这些tag给用户实现分类,群发接口支持按照分类给用户推送不同的内容,支撑差异化、精细化公众号运营。

3.4 模板消息。

模板消息用于公众号向用户发送重要的服务通知,微信官方要求模板消息只能用于符合要求的场景中(比如刷卡通知、下单通知、厂家发货通知、配送通知等),模板消息本身不支持公众号运营者推送营销类消息以及其他骚扰用户的消息类型,但是因为模板消息的屏蔽机制采用了用户举报机制,所以正常情况下推送些赠送给用户的优惠券或者优惠活动本身只要用户不举报是没有问题的,所以善用模板消息可以更好的触达用户,用模板消息实现优惠券推送、发货通知等通知也可以友好的改善用户的感受并且有效的降低短信通知的成本。目前每个公众号可以设置25套不同模板去做消息提醒。

3.5 一次性订阅消息。

公众号开发者可以用“一次性订阅消息”让微信用户授权第三方应用或公众号,获得发送一次订阅消息给到授权微信用户的机会。授权微信用户可以不需要关注公众号。微信用户每授权一次,开发者可获得一次下发消息的权限。对于已关注公众号的,消息将下发到公众号会话;未关注公众号的,将下发到服务通知。用户授权后就可以给用户推送一条订阅模板消息了。

4. 用户管理

4.1 用户分组管理。

第三方开发者可以用用户分组及标签管理接口实现对公众号内的用户打标签、查询标签、修改标签、删除标签等操作。目前一个公众号可以给用户创建100个标签;每个用户微信平台支持给用户打20个标签。微信平台也支持批量为用户打标签,以及批量获取某些标签用户。通过用户分组及打标签功能,公众号运营者即可精确设置用户微信分组,并依据分组进行用户信息推送、营销设置等种种运营活动。也可以基于这些用户及标签用行业+AI的方式进行运营思考和实践。

4.2 设置用户备注名。

开发者可以通过该接口对指定的用户设置备注名,目前该接口只给微信认证的服务号。可以结合该接口和推送等通道使用一起运营。

4.3 获取用户基本信息。

在关注者与公众号产生消息交互后,公众号可获得关注的OpenId(加密后的微信号,每个用户对每个公众号的OpenID是唯一的。对于不同公众号,同一用户的openid不同),公众号可通过本接口来根据OpenID获取用户基本信息,包括昵称、头像、性别、所在城市、语言和关注时间等信息。 另外,如果该公司主体下有多个公众号、小程序之类的应用,并且有统一用户体系的需求,可以在微信开放平台绑定后使用UnionId(同一用户,对同一个公司主体下的不同应用,unionid是相同的)机制来打通用户信息。巧用此接口,就可以将小程序内的各类用户行为和数据、公众号里的各种数据有效打通,可以进行比如公众号通过模板消息推送一个优惠券,用户点击模板消息里的卡券直表。公众号可以通过本接口来获取该公众号的关注者列表,关注者列表由一串OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯一的)组成。一次拉取调用最多拉取10000个关注者的OpenID,可以通过多次拉取的方式来满足需求。此接口可以便于第三方平台和微信官方同步用户数据。

4.5 获取用户地理位置。

开通了上报地理位置接口的公众号,用户在关注后进入公众号时候,会有个弹出让用户确认是否允许公众号使用其地理位置,弹框确认只出现一次,之后只能在公众号详情页面进行操作。用户同意上报位置后,每次进入公众号会话时,都会上报用户的位置信息,第三方开发者可以保存这些用户位置信息进行用户画像并为各种营销、运营做决策。

5. 推广支持

5.1 生成带参数的二维码。为了绑定用户渠道推广分析和用户绑定等场景需求,公众平台可以提供生成带参数的二维码接口。使用该接口可以获取数量很多的不同场景二维码,用户扫描后,公众号可以接收到该二维码对应的事件推送。目前带参数的二维码分为2种类型:

5.1.1 临时二维码,临时二维码有过期时间,最长可以在生成后30天过期,临时二维码虽然保存时间较短,但能够生成极大数量,临时二维码可用于账号绑定、大量即时售出商品营销动作等,举例来说,某企业可以将每一件出售商品上都贴一张临时二维码,并且在上面打印着扫描此二维码随机抽取超大红包等字样,这样可以有效提升二维码扫描,此时可以设置一定频率的红包中奖率即可,大部分用户都可以最后扫完赠送一个金额不等的抵金券,反复引导此用户因为优惠券原因反复下单。

5.1.2 永久二维码,永久二维码没有过期时间,但数量较少(目前最多10万个),永久二维码可以用于账号绑定、用户来源统计等场景。举例来说,企业可以给所有销售人员都配置一个永久二维码,这样当销售人员外出去拓展的时候,需要让所有被拓展对象扫一下这个二维码即可监控任务;另外企业可以把各种永久二维码放到自己广告的各个推广媒介上,通过扫码率去评定每个平台的广告转化效果等。

5.2 长链接转短链接接口。将一条较长的URL使用特殊算法转化为短链接,主要使用场景: 开发者用于生成二维码的原链接(商品、支付二维码等)太长导致扫码速度和成功率下降,将原长链接通过此接口转成短链接再生成二维码将大大提升扫码速度和成功率。此接口主要用于开发者,对运营用不大。

6. 界面丰富

6.1 自定义菜单。通过此接口,开发者可以把公众号内网页的入口、自动回复、小程序界面入口有机的设置在公众号的菜单上,目前公众号菜单最多支持包括3个一级菜单,每个一级菜单最多支持5个二级菜单。一级菜单最多4个汉字,二级菜单最多7个汉字。目前公众号菜单支持多种功能:

6.1.1 点击事件(click): 点击事件可以模拟用户发送消息跟第三方服务器通信并且返回对应消息内容。

6.1.2 浏览事件(view):填写需要浏览的网页url地址,用户点击此类自定义菜单后会跳转到对应的网页,如果结合网页授权接口,更可以获取用户的基本信息。

6.1.3 扫码推事件(scancodepush): 用户点击按钮后,微信会吊起扫一扫的工具,完成扫码后显示扫描结果(如果是URL,直接浏览该URL网页),且会将扫码结果传给开发者,开发者可以依据此事件下发消息。

6.1.4 扫码推等待事件(scancodewaitmsg): 用户点击按钮后,微信公众号会返回个消息,用户点击该消息吊起扫一扫工具,完成扫码后显示扫描结果(如果是URL,直接浏览该URL网页),且会将扫码结果传给开发者,开发者可以依据此事件下发消息。

6.1.5 系统拍照事件(picsysphoto):弹出系统拍照发图用户点击按钮后,微信客户端将调起系统相机,完成拍照操作后,会将拍摄的相片发送给开发者,并推送事件给开发者,同时收起系统相机,随后可能会收到开发者下发的消息。

6.1.6 系统拍照或者相册发图事件(picphotooralbum):弹出拍照或者相册发图用户点击按钮后,微信客户端将弹出选择器供用户选择“拍照”或者“从手机相册选择”。用户选择后即走其他两种流程。

6.1.7 弹出微信相册事件(picweixin):弹出微信相册发图器用户点击按钮后,微信客户端将调起微信相册,完成选择操作后,将选择的相片发送给开发者的服务器,并推送事件给开发者,同时收起相册,随后可能会收到开发者下发的消息。

6.1.8 地理位置选择事件(locationselect):弹出地理位置选择器用户点击按钮后,微信客户端将调起地理位置选择工具,完成选择操作后,将选择的地理位置发送给开发者的服务器,同时收起位置选择工具,随后可能会收到开发者下发的消息。

6.1.9 媒体类型事件(mediaid):下发消息(除文本消息)用户点击mediaid类型按钮后,微信服务器会将开发者填写的永久素材id对应的素材下发给用户,永久素材类型可以是图片、音频、视频、图文消息。请注意:永久素材id必须是在“素材管理/新增永久素材”接口上传后获得的合法id。

6.1.10 跳转图文消息url事件(viewlimited):跳转图文消息URL用户点击viewlimited类型按钮后,微信客户端将打开开发者在按钮中填写的永久素材id对应的图文消息URL,永久素材类型只支持图文消息。请注意:永久素材id必须是在“素材管理/新增永久素材”接口上传后获得的合法id。

6.2 个性化菜单。为了帮助公众号实现灵活的业务运营,目前认证过的公众号可实现个性化菜单接口,开发者可以通过该接口,让公众号的不同用户群体看到不一样的自定义菜单。开发者可以采用以下条件来设置用户看到的菜单:用户标签和分组、性别、手机操作系统、地区、语言。

7. 素材管理

7.1 新增永久素材。经常使用的一些图片、语音、视频、缩略图等素材,开发者可通过该接口上传到微信服务器永久使用。在公众号创建图文消息的时候,可以插入这些资源的链接。

7.2 新增临时素材。公众号经常有需要用到一些临时性的多媒体素材的场景,例如在使用接口特别是发送消息时,对多媒体文件、多媒体消息的获取和调用等操作,是通过mediaid来进行的。素材管理接口对所有认证的订阅号和服务号开放。通过本接口,公众号可以新增临时素材(即上传临时多媒体文件)。

标签: