通知方式
一些常见的通知方式
Gotify
项目地址: gotify/server
部署 server 之后,只需要提供 APP TOKEN 给调用方,就可以通过 HTTP API 发送通知了
调用:
$ curl "https://push.example.de/message?token=<apptoken>" -F "title=my title" -F "message=my message" -F "priority=5"ntfy
项目地址: binwiederhier/ntfy
只需要下载对应的 APP,创建一个 Topic,例如下面的 mytopic,就可以通过 HTTP API 发送通知了
调用:
$ curl -d "Backup successful 😀" ntfy.sh/mytopic没有鉴权,所以需要注意,Topic 是公开的,任何人都可以发送通知到这个 Topic,最好取一个独一无二,不容易被猜到的 Topic 名称
pushover
提供对应的 User Key,生成新的 application,得到 token
也是第三方的访服务,提供了 APP 下载
Webhook
直接提供一个 HTTP 接口,调用方调用这个接口,就可以触发通知,通常可以配置 header 等字段用于鉴权
配置参考:
webhook:
enabled: true
server: http://host:ip
method: postSMTP
即通过 SMTP 发送邮件,通常需要配置 SMTP 服务器地址、端口、用户名、密码等信息
以 163 邮箱为例,配置如下:
[smtp]
enabled = true
host = smtp.163.com:465
user = [email protected]
password = WW2DXXXXXXX # 授权码
from_address = [email protected]
from_name = Grafanatelegram
创建一个 bot 后,可以得到一个 token,例如 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11
你可以在 Telegram 中添加一个 bot 作为通知接收端,然后获取到它的聊天 ID,就可以通过这个 ID 发送通知了
配置参考:
telegram:
enabled: true
chatid: 123456789
message_thread_id: 100
token: 987654321:ABCDEFGHIJKLMNOP