## Webhook Adapter 提供 http 回调形式的接口, 可单纯做上报使用 ### 配置文件 ```yaml adapterSettings: webhook: ## 回调(上报)地址 destinations: - 'localhost:9999/path1' - 'localhost:9999/path2' - 'localhost:9999/path3' ## 额外自定义请求头 extraHeaders: Authorization: 'bearer SV*(&*(SH@ID^G' header1: value1 header2: value2 ``` ### 接口一览 #### 专有接口 + [数据格式](#数据格式) ------- #### 通用接口 **webhook只支持部分操作** + **[消息发送与撤回](#消息发送与撤回)** + [发送好友消息](#发送好友消息) + [发送群消息](#发送群消息) + [发送临时会话消息](#发送临时会话消息) + [发送头像戳一戳消息](#发送头像戳一戳消息) + [撤回消息](#撤回消息) + **[账号管理](#账号管理)** + [删除好友](#删除好友) + **[群管理](#群管理)** + [禁言群成员](#禁言群成员) + [解除群成员禁言](#解除群成员禁言) + [移除群成员](#移除群成员) + [退出群聊](#退出群聊) + [全体禁言](#全体禁言) + [解除全体禁言](#解除全体禁言) + [设置群精华消息](#设置群精华消息) + [修改群设置](#修改群设置) + [修改群员资料](#修改群员设置) + **[群公告](#群公告)** + [获取群公告](#获取群公告) + [发布群公告](#发布群公告) + [删除群公告](#删除群公告) + **[事件处理](#事件处理)** + [添加好友申请](#添加好友申请) + [用户入群申请](#用户入群申请) + [Bot被邀请入群申请](#Bot被邀请入群申请) ## 数据格式 webhook 不会接收主动请求, 只会接收到事件后向知道地址进行 http 上报. 但远端服务器可以通过 “响应” 进行简单的操作. > webhook 上报的内容为消息、事件的对象 [消息类型](../api/MessageType.md)、[事件类型](../api/EventType.md) > > http 请求会携带配置文件中定义的请求头,以及固定的请求头 `qq: xxxxxx`, 以表示收到消息事件的账号 ### 上报格式 消息、事件的 json 对象格式 + 请求方式: POST + content-type: application/json + [消息类型](../api/MessageType.md) + [事件类型](../api/EventType.md) ### 返回格式 ```json5 // headers // content-type: "application/json" // http body: { command: "", // 命令字 content: {} // 命令内容 } ``` ## 消息发送与撤回 ### 发送好友消息 使用此方法向指定好友发送消息 ``` 命令字: sendFriendMessage ``` 通用接口定义: [发送好友消息](../api/API.md#发送好友消息) ### 发送群消息 ``` 命令字: sendGroupMessage ``` 通用接口定义: [发送群消息](../api/API.md#发送群消息) ### 发送临时会话消息 ``` 命令字: sendTempMessage ``` 通用接口定义: [发送临时会话消息](../api/API.md#发送临时会话消息) ### 发送头像戳一戳消息 ``` 命令字: sendNudge ``` 通用接口定义: [发送头像戳一戳消息](../api/API.md#发送头像戳一戳消息) ### 撤回消息 ``` 命令字: recall ``` 通用接口定义: [撤回消息](../api/API.md#撤回消息) ## 账号管理 ### 删除好友 使用此方法删除指定好友 ``` 命令字: deleteFriend ``` 通用接口定义: [删除好友](../api/API.md#删除好友) ## 群管理 ### 禁言群成员 使用此方法指定群禁言指定群员(需要有相关限权) ``` 命令字: mute ``` 通用接口定义: [禁言群成员](../api/API.md#禁言群成员) ### 解除群成员禁言 使用此方法指定群解除群成员禁言(需要有相关限权) ``` 命令字: unmute ``` 通用接口定义: [解除群成员禁言](../api/API.md#解除群成员禁言) ### 移除群成员 使用此方法移除指定群成员(需要有相关限权) ``` 命令字: kick ``` 通用接口定义: [移除群成员](../api/API.md#移除群成员) ### 退出群聊 使用此方法使Bot退出群聊 ``` 命令字: quit ``` 通用接口定义: [退出群聊](../api/API.md#退出群聊) ### 全体禁言 使用此方法令指定群进行全体禁言(需要有相关限权) ``` 命令字: muteAll ``` 通用接口定义: [全体禁言](../api/API.md#全体禁言) ### 解除全体禁言 使用此方法令指定群解除全体禁言(需要有相关限权) ``` 命令字: unmuteAll ``` 通用接口定义: [解除全体禁言](../api/API.md#解除全体禁言) ### 设置群精华消息 使用此方法添加一条消息为精华消息(需要有相关限权) ``` 命令字: setEssence ``` 通用接口定义: [设置群精华消息](../api/API.md#设置群精华消息) ### 修改群设置 使用此方法修改群设置(需要有相关限权) ``` 命令字: groupConfig 子命令字: update ``` 通用接口定义: [修改群设置](../api/API.md#修改群设置) ### 修改群员设置 使用此方法修改群员设置(需要有相关限权) ``` 命令字: memberInfo 子命令字: update ``` 通用接口定义: [修改群员设置](../api/API.md#修改群员设置) ### 修改群员管理员 使用此方法修改群员的管理员权限(需要有群主限权) ``` 命令字: memberAdmin ``` 通用接口定义: [修改群员管理员](../api/API.md#修改群员管理员) ## 群公告 ### 获取群公告 此方法获取指定群公告列表 ``` 命令字: anno_list ``` 通用接口定义: [获取群公告](../api/API.md#获取群公告) ### 发布群公告 此方法向指定群发布群公告 ``` 命令字: anno_publish ``` 通用接口定义: [发布群公告](../api/API.md#发布群公告) ### 删除群公告 此方法删除指定群中一条公告 ``` 命令字: anno_delete ``` 通用接口定义: [删除群公告](../api/API.md#删除群公告) ## 事件处理 ### 添加好友申请 使用此方法处理添加好友申请 ``` 命令字: resp_newFriendRequestEvent ``` 通用接口定义: [添加好友申请](../api/API.md#添加好友申请) ### 用户入群申请 使用此方法处理用户入群申请 ``` 命令字: resp_memberJoinRequestEvent ``` 通用接口定义: [用户入群申请](../api/API.md#用户入群申请(Bot需要有管理员权限)) ### Bot被邀请入群申请 使用此方法处理Bot被邀请入群申请 ``` 命令字: resp_botInvitedJoinGroupRequestEvent ``` 通用接口定义: [Bot被邀请入群申请](../api/API.md#Bot被邀请入群申请)