机器人 (Bot)
TIP
机器人 (Bot) 是适配器的核心,它将不同平台的 API 封装成统一的格式供 Koishi 使用。而不同的适配器也可以自行扩展 Bot 实例上的属性和方法。
实例属性
bot.adapter
- 类型:
Adapter
当前 Bot
所在的 Adapter 实例。
bot.config
- 类型:
object
构造 Bot
实例时所使用的配置项。
bot.ctx
- 类型:
Context
当前 Bot
所在的 Context 实例。
bot.internal
- 类型:
object
当前机器人的 内部接口。
bot.platform
- 类型:
string
当前 Bot
的 平台名称。
bot.selfId
- 类型:
string
当前 Bot
的平台账号。
bot.status
- 类型:
Status
当前 Bot
的登录状态。
bot.user
- 类型:
User
当前 Bot
的用户信息。
适配器相关
bot.start()
- 返回值:
Promise<void>
启动机器人。这个方法会在插件被加载时自动被调用,通常你不需要手动调用它。
bot.stop()
- 返回值:
Promise<void>
停止机器人的运行,但不移除该实例。你可以后续通过 bot.start()
重新启动机器人。
这个方法会在插件被卸载时自动被调用,通常你不需要手动调用它。
bot.dispatch(session)
- session:
Session
会话实例
触发一个会话事件。
bot.session(event?)
创建一个新的会话实例。
bot.online()
修改机器人的状态为在线。
bot.offline(error?)
- error:
Error
错误信息
修改机器人的状态为离线,并记录错误信息。
通用 API
通用 API 由适配器实现。它们会在相应的资源页面中介绍。
bot.broadcast()
bot.clearReaction()
bot.createChannel()
bot.createDirectChannel()
bot.createGuildRole()
bot.createReaction()
bot.deleteChannel()
bot.deleteGuildRole()
bot.deleteReaction()
bot.deleteMessage()
bot.editMessage()
bot.getChannel()
bot.getChannelIter()
bot.getChannelList()
bot.getFriendIter()
bot.getFriendList()
bot.getGuild()
bot.getGuildIter()
bot.getGuildList()
bot.getGuildMember()
bot.getGuildMemberIter()
bot.getGuildMemberList()
bot.getGuildRoleIter()
bot.getGuildRoleList()
bot.getLogin()
bot.getMessage()
bot.getMessageIter()
bot.getMessageList()
bot.getReactionIter()
bot.getReactionList()
bot.getUser()
bot.handleFriendRequest()
bot.handleGuildMemberRequest()
bot.handleGuildRequest()
bot.kickGuildMember()
bot.muteGuildMember()
bot.sendMessage()
bot.sendPrivateMessage()
bot.setGuildMemberRole()
bot.unsetGuildMemberRole()
bot.updateChannel()
bot.updateGuildRole()