|
|
@@ -1,6 +1,8 @@
|
|
|
-# 微信消息推送
|
|
|
+# 消息推送
|
|
|
## 描述
|
|
|
-利用测试号来给自己的微信推送消息。
|
|
|
+1. 利用微信公众号测试号来给自己的微信推送消息。
|
|
|
+2. 也可推送邮件消息,在微信中开启 QQ 邮件提醒后,也可以达到同样效果。
|
|
|
+3. 支持 Markdown。
|
|
|
|
|
|
## 用途举例
|
|
|
1. [整合进自己的博客系统,每当有人登录时发微信消息提醒](https://github.com/songquanpeng/blog/blob/486d63e96ef7906a6c767653a20ec2d3278e9a4a/routes/user.js#L27)。
|
|
|
@@ -14,7 +16,10 @@
|
|
|
### 服务器端配置
|
|
|
1. 配置 Node.js 环境,推荐使用 [nvm](https://github.com/nvm-sh/nvm)。
|
|
|
2. 下载代码:`git clone https://github.com/songquanpeng/message-pusher.git`。
|
|
|
-3. (可选)修改根目录下的 config.js 文件,在其内可以修改监听的端口,也可配置是否选择开放注册,注意 href 字段不仅仅是域名,后面要加 /。
|
|
|
+3. 修改根目录下的 config.js 文件:
|
|
|
+ + (可选)可以修改监听的端口
|
|
|
+ + (可选)配置是否选择开放注册
|
|
|
+ + (必选)修改 href 字段,如 `https://pusher.yourdomain.com/`,注意后面要加 /,如果不修改此项,推送消息的详情页面将无法打开。
|
|
|
4. 安装依赖:`npm i`。
|
|
|
5. 安装 pm2:`npm i -g pm2`。
|
|
|
6. 使用 pm2 启动服务:`pm2 start ./app.js --name message-pusher`。
|
|
|
@@ -34,11 +39,24 @@
|
|
|
### 验证是否配置成功
|
|
|
访问 `https://你的域名/前缀/Hi`,如果你的微信能够收到一条内容为 Hi 的模板消息,则配置成功。
|
|
|
|
|
|
+## 发送消息的方式
|
|
|
+1. 发送纯文本消息:直接 HTTP GET 请求 `https://你的域名/前缀/消息`,缺点是有字数限制,且只能是纯文本,这是微信模板消息的限制。
|
|
|
+2. 发送 Markdown 消息,调用方式分为两种:
|
|
|
+ + GET 请求方式:`https://你的域名/前缀/?type=0&title=消息标题&description=简短的消息描述&content=markdown格式的消息内容&[email protected]`
|
|
|
+ + POST 请求方式:请求路径为 `https://你的域名/前缀/`,参数有:
|
|
|
+ 1. type:(可选)消息类型,默认为 0
|
|
|
+ + 0:通过微信公众号测试号推送
|
|
|
+ + 1:通过发送邮件的方式进行推送
|
|
|
+ 2. title:(可选)消息的标题
|
|
|
+ 3. description:(必填)消息的描述
|
|
|
+ 4. content:(可选)消息内容,支持 Markdown
|
|
|
+ 5. email:(可选)当该项不为空时,将强制覆盖 type 参数,强制消息类型为邮件消息,收件邮箱即此处指定的邮箱。如果 type 为 1 且 email 参数为空,则邮件将发送至用户设置的默认邮箱。
|
|
|
+
|
|
|
## 待做清单
|
|
|
- [x] 支持多用户。
|
|
|
- [ ] 完善的用户管理。
|
|
|
-- [ ] 支持 Markdown。
|
|
|
-- [ ] 支持推送消息到邮箱。
|
|
|
+- [x] 支持 Markdown。
|
|
|
+- [x] 支持推送消息到邮箱。
|
|
|
- [ ] 更加便于部署的 Go 语言的版本。
|
|
|
- [ ] 适配企业微信应用。
|
|
|
- [ ] 提供常见语言的调用示例。
|