Adapter
TIP
本章将介绍与适配器相关的内容,这是一个相当底层的概念,因此如果你并不打算编写一个平台实现,你完全可以跳过本章节。
标有 抽象 的方法需要由适配器插件自行实现。
类:Adapter
适配器基类。
new Adapter()
构造一个适配器实例。
adapter.bots
- 类型:
Bot[]
当前适配器下的全部机器人实例。
adapter.connect(bot) 抽象
- bot:
Bot
机器人实例 - 返回值:
Promise<void>
连接 Bot 所需的操作,将在 bot.start()
中被调用。
adapter.disconnect(bot) 抽象
- bot:
Bot
机器人实例 - 返回值:
Promise<void>
停止连接 Bot 所需的操作,将在 bot.stop()
中被调用。
类:Adapter.WsClient
一个用于 WebSocket 通信方式的实用适配器基类。其中的机器人需要接受以下配置项:
ts
export interface WsClientConfig {
retryLazy?: number
retryTimes?: number
retryInterval?: number
}
new WsClient(ctx, bot)
- ctx:
Context
上下文 - bot:
Bot
机器人实例
创建一个 WsClient 适配器实例。
client.bot
- 类型:
Bot
当前适配器下的机器人实例。
client.socket
- 类型:
WebSocket
当前适配器下的 WebSocket 实例。
client.prepare() 抽象
- 返回值:
WebSocket | Promise<WebSocket>
根据机器人实例生成一个 WebSocket 对象。
client.accept() 抽象
WebSocket 连接成功建立后的回调函数。你需要实现这个方法,并在其中手动调用 bot.resolve()
回调函数表示已经连接成功。