mirror of
https://github.com/songquanpeng/message-pusher.git
synced 2025-10-09 01:40:41 +08:00
Merge branch 'master' into dev
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -2,6 +2,6 @@
|
|||||||
node_modules
|
node_modules
|
||||||
package-lock.json
|
package-lock.json
|
||||||
.env
|
.env
|
||||||
data.db
|
|
||||||
data.db-journal
|
data.db-journal
|
||||||
.vscode
|
.vscode
|
||||||
|
*.db
|
16
README.md
16
README.md
@@ -2,7 +2,15 @@
|
|||||||
## 描述
|
## 描述
|
||||||
利用测试号来给自己的微信推送消息。
|
利用测试号来给自己的微信推送消息。
|
||||||
|
|
||||||
|
## 用途举例
|
||||||
|
1. 整合进自己的博客系统,每当有人登录时发微信消息提醒。
|
||||||
|
2. 在进行深度学习模型训练时,在每个 epoch 结束后将关键数据发送到微信以方便及时监控。
|
||||||
|
3. 在各种脚本运行结束后发消息提醒。
|
||||||
|
|
||||||
## 搭建步骤
|
## 搭建步骤
|
||||||
|
### 域名设置
|
||||||
|
先去你的云服务提供商那里添加一个子域名,解析到你的目标服务器。
|
||||||
|
|
||||||
### 服务器端配置
|
### 服务器端配置
|
||||||
1. 配置 Node.js 环境,推荐使用 [nvm](https://github.com/nvm-sh/nvm)。
|
1. 配置 Node.js 环境,推荐使用 [nvm](https://github.com/nvm-sh/nvm)。
|
||||||
2. 下载代码:`git clone https://github.com/songquanpeng/wechat-message-push.git`。
|
2. 下载代码:`git clone https://github.com/songquanpeng/wechat-message-push.git`。
|
||||||
@@ -10,7 +18,7 @@
|
|||||||
4. 安装 pm2:`npm i -g pm2`。
|
4. 安装 pm2:`npm i -g pm2`。
|
||||||
5. 使用 pm2 启动服务:`pm2 start ./app.js --name wechat-message-push-service`。
|
5. 使用 pm2 启动服务:`pm2 start ./app.js --name wechat-message-push-service`。
|
||||||
6. 使用 Nginx 反代我们的 Node.js 服务,默认端口 3000。
|
6. 使用 Nginx 反代我们的 Node.js 服务,默认端口 3000。
|
||||||
1. 修改应用根目录下的 `nginx.conf` 中的域名以及端口号,并创建软链接:`sudo ln -s ./nginx.conf /etc/nginx/site-enabled/wechat-push-service.conf`
|
1. 修改应用根目录下的 `nginx.conf` 中的域名以及端口号,并创建软链接:`sudo ln -s /path/to/nginx.conf /etc/nginx/sites-enabled/wechat-push-service.conf` ,**注意修改这里的 /path/to/nginx.conf,且必须是绝对路径**,当然如果不想创建软链接的话也可以直接将配置文件拷贝过去:`sudo mv ./nginx.conf /etc/nginx/sites-enabled/wechat-push-service.conf`。
|
||||||
2. 之后使用 [certbot](https://certbot.eff.org/lets-encrypt/ubuntuxenial-nginx) 申请证书:`sudo certbot --nginx`。
|
2. 之后使用 [certbot](https://certbot.eff.org/lets-encrypt/ubuntuxenial-nginx) 申请证书:`sudo certbot --nginx`。
|
||||||
3. 重启 Nginx 服务:`sudo service nginx restart`。
|
3. 重启 Nginx 服务:`sudo service nginx restart`。
|
||||||
|
|
||||||
@@ -24,3 +32,9 @@
|
|||||||
|
|
||||||
### 验证是否配置成功
|
### 验证是否配置成功
|
||||||
访问 `https://你的域名/Hi` 或 `https://你的域名/push?content=Hi`,如果你的微信能够收到一条内容为 Hi 的模板消息,则配置成功。
|
访问 `https://你的域名/Hi` 或 `https://你的域名/push?content=Hi`,如果你的微信能够收到一条内容为 Hi 的模板消息,则配置成功。
|
||||||
|
|
||||||
|
## 待做清单
|
||||||
|
- [ ] 支持多用户。
|
||||||
|
- [ ] 支持 Markdown。
|
||||||
|
|
||||||
|
敬请期待。
|
||||||
|
@@ -3,10 +3,11 @@
|
|||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "node ./app.js"
|
"start": "node ./app.js",
|
||||||
|
"devStart": "nodemon ./app.js"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^0.20.0",
|
"axios": "^0.21.1",
|
||||||
"cookie-parser": "~1.4.4",
|
"cookie-parser": "~1.4.4",
|
||||||
"debug": "~2.6.9",
|
"debug": "~2.6.9",
|
||||||
"dotenv": "^8.2.0",
|
"dotenv": "^8.2.0",
|
||||||
@@ -19,6 +20,7 @@
|
|||||||
"uuid": "^8.3.0"
|
"uuid": "^8.3.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"nodemon": "^2.0.6",
|
||||||
"prettier": "^2.1.1"
|
"prettier": "^2.1.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -10,6 +10,14 @@ router.all("/", (req, res, next) => {
|
|||||||
res.render("info", {
|
res.render("info", {
|
||||||
message: "服务已在运行。",
|
message: "服务已在运行。",
|
||||||
});
|
});
|
||||||
|
<<<<<<< HEAD:routers/index.js
|
||||||
|
=======
|
||||||
|
// pushMessage(
|
||||||
|
// req,
|
||||||
|
// res,
|
||||||
|
// `请注意,ip 地址为 ${req.ip} 的用户访问了你的消息通知服务,如果非你本人,则你的私有消息通知服务可能已被泄露,当前版本无法阻止其他用户通过本系统向你发送消息。`
|
||||||
|
// );
|
||||||
|
>>>>>>> master:routes.js
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
res.render("configure");
|
res.render("configure");
|
||||||
@@ -62,4 +70,21 @@ router.all("/verify", (req, res, next) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
<<<<<<< HEAD:routers/index.js
|
||||||
|
=======
|
||||||
|
router.all("/push", (req, res, next) => {
|
||||||
|
let content = req.query.content || req.body.content;
|
||||||
|
pushMessage(req, res, content);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get("/favicon.ico", (req, res, next) => {
|
||||||
|
res.sendStatus(404);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.all("/:content", (req, res, next) => {
|
||||||
|
let content = req.params.content;
|
||||||
|
pushMessage(req, res, content);
|
||||||
|
});
|
||||||
|
|
||||||
|
>>>>>>> master:routes.js
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
Reference in New Issue
Block a user