核心函数库

提示

本章节的函数内容大多与 mirai-api-http 的 API 相似或一致 (部分函数的参数顺序可能发生变动),你可以参考 mirai-api-http 的文档了解每个参数的具体含义以及每个函数的返回内容。

关于未定义函数

有些 mirai-api-http 的 API 并未 (还未) 在 MiraiEz 中作为函数被定义,可以使用适当的适配器函数调用这些命令。

关于 sessionKey

如未特别说明,则函数中的 sessionKey 参数可以留空,不需要考虑鉴权相关问题。因为本框架已经自动处理了,所以你只需要专注于命令与其内容即可。

适配器函数

自动适配器

自动选择一个适配器发送命令。命令字中的 下划线(_)左斜杠(/) 会自动转换。

例如命令字 resp_newFriendRequestEvent 与 resp/newFriendRequestEvent 使用自动适配器都可以。

提示

如未设置只使用 HTTP 适配器,则自动适配器会优先使用 Webhook 适配器返回数据且只会使用一次。

autoAdapter($command = '', $content = array())
参数类型可选说明
commandstringfalse命令字
contentarraytrue命令参数

返回值

  • HTTP array JSON 解码后的数组
  • Webhook array 固定返回值为 {"code": 0, "message": "success"} (此处使用 JSON 便于表达,实际返回是解码为数组后的内容)

HTTP 适配器

向 HTTP 适配器发送请求。

使用 HTTP 适配器时不需要在命令字前加 左斜杠(/),例如处理用户入群申请为 resp/memberJoinRequestEvent

注意

不同于自动适配器函数,HTTP 适配器函数不会自动将 下划线(_) 转换为 左斜杠(/),因此在使用时要特别注意。

HttpAdapter($command, $content = array(), $post = null, $json = true)
参数类型可选说明
commandstringfalse命令字
contentarraytrue命令参数
postbooltrue是否使用 POST 方法 (留空自动判断)
jsonbooltrue是否使用 JSON 编码 (仅限 POST, 默认为 true)

返回值

array JSON 解码后的数组

消息发送与撤回

发送好友消息

sendFriendMessage($target, $messageChain, $quote = 0, $sessionKey = '')
参数类型可选说明
targetintfalse发送消息目标好友的 QQ 号
messageChainarray, stringfalse要发送的消息链或文本
quoteinttrue引用一条消息的 messageId 进行回复

发送群消息

sendGroupMessage($target, $messageChain, $quote = 0, $sessionKey = '')
参数类型可选说明
targetintfalse发送消息目标群的群号
messageChainarray, stringfalse要发送的消息链或文本
quoteinttrue引用一条消息的 messageId 进行回复

发送临时会话消息

sendTempMessage($qq, $group, $messageChain, $quote = 0, $sessionKey = '')
参数类型可选说明
qqintfalse临时会话对象 QQ 号
groupintfalse临时会话群号
messageChainarray, stringfalse要发送的消息链或文本
quoteinttrue引用一条消息的 messageId 进行回复

发送头像戳一戳消息

未定义

撤回消息

recall($messageId = true, $target = true, $sessionKey = '')
参数类型可选说明
messageIdinttrue需要撤回的消息的 messageId (留空或传入 true 指定为当前上报消息)
targetinttrue好友 id 或群 id (留空或传入 true 指定为当前上报消息)

获取漫游消息

未定义

通过 messageId 获取消息

messageFromId($messageId = true, $target = true, $sessionKey = '')
参数类型可选说明
messageIdinttrue需要获取消息的 messageId (留空或传入 true 指定为当前上报消息)
targetinttrue好友 id 或群 id (留空或传入 true 指定为当前上报消息)

文件操作与上传

获取文件信息

file_info($id = true, $path = null, $target = true, $group = null, $qq = null, $withDownloadInfo = false, $sessionKey = '')
参数类型可选说明
idstringtrue文件id, 空串为根目录
pathstringtrue文件夹路径, 文件夹允许重名, 不保证准确, 准确定位使用 id
targetinttrue群号或好友 QQ 号 (留空或传入 true 指定为当前群或好友)
groupinttrue群号
qqinttrue好友 QQ 号
withDownloadInfobooltrue是否携带下载信息,额外请求,无必要不要携带

创建文件夹

file_mkdir($id, $directoryName, $path = null, $target = null, $group = null, $qq = null, $sessionKey = '')
参数类型可选说明
idstringfalse父目录id, 空串为根目录
directoryNamestringfalse新建文件夹名
pathstringtrue文件夹路径, 文件夹允许重名, 不保证准确, 准确定位使用 id
targetinttrue群号或好友 QQ 号 (留空或传入 true 指定为当前群或好友)
groupinttrue群号
qqinttrue好友 QQ 号

删除文件

file_delete($id = true, $path = null, $target = true, $group = null, $qq = null, $sessionKey = '')
参数类型可选说明
idstringfalse删除文件id
pathstringtrue文件夹路径, 文件夹允许重名, 不保证准确, 准确定位使用 id
targetinttrue群号或好友 QQ 号 (留空或传入 true 指定为当前群或好友)
groupinttrue群号
qqinttrue好友 QQ 号

移动文件

function file_move($id = true, $moveTo = null, $path = null, $moveToPath = null, $target = true, $group = null, $qq = null, $sessionKey = '')
参数类型可选说明
idstringfalse删除文件id
moveTostringtrue移动目标文件夹 id
pathstringtrue文件夹路径, 文件夹允许重名, 不保证准确, 准确定位使用 id
moveToPathstringtrue移动目标文件路径, 文件夹允许重名, 不保证准确, 准确定位使用 moveTo
targetinttrue群号或好友 QQ 号 (留空或传入 true 指定为当前群或好友)
groupinttrue群号
qqinttrue好友 QQ 号

重命名文件

file_rename($id = true, $renameTo = null, $path = null, $target = true, $group = null, $qq = null, $sessionKey = '')
参数类型可选说明
idstringfalse重命名文件 id
renameTostringfalse新文件名
pathstringtrue文件夹路径, 文件夹允许重名, 不保证准确, 准确定位使用 id
targetinttrue群号或好友 QQ 号 (留空或传入 true 指定为当前群或好友)
groupinttrue群号
qqinttrue好友 QQ 号

图片文件上传

未定义

语音文件上传

未定义

群文件上传

file_upload($file, $path = '', $type = 'group', $target = true, $sessionKey = '')
参数类型可选说明
fileCURLFilefalsecURL 文件对象
pathstringtrue上传目录的 id, 空串为上传到根目录
typestringtrue当前仅支持 group (传入 true 指定为当前类型, 留空则为 group)
targetinttrue上传目标群号 (传入 true 指定为当前群)

账号信息与管理

获取好友列表

friendList($sessionKey = '')

获取群列表

groupList($sessionKey = '')

获取群成员列表

memberList($target = true, $sessionKey = '')
参数类型可选说明
targetinttrue指定群的群号 (传入 true 指定为当前群)

获取Bot资料

未定义

获取好友资料

未定义

获取群成员资料

未定义

获取QQ用户资料

未定义

删除好友

未定义

群管理与公告

禁言群成员

未定义

解除群成员禁言

未定义

移除群成员

未定义

退出群聊

未定义

全体禁言

未定义

解除全体禁言

未定义

设置群精华消息

未定义

获取/修改群设置

groupConfig($target = true, $config = array(), $sessionKey = '')
参数类型可选说明
targetinttrue指定群的群号
configarraytrue群设置 (留空则为获取群设置)

获取/修改群员设置

memberInfo($target = true, $memberId = true, $info = array(), $sessionKey = '')
参数类型可选说明
targetinttrue指定群的群号
memberIdinttrue群员 QQ 号
infoarraytrue群员资料 (留空则为获取群员设置)

获取群公告

未定义

发布群公告

未定义

删除群公告

未定义

事件处理

添加好友申请

resp_newFriendRequestEvent($operate, $eventId = true, $fromId = true, $groupId = true, $message = "", $sessionKey = '')
参数类型可选说明
operateintfalse响应的操作类型
eventIdinttrue响应申请事件的标识 (留空或传入 true 则为当前上报的事件标识)
fromIdinttrue事件对应申请人 QQ 号 (留空或传入 true 则为当前上报的申请人)
groupIdinttrue事件对应申请人的群号,可能为 0 (留空或传入 true 则为当前上报的群号)
messagestringtrue回复的信息
operate说明
0同意添加好友
1拒绝添加好友
2拒绝添加好友并添加黑名单,不再接收该用户的好友申请

用户入群申请

resp_memberJoinRequestEvent($operate, $eventId = true, $fromId = true, $groupId = true, $message = "", $sessionKey = '')
参数类型可选说明
operateintfalse响应的操作类型
eventIdinttrue响应申请事件的标识 (留空或传入 true 则为当前上报的事件标识)
fromIdinttrue事件对应申请人 QQ 号 (留空或传入 true 则为当前上报的申请人)
groupIdinttrue事件对应申请人的群号 (留空或传入 true 则为当前上报的群号)
messagestringtrue回复的信息
operate说明
0同意入群
1拒绝入群
2忽略请求
3拒绝入群并添加黑名单,不再接收该用户的入群申请
4忽略入群并添加黑名单,不再接收该用户的入群申请

Bot 被邀请入群申请

resp_botInvitedJoinGroupRequestEvent($operate, $eventId = true, $fromId = true, $groupId = true, $message = "", $sessionKey = '')
参数类型可选说明
operateintfalse响应的操作类型
eventIdinttrue事件标识 (留空或传入 true 则为当前上报的事件标识)
fromIdinttrue邀请人 (好友) 的QQ号 (留空或传入 true 则为当前上报的邀请人)
groupIdinttrue被邀请进入群的群号 (留空或传入 true 则为当前上报的群号)
messagestringtrue回复的信息
operate说明
0同意邀请
1拒绝邀请