Interface IHeyBoxClient
- Namespace
- HeyBox
- Assembly
- HeyBox.Net.Core.dll
表示一个通用的黑盒语音 Bot 客户端。
public interface IHeyBoxClient : IDisposable
- Inherited Members
Properties
ConnectionState
获取当前连接的状态。
ConnectionState ConnectionState { get; }
Property Value
TokenType
获取已登录用户的令牌类型。
TokenType TokenType { get; }
Property Value
Methods
GetChannelAsync(ulong, CacheMode, RequestOptions?)
获取一个频道。
Task<IChannel?> GetChannelAsync(ulong id, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
id
ulong频道的 ID。
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
GetDMChannelAsync(uint, CacheMode, RequestOptions?)
获取一个私聊频道。
Task<IDMChannel?> GetDMChannelAsync(uint userId, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
userId
uint私聊频道中另一位用户的 ID。
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IDMChannel>
一个表示异步获取操作的任务。任务的结果是具有指定聊天代码的私聊频道;若指定聊天代码的私聊频道不存在,则为
null
。
GetDMChannelsAsync(CacheMode, RequestOptions?)
获取当前会话中已创建的所有私聊频道。
Task<IReadOnlyCollection<IDMChannel>> GetDMChannelsAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IReadOnlyCollection<IDMChannel>>
一个表示异步获取操作的任务。任务的结果是当前会话中已创建的所有私聊频道。
Remarks
warning
此方法不会返回当前会话之外已创建的私聊频道。如果客户端刚刚启动,这可能会返回一个空集合。
GetRoomAsync(ulong, CacheMode, RequestOptions?)
获取一个房间。
Task<IRoom?> GetRoomAsync(ulong id, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
id
ulong房间的 ID。
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
GetRoomsAsync(CacheMode, RequestOptions?)
获取当前用户所在的所有房间。
Task<IReadOnlyCollection<IRoom>> GetRoomsAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IReadOnlyCollection<IRoom>>
一个表示异步获取操作的任务。任务的结果是当前用户所在的所有房间。
GetUserAsync(uint, CacheMode, RequestOptions?)
获取一个用户。
Task<IUser?> GetUserAsync(uint id, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
id
uint用户的 ID。
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
LoginAsync(TokenType, string, bool)
登录到黑盒语音 API。
Task LoginAsync(TokenType tokenType, string token, bool validateToken = true)
Parameters
Returns
- Task
一个表示异步登录操作的任务。
Remarks
验证令牌的操作是通过 ValidateToken(TokenType, string) 方法完成的。
此方法用于向当前客户端设置后续 API 请求的身份验证信息,获取并设置当前所登录用户的信息。
LogoutAsync()
从黑盒语音 API 退出登录。
Task LogoutAsync()
Returns
- Task
一个表示异步退出登录操作的任务。
Remarks
此方法用于清除当前客户端的身份验证信息及所缓存的当前所登录的用户信息。
StartAsync()
启动客户端与黑盒语音之间的连接。
Task StartAsync()
Returns
- Task
一个表示异步启动操作的任务。
Remarks
当前方法会初始化客户端与黑盒语音之间的连接。
important
此方法会在调用后立即返回,因为它会在另一个线程上初始化连接。
StopAsync()
停止客户端与黑盒语音之间的连接。
Task StopAsync()
Returns
- Task
一个表示异步停止操作的任务。