当用户和公众号产生特定动作的交互时(具体动作列表请见下方说明),微信将会把消息数据推送给开发者,开发者可以在一段时间内(目前为48小时)调用客服接口,通过 POST 一个 JSON 数据包来发送消息给普通用户。此接口主要用于客服等有人工消息处理环节的功能,方便开发者为用户提供更加优质的服务。
知识付费微信客服功能使用的easywechat的客服消息;
<?php
use EasyWeChat\Foundation\Application;
// ...
$app = new Application($options);
$staff = $app->staff; // 客服管理
主动发送消息给用户
$staff->message($message)->to($openId)->send();
知识付费中如何使用的呢?
第一步:extend\service\WechatService文件中加客服消息接口
/**
* 客服消息接口
* @param null $to
* @param null $message
*/
public static function staffService()
{
return self::application()->staff;
}
第二步:extend\service\WechatService文件中添加回复图文消息
/**
* 回复图文消息
* @param string|array $title 标题
* @param string $description 描述
* @param string $url URL
* @param string $image 图片链接
*/
public static function newsMessage($title, $description = '...', $url = '', $image = '')
{
if (is_array($title)) {
if (isset($title[0]) && is_array($title[0])) {
$newsList = [];
foreach ($title as $news) {
$newsList[] = self::newsMessage($news);
}
return $newsList;
} else {
$data = $title;
}
} else {
$data = compact('title', 'description', 'url', 'image');
}
return new News($data);
}
第三步:调取接口发送客服消息
注:若客服不能使用;检查workerman是否启动
如果用户接收不到消息:1.检查公众号是否配置完成 2.接收消息的用户48小时内和公众号有互动