Interface IKookClient
- Namespace
- Kook
- Assembly
- Kook.Net.Core.dll
表示一个通用的 KOOK 客户端。
public interface IKookClient : IDisposable
- Inherited Members
Properties
ConnectionState
获取当前连接的状态。
ConnectionState ConnectionState { get; }
Property Value
CurrentUser
获取当前已登录的用户;如果没有用户登录,则为 null
。
ISelfUser? CurrentUser { get; }
Property Value
TokenType
获取已登录用户的令牌类型。
TokenType TokenType { get; }
Property Value
Methods
GetBlockedUsersAsync(CacheMode, RequestOptions?)
获取所有被当前用户屏蔽的用户。
Task<IReadOnlyCollection<IUser>> GetBlockedUsersAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IReadOnlyCollection<IUser>>
一个表示异步获取操作的任务。任务的结果是所有被当前用户屏蔽的用户。
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(Guid, CacheMode, RequestOptions?)
获取一个私聊频道。
Task<IDMChannel?> GetDMChannelAsync(Guid chatCode, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
chatCode
Guid私聊频道的聊天代码。
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
此方法不会返回当前会话之外已创建的私聊频道。如果客户端刚刚启动,这可能会返回一个空集合。
GetFriendRequestsAsync(CacheMode, RequestOptions?)
获取所有好友请求。
Task<IReadOnlyCollection<IFriendRequest>> GetFriendRequestsAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IReadOnlyCollection<IFriendRequest>>
一个表示异步获取操作的任务。任务的结果是所有请求与当前用户成为好友的用户。
GetFriendsAsync(CacheMode, RequestOptions?)
获取所有好友。
Task<IReadOnlyCollection<IUser>> GetFriendsAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IReadOnlyCollection<IUser>>
一个表示异步获取操作的任务。任务的结果是所有与当前用户是好友的用户。
GetGuildAsync(ulong, CacheMode, RequestOptions?)
获取一个服务器。
Task<IGuild?> GetGuildAsync(ulong id, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
id
ulong服务器的 ID。
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
GetGuildsAsync(CacheMode, RequestOptions?)
获取当前用户所在的所有服务器。
Task<IReadOnlyCollection<IGuild>> GetGuildsAsync(CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
- Task<IReadOnlyCollection<IGuild>>
一个表示异步获取操作的任务。任务的结果是当前用户所在的所有服务器。
GetUserAsync(string, string, RequestOptions?)
获取一个用户。
Task<IUser?> GetUserAsync(string username, string identifyNumber, RequestOptions? options = null)
Parameters
username
string用户的名称。
identifyNumber
string用户的识别号。
options
RequestOptions发送请求时要使用的选项。
Returns
GetUserAsync(ulong, CacheMode, RequestOptions?)
获取一个用户。
Task<IUser?> GetUserAsync(ulong id, CacheMode mode = CacheMode.AllowDownload, RequestOptions? options = null)
Parameters
id
ulong用户的 ID。
mode
CacheMode指示当前方法是否应该仅从缓存中获取结果,还是可以通过 API 请求获取数据。
options
RequestOptions发送请求时要使用的选项。
Returns
LoginAsync(TokenType, string, bool)
登录到 KOOK API。
Task LoginAsync(TokenType tokenType, string token, bool validateToken = true)
Parameters
Returns
- Task
一个表示异步登录操作的任务。
Remarks
验证令牌的操作是通过 ValidateToken(TokenType, string) 方法完成的。
此方法用于向当前客户端设置后续 API 请求的身份验证信息,获取并设置当前所登录用户的信息。
LogoutAsync()
从 KOOK API 退出登录。
Task LogoutAsync()
Returns
- Task
一个表示异步退出登录操作的任务。
Remarks
此方法用于清除当前客户端的身份验证信息及所缓存的当前所登录的用户信息。
StartAsync()
启动客户端与 KOOK 之间的连接。
Task StartAsync()
Returns
- Task
一个表示异步启动操作的任务。
Remarks
当前方法会初始化客户端与 KOOK 之间的连接。
important
此方法会在调用后立即返回,因为它会在另一个线程上初始化连接。
StopAsync()
停止客户端与 KOOK 之间的连接。
Task StopAsync()
Returns
- Task
一个表示异步停止操作的任务。