當(dāng)用戶和公眾號(hào)產(chǎn)生特定動(dòng)作的交互時(shí)(具體動(dòng)作列表請(qǐng)見(jiàn)下方說(shuō)明),微信將會(huì)把消息數(shù)據(jù)推送給開(kāi)發(fā)者,開(kāi)發(fā)者可以在一段時(shí)間內(nèi)(目前為48小時(shí))調(diào)用客服接口,通過(guò) POST 一個(gè) JSON 數(shù)據(jù)包來(lái)發(fā)送消息給普通用戶。此接口主要用于客服等有人工消息處理環(huán)節(jié)的功能,方便開(kāi)發(fā)者為用戶提供更加優(yōu)質(zhì)的服務(wù)。
知識(shí)付費(fèi)微信客服功能使用的easywechat的客服消息;
<?php
use EasyWeChat\Foundation\Application;
// ...
$app = new Application($options);
$staff = $app->staff; // 客服管理
主動(dòng)發(fā)送消息給用戶
$staff->message($message)->to($openId)->send();
知識(shí)付費(fèi)中如何使用的呢?
第一步:extend\service\WechatService文件中加客服消息接口
/**
* 客服消息接口
* @param null $to
* @param null $message
*/
public static function staffService()
{
return self::application()->staff;
}
第二步:extend\service\WechatService文件中添加回復(fù)圖文消息
/**
* 回復(fù)圖文消息
* @param string|array $title 標(biāo)題
* @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);
}
第三步:調(diào)取接口發(fā)送客服消息
注:若客服不能使用;檢查workerman是否啟動(dòng)
如果用戶接收不到消息:1.檢查公眾號(hào)是否配置完成 2.接收消息的用戶48小時(shí)內(nèi)和公眾號(hào)有互動(dòng)