✨ 基于 Satori 协议的 QQ 官方机器人 API GoLang 实现 ✨
本项目引用了这些项目,并进行了一些改动
本项目是一个基于 Satori 协议的 QQ 官方机器人 API GoLang 实现,目的是可以使用户能够快速地建立起一个 Satori 服务端,并能够通过 Satori 协议规定的规范化 API 接口实现 QQ 官方机器人。
已实现消息元素
元素标签 | 功能 | QQ 频道 | QQ 单聊/群聊 |
---|---|---|---|
- | 纯文本 | 🟩 | 🟩 |
<at> |
提及用户 | 🟩 | 🟥 |
<sharp> |
提及频道 | 🟩 | 🟥 |
<img> |
图片 | 🟩 | 🟩 |
<audio> |
语音 | 🟥 | 🟩 |
<video> |
视频 | 🟥 | 🟩 |
<quote> |
引用 | 🟩 | 🟥 |
拓展元素标签 | 功能 | QQ 频道 | QQ 单聊/群聊 |
---|---|---|---|
<passive> |
[被动消息] | 🟩 | 🟩 |
已实现 API
API | 功能 | QQ 频道 | QQ 单聊/群聊 |
---|---|---|---|
/channel.get | 获取群组频道 | 🟩 | 🟩 |
/channel.list | 获取群组频道列表 | 🟩 | 🟩 |
/channle.create | 创建群组频道 | 🟩 | 🟥 |
/channel.update | 修改群组频道 | 🟩 | 🟥 |
/channel.delete | 删除群组频道 | 🟩 | 🟥 |
/user.channel.create | 创建私聊频道 | 🟩 | 🟩 |
/guild.get | 获取群组 | 🟩 | 🟩 |
/guild.list | 获取群组列表 | 🟩 | 🟩 |
/guild.member.get | 获取群组成员 | 🟩 | 🟥 |
/guild.member.list | 获取群组成员列表 | 🟩 | 🟥 |
/guild.member.kick | 踢出群组成员 | 🟩 | 🟥 |
/guild.role.list | 获取群组角色列表 | 🟩 | 🟥 |
/guild.role.create | 创建群组角色 | 🟩 | 🟥 |
/guild.role.update | 修改群组角色 | 🟩 | 🟥 |
/guild.role.delete | 删除群组角色 | 🟩 | 🟥 |
/login.get | 获取登录信息 | 🟩 | 🟩 |
/message.create | 发送消息 | 🟩 | 🟩 |
/message.get | 获取消息 | 🟩 | 🟩 |
/message.delete | 撤回消息 | 🟩 | 🟥 |
/message.update | 编辑消息 | 🟩 | 🟥 |
/message.list | 获取消息列表 | 🟩 | 🟩 |
/reaction.create | 添加表态 | 🟩 | 🟥 |
/reaction.delete | 删除表态 | 🟩 | 🟥 |
/reaction.list | 获取表态列表 | 🟩 | 🟥 |
扩展 API | 功能 |
---|---|
/admin/login.list | 获取登录信息列表 |
/admin/webhook.create | 创建 WebHook |
/admin/webhook.delete | 移除 WebHook |
已实现的事件
事件类型 | 事件 | QQ 频道 | QQ 单聊/群聊 |
---|---|---|---|
guild-added | 加入群组时触发 | 🟩 | 🟩 |
guild-updated | 群组被修改时触发 | 🟩 | 🟥 |
guild-removed | 退出群组时触发 | 🟩 | 🟩 |
guild-member-added | 群组成员增加时触发 | 🟩 | 🟥 |
guild-member-updated | 群组成员信息更新时触发 | 🟩 | 🟥 |
guild-member-removed | 群组成员移除时触发 | 🟩 | 🟥 |
login-added | 登录被创建时触发 | 🟩 | 🟩 |
login-removed | 登录被删除时触发 | 🟩 | 🟩 |
login-updated | 登录信息更新时触发 | 🟩 | 🟩 |
message-created | 当消息被创建时触发 | 🟩 | 🟩 |
message-deleted | 当消息被删除时触发 | 🟩 | 🟥 |
reaction-added | 当表态被添加时触发 | 🟩 | 🟥 |
reaction-removed | 当表态被移除时触发 | 🟩 | 🟥 |
Satori 协议为无法直接通过 Satori 服务端获取的事件提供了 internal
事件,这意味着当用户收到 internal
事件后,可以直接通过事件结构的 _type
字段获取原生事件类型,并通过 _data
字段获取原生事件数据。
事件类型 | 事件 | QQ 频道 | QQ 单聊/群聊 |
---|---|---|---|
internal | 平台原生事件 | 🟩 | 🟥 |
与此同时,部分 Satori 协议标准事件也会存在 _type
字段和 _data
字段,用户可以通过该字段直接访问 QQ 原生事件数据。