php如何接入微信客服消息实现一对一与客户聊天?
网友回复
两种方式:
第一种类似于公众号的消息接受与发送,适合小程序
首先登陆小程序后台
在开发设置中,开启消息推送服务,填写你的服务器url地址,token,选择json数据格式


php的微信小程序客服接受消息和推送消息代码
<?php
define("TOKEN", "213123123123!1232"); //填写自己的token,跟小程序后台填的一样即可
if (isset($_GET['echostr'])) { //校验服务器地址URL
valid();
}else{
responseMsg();
}
function valid()
{
$echoStr = $_GET["echostr"];
if(checkSignature()){
header('content-type:text');
echo $echoStr;
exit;
}else{
echo $echoStr.'+++'.TOKEN;
exit;
}
}
function checkSignature()
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
function responseMsg()
{
$postStr = file_get_contents('php://input'); //此处推荐使用file_get_contents('php://input')获取后台post过来的数据
if (!empty($postStr) && is_string($postStr)){
$postArr = json_decode($postStr,true);
if(!empty($postArr['MsgType']) && $postArr['Content'] == "1"){ //用户发送1,回复公众号二维码
$fromUsername = $postArr['FromUserName']; //发送者openid
//$imgurl = "/300-300.png"; //公众号二维码,相对路径,修改为自己的
// $media_id = getMediaId($imgurl); //获取图片消息的media_id
// $data=array(
// "touser"=>$fromUsername,
// "msgtype"=>"image",
// "image"=>array("media_id"=>$media_id)
// );
$content = '你好,回复1关注公众号,回复2获取官网链接';
$data=array(
"touser"=>$fromUsername,
"msgtype"=>"text",
"text"=>array("content"=>$content)
);
$json = json_encode($data,JSON_UNESCAPED_UNICODE); //php5.4+
requestAPI($json);
}
elseif(!empty($postArr['MsgType']) && $postArr['Content'] == "2"){ //用户发送2,回复图文链接
$fromUsername = $postArr['FromUserName']; //发送者openid
$data=array(
"touser"=>$fromUsername,
"msgtype"=>"link",
"link"=>array( //修改下面几项为自己的
"title"=>'bfw爱编程',
"description"=>'bfw爱编程,专业的技术社区',
"url"=>'https:...点击查看剩余70%
如何修改别人发给我的微信笔记内容?
fbx、obj、glb三维格式模型如何在浏览器中通过three相互转换格式?
python如何实现基于http隧道加密的正向代理服务?
有没有有专门针对 UI 界面截图进行智能标记(Set-of-Mark, SoM) 的开源库和工具?
如何用python实现Set-of-Mark (SoM) 技术?
python如何截取windows指定应用的窗口截图,不用管窗口是不是在最前面?
linux能不能给rm删除命令增加回收站功能,可恢复被删文件?
bfwsoa如何在命令行中执行控制器动作器方法?
RAG(检索增强生成)和 KG(知识图谱)有啥不同?
KVM硬件是啥?


