说明:微信公众号允许开发者对与公众号在24小时内交互过的粉丝主动发送消息,称之为客服消息。只有认证服务号和认证订阅号才能调用接口。
客服消息结构,消息分为文本,图片,语音,视频,音乐,图文,卡券,这里主要说的是文本消息(所有的客服消息都是通过post请求来传送数据)。
首先是在单个公众号下,代码如下:
$openid=$_POST['openid'];//被回复用户的openid
$info=$_POST['content'];//回复的内容
$message = array(
'msgtype' => 'text',
'text' => array('content' => urlencode($info)),
'touser' =>$openid,
);
$account_api = WeAccount::create();
$status = $account_api->sendCustomNotice($message);//调用微擎内部的函数
if (is_error($status)) {
message('发送失败,原因为' . $status['message']);
}else{
message('发送成功');
}
在多个公众号的情况下,需要验证公众号(否则不能发送客服消息),代码如下:
$openid=$_POST['openid'];//被回复用户的openid
$info=$_POST['content'];//回复的内容
$uniacid=$_POST['uniacid'];//公众号id
$message = array(
'msgtype' => 'text',
'text' => array('content' => urlencode($info)),
'touser' =>$openid,
);
$account_api = WeAccount::create($uniacid);
$status = $account_api->sendCustomNotice($message);//调用微擎内部的函数
if (is_error($status)) {
message('发送失败,原因为' . $status['message']);
}else{
message('发送成功');
}
被回复用户的信息及回复内容,都是通过前端post请求传值。在单个公众号下和多个公众号实现消息回复的方法基本一样,只是在多个公众号下需验证公众号。
基于微擎中回复消息比较简单,就是调用微擎内部中的一个函数可以实现,这里说的是文本消息回复,其他消息回复的结构大家可以看看微擎手册:
https://www.kancloud.cn/donknap/we7/221680