微信开发之消息的接收与相应--消息交互基础(四)

一、消息交互流程

  

    1、用户通过微信客户端向公众号发送消息,消息首先会被微信服务器接收到

    2、微信服务器接收到消息后,会根据开发者在接口配置信息中填写的URL,将消息通过HTTP POST发送到公众号服务器

    3、公众号服务器接收到消息后,会根据相应的逻辑进行处理

    4、处理完成后,公众号服务器会将处理结果发送到微信服务器,

    5、微信服务器将公众号服务器返回的消息通过公众账号发送给用户

二、消息的分类

  1、请求消息

     请求消息是指用户发送给公众号的消息,包括文本消息,图片消息,语音消息,视频消息,地理位置消息等。

  2、事件

    事件是指用户对公众号做出的某种操作,微信服务器会将对应的事件消息推送给公众号,目前,事件操作有5种:

    关注、取消关注、扫描二维码、上报地理位置、点击自定义菜单

  3、响应消息

    响应消息是指公众账号回复给用户的消息,包括文本消息,图片消息,语音消息,视频消息,地理位置消息等。

时间: 2024-08-10 23:27:59

微信开发之消息的接收与相应--消息交互基础(四)的相关文章

夺命雷公狗---微信开发06----接收并被动回复语音消息

这一章,主要实现的功能是发送一段语言给微信公众号,公众号并且回复该语音 index.php的代码如下: <?php /** * wechat php test */ //define your token require_once "common.php"; define("TOKEN", "twgdh"); $wechatObj = new wechatCallbackapiTest(); //当接入成功后,请注销这句话,否则,会反复验证

php 微信开发订阅事件并回复2条消息

在通过微信公众平台验证之后,需要关注订阅公众号.如何获取订阅事件,并且在订阅之后回复消息,如果有需求要给用户一个数据库表中的信息,那我们可以保存用户openid(唯一),在这里说一下 这个openid 是每一个用户 对你公众号的一个唯一值,就算取消以后在关注也是这个值.订阅代码如下: public function responseMsg() { $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!empty($postStr)){ $pos

详解微信开发者文档——3接收用户文本消息并自动回复文本消息

写在前面的话:上一篇介绍了如何将自己的服务器与微信公众平台进行连接,连接成功之后就可以与微信进行交互了,这一篇介绍最简单的情形,接收用户文本消息,并自动回复文本消息,如果能够实现这个功能,那么我们就能够轻松的实现接收不同的用户消息,并根据业务需要回复用户不同类型的消息,更复杂的在下一篇中讲解. =====正文开始===== 当微信用户向公众号发送消息时,微信服务器会将该消息发送至我们填写的URL中,我们在后台就能够写代码实现接收消息---处理消息----回复消息的操作. 这里有几点需要注意: 1

微信开发之消息接收与回复--weixin-java-tools

一.前言 在上一篇文章<微信开发之如何使用开发工具--weixin-java-tools>中我给各位介绍了weixin-java-tools,并且介绍了如何使用weixin-java-tools接入我们微信开发者模式,本次就针对这个工具给大家介绍消息的接收与回复 二.消息接收与回复 先来说说接收消息, 当普通微信用户向公众账号发消息时,微信服务器会先接收到用户发送的消息,然后将用户消息按照指定的XML格式组装好数据,最后POST消息的XML数据包到开发者填写的URL上. 接收到的普通消息的消息

个人微信公众号搭建Python实现 -接收和发送消息-基本说明与实现(14.2.1)

目录 1.原理 2.接收普通消息 3.接收代码普通消息代码实现 @(接收和发送消息-基本说明与实现) 1.原理 2.接收普通消息 其他消息类似参考官方文档 3.接收代码普通消息代码实现 from flask import Flask,request,abort import xmltodict import time app = Flask(__name__) #常量 微信的token令牌 WECHAT_TOKEN = "xxxx" @app.route("/wx"

探讨erlang消息选择性接收和改进

从 rabbitMQ 代码中找到 gen_server2 , 对gen_server进行了一些优化.看到前辈写的博文也提到这个,引发了我的思考.见 gen_server2 - OTP gen_server优化版 . gen_server2 引发的思考 正如 litaocheng 所说的: gen_server 和 gen_server2 最大的不同是: gen_server2 收到任何一条消息放到外部的队列中,当VM内部消息队列为空后,才进行消息处理,继续循环 gen_server 收到任何一条

微信公众号开发教程[003]-消息管理-接收消息

当微信用户向公众号发送消息时,微信服务器会向公众号配置的服务器URL地址发送请求,并将相关内容包装成一定格式的xml发送到这个服务器;响应时,这个服务器只要回复特定格式的xml字符串给微信服务器,微信服务器即可向微信用户的客户端转发这条回复消息.(假设公众号开发模式已开启,以后的教程,如果没有特别说明,都是如此).如下图: 例如,文本消息的xml结构如下: <xml> <ToUserName><![CDATA[toUser]]></ToUserName> &

C#/ASP.NET MVC微信公众号接口开发之从零开发(二) 接收微信消息并且解析XML(附源码)

文章导读: C#微信公众号接口开发之从零开发(一) 接入微信公众平台 微信接入之后,微信通过我们接入的地址进行通信,其中的原理是微信用户发送消息给微信公众账号,微信服务器将消息以xml的形式发送到我们的绑定的地址上,通过解析XML数据,获取到微信用户发送的消息,让根据微信消息(文本:关键字,图片,语音等等)回复XML格式的数据给微信服务器,微信服务器再将接收到的消息返回给用户微信. 我们所需要做的:接收消息和返回消息 一.创建实体类 首先看文档http://mp.weixin.qq.com/wi

[029] 微信公众帐号开发教程第5篇-各种消息的接收与响应

前一篇文章里我们已经把微信公众平台接口中消息及相关操作都进行了封装,本章节将主要介绍如何接收微信服务器发送的消息并做出响应. 明确在哪接收消息 从微信公众平台接口消息指南中可以了解到,当用户向公众帐号发消息时,微信服务器会将消息通过POST方式提交给我们在接口配置信息中填写的URL,而我们就需要在URL所指向的请求处理类CoreServlet的doPost方法中接收消息.处理消息和响应消息.   接收.处理.响应消息 下面先来看我已经写好的CoreServlet的完整代码: [java] vie