消息推送服务Gotify

本文最后更新于 2023年3月7日 早上

部署后可以通过API将消息推送到相应设备的服务。官网里面有教程,本文是自己搭建的流程记录,这东西单纯用起来还是挺简单的。

1 安装

1.1 服务器

肯定是选择用docker方式了,一个命令就搞定了,

1
docker run -d  -e TZ="Asia/Shanghai"  -e GOTIFY_SERVER_PORT=10004  -p 10004:10004  -v /root/gotify/data:/app/data  gotify/server

p参数冒号前面的是宿主机的端口,记着它之后地址要加上它的。我这个服务器没备案域名,所有直接用地址访问了,如果要弄去看官网文档吧。

之后浏览器输入IP和端口进入web页面,例如

1
192.168.1.1:10004

默认账号密码都是admin,进去后先在users里面把密码改了。我这儿新建了个kuon非管理员用户。点击LOGOUT,然后用kuon登录。
点击APP,然后创建一个应用,获得token

1.2 消息接收客户端

android端进入谷歌商店,搜索gotify即可。安装打开后先输入地址,然后在下发弹出的窗口输入账号密码进行登录。

2 发送消息

执行命令,记得替换成你的IP和token:

1
curl "http://你的IP地址:10004/message?token=网站上的token" -F "title=消息的标题" -F "message=消息的内容" -F "priority=5"

得到以下应答

1
{"id":1,"appid":1,"message":"消息的内容","title":"消息的标题","priority":5,"date":"2023-03-01T10:42:29.163694692+08:00"}(

此时app上收到消息:

使用python发送一张图片

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import requests

resp = requests.post('http://0.0.0.0:10004/message?token=123456', json={

    "message": "卡拉: ![](https://s1.ax1x.com/2023/03/01/ppiEGJH.jpg)",

    "priority": 2,

    "title": "图片",

    "extras": {

    "client::display": {

      "contentType": "text/markdown"

    }

  }

})

print(resp)

更多消息推送的示例


消息推送服务Gotify
https://blog.kala.love/posts/4730b400/
作者
久远·卡拉
发布于
2023年3月6日
许可协议