本系列属作者原创,请尊重作者的劳动成果,转载请注明出处 , 谢谢!

我的博客地址:http://blog.csdn.net/qicong7


此系列博文目录:

  • 如何申请微信公众帐号

  • 微信公众账号消息那些事儿

  • 服务号实现自定义菜单

  • 微信公众账号开发入门(原理)

  • 微信公众账号开发:URL 和 Tocken

  • 微信公众账号开发:消息原理

  • 微信公众账号开发:消息设计、源码

  • 微信公众账号开发:菜单原理、设计、源码

  • 微信公众账号开发:JS接口

  • 微信公众账号开发:Auth2.0认证原理、设计、源码


一、消息描述

微信公众账号的消息模式分为2种:编辑模式、开发模式;

编辑模式:

消息由微信公众平台服务器处理,当用户发送消息给公众账号时,微信公众平台服务器会根据公众账号在微信公众平台定义的消息规则进行回复,如果没有匹配到,那么就不会回复,这也是为什么我们有时候给公众账号发送消息的时候,没有收到消息回复的原因;

当然,微信公众账号可以选择性的回复某个用户的消息,就是说,在微信公众平台的消息列表中,可以针对某个用户发送的消息进行回复;


开发模式:

消息由开发者服务器处理,当用户发送消息给公众账号时,微信公众平台服务器会将用户发送的消息转发给开发者服务器,开发者服务器根据自己的业务包装回复消息(举例:可以使随机回复,也可以是固定回复一条消息,等等,比如招商银行的公众账号),然后将回复消息发送给微信公众平台服务器;微信公众平台服务器收到消息后,再将消息发送给用户;

当然,也可以在微信公众平台中针对某个用户发送的消息进行回复;


另外:对于微信公众账号的菜单,当我们点击某个菜单时,也是发送给公众账号一条消息,只是用户在体验上不同而已(一个是界面操作,一个是消息发送),但是本质上是一样的;


二、逻辑流程图

先来看看用户直接发送消息时的流程图

大齐玩转微信公众账号 : 微信公众账号开发 :消息原理_微信公众账号开发

(图一)

如果公众账号有菜单,点击菜单时候其实也就是发送消息,只是稍微有点不同;如下图:

大齐玩转微信公众账号 : 微信公众账号开发 :消息原理_微信公众账号开发_02

如果菜单是网页链接菜单,那么在微信中就直接访问网页了;

如果是事件菜单,相当于发送消息,整个的流程和(图一)一样;


这篇博文大致介绍了微信公众账号如何处理编辑模式、开发模式的消息,下一篇我们将详细介绍开发模式消息的开发流程、源码;