微信小程序发送客服消息

微信小程序发送客服消息

当用户和小程序客服产生特定动作的交互时(具体动作列表请见下方说明),微信将会把消息数据推送给开发者,开发者可以在一段时间内(目前为 48 小时)调用客服接口,通过调用 发送客服消息接口 来发送消息给普通用户。此接口主要用于客服等有人工消息处理环节的功能,方便开发者为用户提供更加优质的服务。
目前允许的动作列表如下,不同动作触发后,允许的客服接口下发消息条数和下发时限不同
黑白课堂
也就是有消息条数限制。

customerServiceMessage.send

发送客服消息给用户。
文档:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/customer-message/customerServiceMessage.send.html .

  • 1.先组合参数
  • 2.发起 POST 提交即可

例如使用Guzzle

$data=[
                'touser'=>$data['FromUserName'],
                'msgtype'=>'text',
                'text'=>[
                        'content'=> 'Hello World'.urlencode('您好很高兴为您服务')
                ]
        ];
$url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" . $this->getAccessToken();
$data = urldecode(json_encode($data));//先JSON,然后再decode,不然会乱码
$client = new Client();
$r = $client->request("post", $url, ['body' => $data]);//这里直接使用原始的BODY提交

其他类型根据参考来设置即可。
黑白课堂

消息转发到网页版客服工具

这个微信小程序文档是有点坑。
文档地址:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/customer-message/trans.html
它这个如果你后台设置了 JSON 格式,这里必须要返回JSON,否则你还返回XML,死活都不行。
黑白课堂

public function index(Request $request)
    {
        Log::info('msg', $request->all());

        $data = $request->all();
        if (isset($data['MsgType']) ) {
            switch ($data['MsgType']) {
                case 'text':
                    //进入客服
                    if (Str::contains($data['Content'], "客服")) {
                        $sdata = [
                            'touser' => $data['FromUserName'],
                            'msgtype' => 'text',
                            'text' => [
                                'content' => 'Hello World' . urlencode('即将进入在线客服系统')
                            ]
                        ];

                        $this->sendMsg($sdata);
                        //转发到网页版的客服
                        $ToUserName = $data['ToUserName'];
                        $FromUserName = $data['FromUserName'];
                        $CreateTime = $data['CreateTime'];

                        return response()->json([
                            'ToUserName'=>$FromUserName,
                            'FromUserName'=>$ToUserName,
                            'CreateTime'=>$CreateTime,
                            'MsgType'=>'transfer_customer_service'
                        ]);
                    }
                    break;
            }
        }

        return 'success';
    }

在小程序客服里面写入文字 客服 就会转入在线客服。
黑白课堂

评论区 (0)

没有记录
支持 markdown,图片截图粘贴拖拽都可以自动上传。
空气

空气 · 中级学士

热卖技术,喜欢新东西。

魔童降世
查看更多

最新视频课程

钻级赞助商