Gotify 自建消息推送服务

a simple self-hosted server for sending and receiving messages
自建消息服务。
跨平台,Dockerable,简单,开源,免费,自建。
服务端、客户端、应用 都有。

Intro
This is the documentation of gotify/server. Lets start with some definitions:
约定如下
A client is a device or application that can manage clients, messages and applications. However a client is not allowed to send messages.
用户:代管理用户、消息、应用的设备或应用。用户不能发送消息。
An application is a device or application that only can send messages.
应用:仅能发送消息的设备或者应用。
Users are only able to manage (view/edit/delete) clients and applications (includes messages sent by the app) that they've created.
用户:仅管理(查、改、删)已创建的用户和应用(包括app发送的消息)
A message has the following attributes: content, title, creation date, application id and priority.
消息包含如下字段:内容,标题,创建日期,应用ID,优先级。

An application can be added via
WebUI: click the
apps
-tab in the upper right corner when logged in and add an applicationREST-API:
curl -u admin:admin https://yourdomain.com/application -F "name=test" -F "description=tutorial"
See API-Docs
可以通过WebUI或REST-API注册应用。
To authenticate as an application you need the application token. The token is returned in the REST request and is viewable in the WebUI.
与服务器通信通过应用程序令牌身份验证。REST请求返回程序令牌,可在WebUI查看。
Message Extras
Extras are used to carry extra information, change how clients behave, etc. Extras are stored in a key-value scheme and are only accepted in POST /message
requests with application/json
content-type.
消息扩展
用于改变用户响应等。以键值对方式存储。仅响应requests with application/json content-type的
POST方法。
reverse proxy
可用反向代理。
Nginx/Apache/Caddy2/Haproxy
Database
Dialect Connection
sqlite3 path/to/database.db
mysql gotify:secret@/gotifydb?charset=utf8&parseTime=True&loc=Local
postgres host=localhost port=3306 user=gotify dbname=gotify password=secret
When using postgres without SSL then sslmode=disable
must be added to the connection string. See #90.
For mysql
and postgres
: Make sure the defined database exists and the user has sufficient permissions.