mirror of
https://github.com/w7corp/easywechat.git
synced 2025-01-22 03:22:10 +00:00
Page:
接收消息与回复
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
消息的监听再简单不过了,你不需要像其它 SDK 一样麻烦,这将会是前所未有的简单,你可以选择监听所有类型或者指定某种类型,以及作出相应的响应,比如回复一条应答消息。
在本 SDK 中,服务端的操作,例如:服务器认证,监听事件,接收用户消息等所有微信向我们自有服务器发起请求的,都交由 Overtrue\Wechat\Server
来处理。
获取服务端实例
<?php
use Overtrue\Wechat\Server;
$appId = 'wx3cf0f39xxxxxxxxx';
$token = 'hellotest';
$encodingAESKey = 'EJThPazwzO4k1cyXJnwQtL60zBdhWvFaHb4emv0dLVN'; // 可选
// $encodingAESKey 可以为空
$server = new Server($appId, $token, $encodingAESKey);
接收消息
语法:
$server->on('message', callable $callback); // 全部类型
// or
$server->on('message', string $messageType, callable $callback); // 只监听指定类型
参数说明:
$messageType
string, 指定要处理的消息类型,ex:image
$callback
callable, 回调函数,closure 匿名函数,或者一切可调用的方法或者函数
$callback
接收一个参数:$message
为用户发送的消息对象,你可以访问请求消息的所有属性,比如:$message->FromUserName
得到发送消息的人的 openid
,$message->MsgType
获取消息的类型如 text
或者 image
等,更多请参考:请求消息的属性
example:
<?php
use Overtrue\Wechat\Server;
use Overtrue\Wechat\Message;
$appId = 'wx3cf0f39xxxxxxxxxx';
$secret = 'f1c242f4f28f735d4687abb469072a29';
$token = 'hellotest';
$encodingAESKey = 'EJThPazwzO4k1cyXJnwQtL60zBdhWvFaHb4emv0dLVN';
$server = new Server($appId, $token, $encodingAESKey);
// 监听所有类型
$server->on('message', function($message) {
// 获取用户openId: $openId = $message->FromUserName;
return Message::make('text')->content('您好!');
});
// 监听指定类型
$server->on('message', 'image', function($message) {
return Message::make('text')->content('我们已经收到您发送的图片!');
});
$result = $server->serve();
echo $result;
关于更多消息内容请参考:消息的使用
中文版 English
目录
English 中文版
Table of Contents
Laravel 5 版: overtrue/laravel-wechat
可能由于微信的接口调整导致某些接口不能正常使用,请及时给我反馈,谢谢!https://github.com/overtrue/wechat/issues