消息附加功能

附加信息(Extras)用于承载额外数据或改变客户端行为等。这些信息以键值对形式存储,且仅在接受‘application/json‘内容类型的‘POST /message‘请求中有效。

命名空间

.extras 下的键应采用以下格式:<顶级命名空间>::[<子命名空间>::]<操作>。部分命名空间被官方客户端所使用:

命名空间 描述
client::* 保留
client::display 更改客户端信息显示方式
client::notification 自定义通知
android::* 保留
android::action 对事件作出反应
ios::* 保留
server::* 保留
所有其他 由最终用户定义

client::display

contentType
内容类型 描述
text/plain 默认;消息将以纯文本形式呈现。链接可能会被高亮显示并可点击。
text/markdown 消息应以 Markdown 格式呈现,HTML 将被忽略。

注意:Markdown 支持通过! 渲染图片,这些图片在消息被查看时会自动下载。类似于电子邮件客户端默认阻止远程内容的原因,自动下载远程图片可能被用来收集用户信息。
此外,如果消息部分内容来自恶意外部源的插值,攻击者可能注入格式错误的 Markdown,从而导致信息泄露。
建议使用纯文本格式(text/plain)来减少使用外部来源(如脚本输出)文本时可能引发的安全问题。

示例
{
  "extras": {
    "client::display": {
      "contentType": "text/plain"
    }
  }
}
支持
客户端 描述
Gotify / 服务器用户界面 V2.0.5 使用 GitHub 风格的 Markdown
Gotify / 安卓 V2.0.7 使用 commonmark-spec 规范

client::notification

click.url

Click.url(字符串):点击通知时打开一个 URL。

示例

{
  "extras": {
    "client::notification": {
      "click": {"url": "https://gotify.net"}
    }
  }
}
支持
客户端 描述
Gotify / 安卓 V2.0.10 阻止默认打开 Gotify 应用的行为
bigImageUrl

大图网址(字符串):在通知中显示大图。

示例
{
  "extras": {
    "client::notification": {
      "bigImageUrl": "https://placekitten.com/400/300"
    }
  }
}
支持
客户端 描述
Gotify/android V2.3.0 您可能需要展开通知。此功能由 gotify/android#200 添加。

android::action

onReceive.intentUrl

OnReceive.intentUrl(字符串):通知送达后打开一个意图。

示例
{
  "extras": {
    "android::action": {
      "onReceive": {"intentUrl": "https://gotify.net"}
    }
  }
}
支持
客户端 描述
Gotify / 安卓 V2.0.11 您需要在应用设置中启用 “意图操作权限”,否则此功能仅当应用处于前台时有效。
作者:Jeebiz  创建时间:2025-12-04 10:53
最后编辑:Jeebiz  更新时间:2025-12-04 11:29