这篇给大家梳理下 使用easyWeChat 配置 企业微信代开发模板回调URL功能
使用的框架:
think PHP 5.1
easy WeChat :4.2.23
话不多说直接上代码
<?php
use callback\CommonFunc;
use EasyWeChat\Factory;
$config = [
'corp_id' => '服务商的corp_id',
'secret' => '实测这里填啥都可以 企业微信好像不验证',
'token' => '企业微信随机生成的 回调token',
'aes_key' => '企业微信 生成的 EncodingAESKey',
'reg_template_id' => '',
];
$app = Factory::openWork($config);
$server = $app->server;
$server->push(function ($message) {
//指令回调
if (isset($message['InfoType'])) {
switch ($message['InfoType']) {
//推送suite_ticket
case 'suite_ticket':
// 这里可以做 把suite_ticket 存到redis或者其他缓存的操作,后续获取代开发的secret会用到
break;
//授权成功通知
case 'create_auth':
break;
//变更授权通知
case 'cancel_auth':
break;
//通讯录事件通知
case 'change_contact':
switch ($message['ChangeType']) {
case 'create_user':
return '新增成员事件';
break;
case 'update_user':
return '更新成员事件';
break;
case 'delete_user':
return '删除成员事件';
break;
case 'create_party':
return '新增部门事件';
break;
case 'update_party':
return '更新部门事件';
break;
case 'delete_party':
return '删除部门事件';
break;
case 'update_tag':
return '标签成员变更事件';
break;
}
break;
// 重新获取 select 触发
case "reset_permanent_code":
// 这里可操作 获取代开发的 select
break;
default:
return 'fail';
break;
}
}
//数据回调
if (isset($message['MsgType'])) {
switch ($message['MsgType']) {
case 'event':
return '事件消息';//详情 https://work.weixin.qq.com/api/doc/90001/90143/90376#%E5%88%A0%E9%99%A4%E6%88%90%E5%91%98%E4%BA%8B%E4%BB%B6
break;
case 'text':
return '文本消息';//详情 https://work.weixin.qq.com/api/doc/90001/90143/90375#%E5%9B%BE%E7%89%87%E6%B6%88%E6%81%AF
break;
case 'image':
return '图片消息';
break;
//等等...不再一一举例
default:
return '其他消息';
break;
}
}
});
$response = $server->serve();
$response->send();