From fbe08a0d976c5cf8e9cea9c456b35c7791c8cab6 Mon Sep 17 00:00:00 2001 From: Easy Date: Tue, 22 Jun 2021 13:21:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0php=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E6=90=AD=E5=BB=BA=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ONLINE.md | 12 ++++++++++++ README.md | 23 ++++++++++++++--------- index.php | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 76 insertions(+), 9 deletions(-) create mode 100644 ONLINE.md create mode 100644 index.php diff --git a/ONLINE.md b/ONLINE.md new file mode 100644 index 0000000..c7882f9 --- /dev/null +++ b/ONLINE.md @@ -0,0 +1,12 @@ +# 在线服务搭建指南(PHP版) + +## 安装条件 + +- PHP7.4+ +- 可访问外部网络的运行环境 + +## 安装说明 + +1. 用编辑器打开 `index.php`,按提示修改头部 define 的值( sendkey自己随意写,其他参见企业微信配置文档 ) +1. 将 `index.php` 上传运行环境 +1. 通过 `http://指向运行环境的域名/?sendkey=你设定的sendkey&text=你要发送的内容` 即可发送内容 diff --git a/README.md b/README.md index cc7b424..783005c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,10 @@ # Wecom酱 -通过企业微信向微信推送消息(配置说明&推送函数)。 +通过企业微信向微信推送消息的解决方案。包括: + +1. 配置说明(本页下方) +2. 推送函数(支持多种语言,见本页下方) +3. 自行搭建的在线服务源码 [查看搭建说明](ONLINE.md) ## 企业微信应用消息配置说明 @@ -46,6 +50,14 @@ PS:消息接口无需认证即可使用,个人用微信就可以注册 ![](https://theseven.ftqq.com/20210208144808.png) +PS:如果出现`接口请求正常,企业微信接受消息正常,个人微信无法收到消息`的情况: + +1. 进入「我的企业」 → 「[微信插件](https://work.weixin.qq.com/wework_admin/frame#profile/wxPlugin)」,拉到最下方,勾选 “允许成员在微信插件中接收和回复聊天消息” +![](https://img.ams1.imgbed.xyz/2021/06/01/HPIRU.jpg) + +2. 在企业微信客户端 「我」 → 「设置」 → 「新消息通知」中关闭 “仅在企业微信中接受消息” 限制条件 +![](https://img.ams1.imgbed.xyz/2021/06/01/HPKPX.jpg) + #### 第五步,通过以下函数发送消息: PHP版: @@ -179,14 +191,7 @@ sendToWecom({ 其他版本的函数可参照上边的逻辑自行编写,欢迎PR。 -## 注解 -出现`接口请求正常,企业微信接受消息正常,个人微信无法收到消息`: - -1. 进入「我的企业」 → 「[微信插件](https://work.weixin.qq.com/wework_admin/frame#profile/wxPlugin)」,拉到最下方,勾选 “允许成员在微信插件中接收和回复聊天消息” -![](https://img.ams1.imgbed.xyz/2021/06/01/HPIRU.jpg) - -2. 在企业微信客户端 「我」 → 「设置」 → 「新消息通知」中关闭 “仅在企业微信中接受消息” 限制条件 -![](https://img.ams1.imgbed.xyz/2021/06/01/HPKPX.jpg) + diff --git a/index.php b/index.php new file mode 100644 index 0000000..67fb557 --- /dev/null +++ b/index.php @@ -0,0 +1,50 @@ + 0) { + $access_token = $info['access_token']; + $url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token='.urlencode($access_token); + $data = new \stdClass(); + $data->touser = $wecom_touid; + $data->agentid = $wecom_aid; + $data->msgtype = "text"; + $data->text = ["content"=> $text]; + $data->duplicate_check_interval = 600; + + $data_json = json_encode($data); + $ch = curl_init(); + curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); + curl_setopt($ch, CURLOPT_URL, $url); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); + curl_setopt($ch, CURLOPT_POST, true); + curl_setopt($ch, CURLOPT_TIMEOUT, 5); + curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json); + + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); + + $response = curl_exec($ch); + return $response; + } + return false; +}