From 9445f2131d2710b22f63cac007299b25e94d67e5 Mon Sep 17 00:00:00 2001
From: maimierjiafude <35167402+maimierjiafude@users.noreply.github.com>
Date: Sun, 11 Sep 2022 01:16:39 +0800
Subject: [PATCH 1/4] Update README.md
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
增加了消息类型的md文件,以及对固定公网IP的说明
---
README.md | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index d0fa7a3..06ec8ab 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,8 @@
1. 配置说明(本页下方)
2. 推送函数(支持多种语言,见本页下方)
-3. 自行搭建的在线服务源码
+3. 微信推送支持的消息类型以及关键参数(MessageType.md)
+4. 自行搭建的在线服务源码
1. [PHP版搭建说明](ONLINE.md)
2. [Go版说明](go-wecomchan/README.md)
3. [Go适配华为函数工作流版本](https://github.com/Colo-Thor/wecomchan/releases/tag/2.2)
@@ -54,6 +55,8 @@ PS:消息接口无需认证即可使用,个人用微信就可以注册
在「应用详情页」的最下方,开发者接口分类中,找到「企业可信IP」,点击「配置」,并填入服务器IP即可。
+可信IP现在必须为固定的公网IP,云函数构建的话可以在函数配置里面选择分配一个公网IP,将这个IP添加进来,即可访问,不然都是不支持的访问
+
#### 第四步,获取企业ID
进入「[我的企业](https://work.weixin.qq.com/wework_admin/frame#profile)」页面,拉到最下边,可以看到企业ID③,复制并填到上方。
From 0b3eb1993b28481e61d29b9d8474e6791aa9d319 Mon Sep 17 00:00:00 2001
From: maimierjiafude <35167402+maimierjiafude@users.noreply.github.com>
Date: Sun, 11 Sep 2022 01:19:03 +0800
Subject: [PATCH 2/4] Add files via upload
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
添加了微信支持的推送类型
---
"\350\257\264\346\230\216.md" | 247 ++++++++++++++++++++++++++++++++++
1 file changed, 247 insertions(+)
create mode 100644 "\350\257\264\346\230\216.md"
diff --git "a/\350\257\264\346\230\216.md" "b/\350\257\264\346\230\216.md"
new file mode 100644
index 0000000..72de0da
--- /dev/null
+++ "b/\350\257\264\346\230\216.md"
@@ -0,0 +1,247 @@
+# 发送应用消息
+
+应用支持推送文本、图片、视频、文件、卡片、图文等类型。
+
+**请求方式:**POST(**HTTPS**)
+**请求地址:** https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN
+
+# 全局说明
+
+| 参数 | 是否必须 | 说明 |
+| ------------------------ | ---------------- | ------------------------------------------------------------ |
+| touser | 否 | 指定接收消息的成员,成员ID列表(多个接收者用‘\|’分隔,最多支持1000个)。
:warning:特殊情况:指定为"@all",则向该企业应用的全部成员发送 |
+| toparty | 否 | 指定接收消息的部门,部门ID列表,多个接收者用‘\|’分隔,最多支持100个。
当touser为"@all"时忽略本参数 |
+| totag | 否 | 指定接收消息的标签,标签ID列表,多个接收者用‘\|’分隔,最多支持100个。
当touser为"@all"时忽略本参数 |
+| agentid | 是 | 企业应用的id,整型。登录 **网页版企业微信** 在配置的应用中进行查看。 |
+
+touser toparty totag 三个不能同时为空!
+
+
+
+# 文本信息
+
+~~~json
+{
+ "touser" : "UserID1|UserID2|UserID3",
+ "toparty" : "PartyID1|PartyID2",
+ "totag" : "TagID1 | TagID2",
+ "agentid" : {你的agentid},
+
+ "msgtype" : "text",
+ "text" : {
+ "content" : "你的快递已到,请携带工卡前往邮件中心领取。\n出发前可查看邮件中心视频实况,聪明避开排队。"
+ },
+}
+~~~
+
+| 参数 | 是否必须 | 说明 |
+| ------- | --------------------------- | ------------------------------------------------------------ |
+| msgtype | 是 | 消息类型,此时固定为:**text** |
+| text | 是 | text参数的content字段可以支持换行、以及A标签,即可打开自定义的网页(可参考以上示例代码)
:warning:注意:换行符等符号请转义`\n`,引号用`\"` |
+
+# 媒体信息
+
+获取的media_id 的有效期只有三天,谨慎使用!
+
+## 图片信息
+
+~~~json
+{
+ "touser" : "UserID1|UserID2|UserID3",
+ "toparty" : "PartyID1|PartyID2",
+ "totag" : "TagID1 | TagID2",
+ "agentid" : {你的agentid},
+
+ "msgtype" : "image",
+ "image" : {
+ "media_id" : "MEDIA_ID"
+ },
+~~~
+
+| 参数 | 是否必须 | 说明 |
+| ------- | --------------------------- | ------------------------------------------------------------ |
+| msgtype | 是 | 消息类型,此时固定为:**image** |
+| media_id | 是 | 图片媒体文件id,可以调用上传临时素材接口获取 |
+
+
+
+## 视频信息
+
+~~~json
+{
+ "touser" : "UserID1|UserID2|UserID3",
+ "toparty" : "PartyID1|PartyID2",
+ "totag" : "TagID1 | TagID2",
+ "agentid" : {你的agentid},
+
+ "msgtype" : "video",
+ "video" : {
+ "media_id" : "MEDIA_ID",
+ "title" : "Title",
+ "description" : "Description"
+ },
+}
+~~~
+
+| 参数 | 是否必须 | 说明 |
+| ----------- | -------------------------------------- | ------------------------------------------------------------ |
+| msgtype | 是 | 消息类型,此时固定为:**video** |
+| media_id | 是 | 视频媒体文件id,可以调用[上传临时素材](https://developer.work.weixin.qq.com/document/path/90236#10112)接口获取 |
+| title | 否 | 视频消息的标题,不超过128个字节,超过会自动截断 |
+| description | 否 | 视频消息的描述,不超过512个字节,超过会自动截断 |
+
+
+
+## 文件信息
+
+~~~json
+{
+ "touser" : "UserID1|UserID2|UserID3",
+ "toparty" : "PartyID1|PartyID2",
+ "totag" : "TagID1 | TagID2",
+ "agentid" : {你的agentid},
+
+ "msgtype" : "file",
+ "file" : {
+ "media_id" : "1Yv-zXfHjSjU-7LH-GwtYqDGS-zz6w22KmWAT5COgP7o"
+ },
+}
+~~~
+| 参数 | 是否必须 | 说明 |
+| ------- | --------------------------- | ------------------------------------------------------------ |
+| msgtype | 是 | 消息类型,此时固定为:**file** |
+| media_id | 是 | 图片媒体文件id,可以调用上传临时素材接口获取 |
+
+
+
+
+
+# 卡片消息
+
+卡片信息无法使用字体颜色!所以省略这部分内容。
+
+图片链接pic_url是永久保存的,可以一直复用。
+
+~~~json
+{
+ "touser" : "UserID1|UserID2|UserID3",
+ "toparty" : "PartyID1 | PartyID2",
+ "totag" : "TagID1 | TagID2",
+ "agentid" : {你的agentid},
+
+ "msgtype" : "textcard",
+ "textcard" : {
+ "title" : "领奖通知",
+ "description" : 2016年9月26日\n
+ 恭喜你抽中iPhone 7一台,领奖码:xxxx\n
+ 请于2016年10月10日前联系行政同事领取",
+ "url" : "URL",
+ "btntxt":"更多"
+ },
+}
+~~~
+
+| 参数 | 是否必须 | 说明 |
+| ----------- | -------------------------------------- | ------------------------------------------------------------ |
+| msgtype | 是 | 消息类型,此时固定为:**textcard** |
+| title | 是 | 标题,不超过128个字节,超过会自动截断 |
+| description | 是 | 描述,不超过512个字节,超过会自动截断 |
+| url | 是 | 点击后跳转的链接。最长2048字节,请确保包含了协议头(http/https) |
+| btntxt | 否 | 按钮文字。 默认为“详情”, 不超过4个文字,超过自动截断。 |
+
+
+
+
+
+# 图文消息
+
+图片链接pic_url是永久保存的,可以一直复用。
+
+~~~json
+{
+ "touser" : "UserID1|UserID2|UserID3",
+ "toparty" : "PartyID1 | PartyID2",
+ "totag" : "TagID1 | TagID2",
+ "agentid" : {你的agentid},
+
+ "msgtype" : "news",
+ "news" : {
+ "articles" : [
+ {
+ "title" : "中秋节礼品领取",
+ "description" : "今年中秋节公司有豪礼相送",
+ "url" : "URL",
+ "picurl" : "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png",
+ "appid": "wx123123123123123",
+ "pagepath": "pages/index?userid=zhangsan&orderid=123123123",
+ }
+ ]
+ },
+}
+~~~
+
+| 参数 | 是否必须 | 说明 |
+| ----------- | -------------------------------------- | ------------------------------------------------------------ |
+| msgtype | 是 | 消息类型,此时固定为:**news** |
+| articles | 是 | 图文消息,一个图文消息支持1到8条图文 |
+| title | 是 | 标题,不超过128个字节,超过会自动截断 |
+| description | 否 | 描述,不超过512个字节,超过会自动截断 |
+| url | 否 | 点击后跳转的链接。 最长2048字节,请确保包含了协议头(http/https),小程序或者url必须填写一个 |
+| picurl | 否 | 图文消息的图片链接,最长2048字节,支持JPG、PNG格式,较好的效果为大图 1068*455,小图150*150。 |
+| appid | 否 | 小程序appid,必须是与当前应用关联的小程序,appid和pagepath必须同时填写,填写后会忽略url字段。没有就删掉吧 |
+| pagepath | 否 | 点击消息卡片后的小程序页面,最长128字节,仅限本小程序内的页面。appid和pagepath必须同时填写,填写后会忽略url字段 |
+
+
+
+
+
+
+
+这里分成两部分好了,一个是url跳转,另外一个是小程序跳转
+
+
+
+测试代码:
+
+```
+{
+ "touser": "LiuWenLong",
+ "toparty": "PartyID1 | PartyID2",
+ "totag": "TagID1 | TagID2",
+ "msgtype": "textcard",
+ "agentid": 1000002,
+ "textcard": {
+ "title": "领奖通知",
+ "description": "