Skip to content

Satori ​

Satori 跨平台聊天机器人开放协议。支持正向 WS、反向 WS、HTTP 三种连接,发送统一走 HTTP POST {apiBase}/v1/{action},action 自动映射到 Satori 协议。

适配器类型:"satori" 源码:src/adapter/satori/ 协议:Satori 协议(跨平台聊天机器人开放协议),可对接多个 Satori 兼容平台。

说明 ​

特点 ​

  • 支持三种连接方式:正向 WS、反向 WS、HTTP(webhook)
  • 发送统一走 Satori HTTP API,action 自动从 OneBot 风格映射到 Satori
  • 可对接多个 Satori 兼容平台(如 Chronocat、Satori 服务端等)

原理 ​

  • 接收:Satori 服务端通过 WS 或 HTTP 上报事件,适配器转为框架统一事件
  • 发送:POST http://{host}:{port}/v1/{action},OneBot 风格 action 自动映射

前提 ​

  • 已部署 Satori 兼容服务端(如 Chronocat 等)
  • 服务端已配置对应连接方式

安装 ​

适配器安装 ​

bash
van adapter install satori

依赖库 ​

bash
npm install ws

配置 ​

方式一:正向 WS(本框架连 Satori 服务端)——默认 ​

jsonc
{
  "botId": "Satori-Bot",
  "type": "satori",
  "mode": "ws",
  "host": "127.0.0.1",
  "port": 5140,
  "path": "/v1/events",
  "token": "",
  "platform": ""
}

方式二:反向 WS(本框架起 WS 服务) ​

jsonc
{
  "botId": "Satori-Bot",
  "type": "satori",
  "mode": "ws_reverse",
  "port": 5140,
  "path": "/v1/events",
  "token": "",
  "platform": ""
}

方式三:HTTP(webhook) ​

jsonc
{
  "botId": "Satori-Bot",
  "type": "satori",
  "mode": "http",
  "port": 5141,
  "path": "/v1/events",
  "token": "",
  "platform": ""
}

配置说明 ​

配置项必填说明
mode可选连接方式:ws(默认)/ ws_reverse / http
hostwsSatori 服务地址,默认 127.0.0.1
port✅服务端口(ws 模式为 Satori 端口,ws_reverse/http 为本框架监听端口)
path可选事件路径,默认 /v1/events
token可选Bearer Token 鉴权
platform可选平台标识

接收事件 ​

Satori 推送的事件转统一事件:

Satori 事件框架事件
群消息group_message
私聊private_message
通知notice

API 调用 ​

适配器自动把 OneBot 风格的 action 映射到 Satori API:

OneBot actionSatori API
send_msg / send_group_msg / send_private_msgmessage.create
delete_msgmessage.delete
get_msgmessage.get
get_group_listguild.list
get_group_member_listguild.member.list
get_group_member_infoguild.member.get
set_group_kickguild.member.kick
set_group_ban / set_group_whole_banguild.member.mute
ts
await bot.callApi("send_group_msg", { group_id: "群id", message: "你好" })
await bot.callApi("send_private_msg", { user_id: "用户id", message: "你好" })

message 支持字符串或消息段数组,自动转换为 Satori content 格式。

常见问题 ​

  • 连不上 Satori 服务端:确认 host/port 正确,服务端已启动。
  • 发送失败:确认 Satori 服务端已开启 HTTP API,三种模式下发送都走 HTTP。

相关项目 ​

Just run の Bot · 一套插件,全平台机器人