外观
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 |
host | ws | Satori 服务地址,默认 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 action | Satori API |
|---|---|
send_msg / send_group_msg / send_private_msg | message.create |
delete_msg | message.delete |
get_msg | message.get |
get_group_list | guild.list |
get_group_member_list | guild.member.list |
get_group_member_info | guild.member.get |
set_group_kick | guild.member.kick |
set_group_ban / set_group_whole_ban | guild.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。
相关项目
- Satori 协议:https://satori.js.org/
