Class: Bot
机器人客户端。
Constructors
new Bot()
new Bot(
token
,options
?):Bot
Parameters
Parameter | Type | Description |
---|---|---|
token | string | 机器人 token。 |
options ? | BotOptions | 配置项。 |
Returns
Defined in
Properties
WebSocket
readonly
WebSocket:WsClient
请求使用的 WebSocket 接口。
Default
globalThis.WebSocket ?? (await import('ws')).WebSocket
Defined in
axios
readonly
axios:Axios
请求使用的 axios 实例。
默认配置:
baseURL
:https://a1.fanbook.mobi/api/bot/${this.token}
Defined in
token
readonly
token:string
机器人 token。
Defined in
Methods
addMemberRole()
addMemberRole(
guild
,user
,roles
):Promise
<void
>
给服务器成员添加身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
user | bigint | 用户 ID |
roles | bigint [] | 添加的身份组 ID 列表 |
Returns
Promise
<void
>
Defined in
checkUserGuilds()
checkUserGuilds(
user
,guilds
):Promise
<bigint
[]>
判断用户是否在指定服务器列表中。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 用户 ID |
guilds | bigint [] | 服务器 ID 列表 |
Returns
Promise
<bigint
[]>
用户在的服务器 ID 列表
Defined in
createGuildRole()
createGuildRole(
guild
,name
,color
,options
?):Promise
<GuildRole
>
创建服务器身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所属服务器 ID |
name | string | 身份组名称 |
color | number | 身份组颜色 RGB 数值 |
options ? | CreateGuildRoleOptions | 其他选项 |
Returns
Promise
<GuildRole
>
身份组对象
Defined in
deleteGuildRole()
deleteGuildRole(
guild
,role
):Promise
<void
>
删除服务器身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
role | bigint | 身份组 ID |
Returns
Promise
<void
>
Defined in
deleteGuildUserCredit()
deleteGuildUserCredit(
user
,card
,options
):Promise
<void
>
删除服务器用户荣誉。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 用户 ID |
card | string | 荣誉自定义 ID |
options | DeleteGuildUserCreditOptions | 其他数据 |
Returns
Promise
<void
>
Defined in
deleteMessage()
deleteMessage(
chat
,message
):Promise
<boolean
>
撤回消息。
如果有撤回消息权限,则可以撤回任何时间的,且身份比机器人低的用户,发送的消息,否则只能撤回自身 3 分钟之内发送的消息。
撤回失败返回 false
。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 消息所在聊天 ID |
message | bigint | 消息 ID |
Returns
Promise
<boolean
>
是否成功
Defined in
editMessage()
editMessage(
chat
,message
,content
,options
?):Promise
<Message
>
编辑消息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 消息所在聊天 ID |
message | bigint | 消息 ID |
content | string | 新的消息内容 |
options ? | EditMessageOptions | 其他选项 |
Returns
Promise
<Message
>
编辑后的消息对象
Defined in
editReplyMarkup()
editReplyMarkup(
chat
,message
,content
):Promise
<Message
>
编辑内联键盘。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 消息所在聊天 ID |
message | bigint | 消息 ID |
content | ReplyKeyboardMarkup | 新的内联键盘 |
Returns
Promise
<Message
>
编辑后的消息对象
Defined in
forbidMemberSpeaking()
forbidMemberSpeaking(
guild
,user
,duration
):Promise
<void
>
禁言服务器成员。
禁言时长在 60
~2592000
中,超出范围时如果在 1
~2147483647
中则近取合法值,否则报错。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
user | bigint | 用户 ID |
duration | number | 禁言时长(单位:秒) |
Returns
Promise
<void
>
Defined in
getGuild()
getGuild(
guild
,user
?):Promise
<Guild
>
获取服务器信息。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
user ? | bigint | 用户 ID |
Returns
Promise
<Guild
>
服务器对象
Defined in
getGuildUserCredits()
getGuildUserCredits(
guild
,user
):Promise
<GuildCredit
[]>
获取服务器用户荣誉。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
user | bigint | 用户 ID |
Returns
Promise
<GuildCredit
[]>
服务器用户荣誉列表
Defined in
getInvitation()
getInvitation(
code
):Promise
<GuildInviteCodeRecord
>
获取邀请信息。
Parameters
Parameter | Type | Description |
---|---|---|
code | string | 邀请码(不包含域名) |
Returns
Promise
<GuildInviteCodeRecord
>
邀请信息
Defined in
getMe()
getMe(
options
?):Promise
<User
>
校验令牌有效性,获取机器人自身的信息。
Parameters
Parameter | Type |
---|---|
options ? | GetMeOptions |
Returns
Promise
<User
>
机器人自身信息
Defined in
getMembersByShortIds()
getMembersByShortIds(
guild
,ids
):Promise
<GuideChatMember
[]>
批量通过 Fanbook ID(短 ID)获取用户。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在频道 ID |
ids | number [] | Fanbook ID 列表 |
Returns
Promise
<GuideChatMember
[]>
用户列表
Defined in
getMessage()
getMessage(
chat
,message
):Promise
<Message
>
获取消息信息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 消息所在聊天 ID |
message | bigint | 消息 ID |
Returns
Promise
<Message
>
消息对象
Defined in
getPrivateChat()
getPrivateChat(
user
):Promise
<Chat
>
获取与用户的私聊。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 目标用户 ID |
Returns
Promise
<Chat
>
私聊
Defined in
getUserHumanVerifyStatus()
getUserHumanVerifyStatus(
user
):Promise
<boolean
>
获取用户实名认证状态。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 用户 ID |
Returns
Promise
<boolean
>
是否已实名认证
Defined in
isGuildMember()
isGuildMember(
guild
,user
):Promise
<boolean
>
判断指定用户是否在指定服务器中。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
user | bigint | 用户 ID |
Returns
Promise
<boolean
>
是否在服务器中
Defined in
listChatMember()
listChatMember(
options
):Promise
<any
>
列出聊天或服务器成员。
Parameters
Parameter | Type | Description |
---|---|---|
options | ListChatMemberOptions | 其他数据 |
Returns
Promise
<any
>
成员列表
Defined in
listChatMessage()
listChatMessage(
chat
,size
,message
?,behavior
?):Promise
<bigint
[]>
列出聊天的历史消息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 聊天 ID |
size | number | 分页长度 |
message ? | bigint | 基准消息 |
behavior ? | ListChatMessageBehavior | 取基准消息的前还是后,留空则为 before |
Returns
Promise
<bigint
[]>
当前页的消息列表
Defined in
listGuildChannel()
listGuildChannel(
guild
):Promise
<Channel
[]>
列出服务器频道。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
Returns
Promise
<Channel
[]>
服务器频道 ID 列表
Defined in
listGuildEmoji()
listGuildEmoji(
guild
):Promise
<GuildEmoji
[]>
列出服务器表情符号。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
Returns
Promise
<GuildEmoji
[]>
服务器表情符号列表
Defined in
listGuildInvitation()
listGuildInvitation(
guild
,size
,last
?):Promise
<ListGuildInvitationResult
>
分页列出服务器邀请信息。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
size | number | 获取数量 |
last ? | bigint | 上一页 ID |
Returns
Promise
<ListGuildInvitationResult
>
当前页的服务器邀请信息列表
Defined in
listGuildMember()
listGuildMember(
guild
,channel
,ranges
,user
?):Promise
<GetGuildMembersResult
>
分页获取服务器成员列表。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
channel | bigint | 频道 ID |
ranges | object [] | 分页 |
user ? | bigint | 用户 ID,必须在频道中,留空则自动获取 |
Returns
Promise
<GetGuildMembersResult
>
当前页的成员信息
Defined in
listGuildRole()
listGuildRole(
guild
,last
?):Promise
<GuildRole
[]>
列出服务器身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
last ? | bigint | 上一页的最后一个 ID,留空则为第一页 |
Returns
Promise
<GuildRole
[]>
服务器身份组列表
Defined in
listMyCommand()
listMyCommand():
Promise
<BotCommand
[]>
获取机器人自身的命令列表。
Returns
Promise
<BotCommand
[]>
命令列表
Defined in
listQuote()
listQuote():
Promise
<void
>
Returns
Promise
<void
>
Todo
Defined in
listRoleMember()
listRoleMember(
guild
,role
,size
,last
?):Promise
<GuideChatMember
[]>
分页获取身份组成员列表。
Parameters
Parameter | Type | Default value | Description |
---|---|---|---|
guild | bigint | undefined | 身份组所在服务器 ID |
role | bigint | undefined | 身份组 ID |
size | number | 50 | 分页大小,留空则为 50 |
last ? | bigint | undefined | 上一页的最后一个 ID |
Returns
Promise
<GuideChatMember
[]>
成员列表
Defined in
listen()
listen(
options
?):Promise
<Emitter
<ListenEvents
>>
订阅事件。
在返回值上调用 .emit('close')
可以取消订阅。
Parameters
Parameter | Type | Description |
---|---|---|
options ? | ListenOptions | 其他选项 |
Returns
Promise
<Emitter
<ListenEvents
>>
事件总线,mitt 实例
See
https://github.com/fanbook-open/websocket-doc/blob/main/README.md
Defined in
pinMessage()
pinMessage(
chat
,message
):Promise
<void
>
设置精选消息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 消息所在聊天 |
message | bigint | 消息 ID |
Returns
Promise
<void
>
Permission
MANAGE_MESSAGES
Permission
ADMINISTRATOR
Defined in
removeChatMember()
removeChatMember(
user
,options
):Promise
<void
>
从服务器或聊天中移除成员。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 用户 ID |
options | KickChatMemberOptions | 其他数据 |
Returns
Promise
<void
>
Defined in
removeMemberRole()
removeMemberRole(
guild
,user
,roles
):Promise
<void
>
给服务器成员移除身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
user | bigint | 用户 ID |
roles | bigint [] | 移除的身份组 ID 列表 |
Returns
Promise
<void
>
Defined in
request()
request<
D
>(path
,data
?,options
?):Promise
<AxiosResponse
<D
,any
>>
向发送开放平台请求。
Type Parameters
Type Parameter |
---|
D |
Parameters
Parameter | Type | Description |
---|---|---|
path | string | 请求路径(不包括公共部分) |
data ? | D | 请求体 |
options ? | AxiosRequestConfig <any > | 其他 axios 配置 |
Returns
Promise
<AxiosResponse
<D
, any
>>
响应体
Defined in
searchMembersByName()
searchMembersByName(
guild
,name
):Promise
<GuideChatMember
[]>
通过昵称模糊查询服务器成员。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
name | string | 查询的昵称 |
Returns
Promise
<GuideChatMember
[]>
查询到的服务器成员列表
Defined in
sendMessage()
sendMessage(
chat
,content
,description
,options
?):Promise
<Message
>
发送消息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 发送到的聊天 ID |
content | string | 消息内容(1 ~150000 字节) |
description | string | 消息描述,作为只能显示纯文本时的降级方案 |
options ? | SendMessageOptions | 其他选项 |
Returns
Promise
<Message
>
发送的消息对象
Permission
SEND_MESSAGES *
Permission
ADMINISTRATOR *
Defined in
sendNotication()
sendNotication(
user
,content
,type
,nonce
?):Promise
<void
>
发送通知。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 目标用户 |
content | string | 通知内容 |
type | 1 | 2 | 通知类型(1 :未完成的任务;2 :已完成的任务) |
nonce ? | string | 雪花 ID,留空则自动生成 |
Returns
Promise
<void
>
Defined in
sendPhoto()
sendPhoto(
chat
,url
,options
?):Promise
<Message
>
发送图片消息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 发送到的聊天 ID |
url | string | 图片链接 |
options ? | SendPhotoOptions | 其他选项 |
Returns
Promise
<Message
>
发送的消息对象
Permission
SEND_MESSAGES
Permission
ADMINISTRATOR
Defined in
sendReaction()
sendReaction(
user
,chat
,message
,options
):Promise
<void
>
对消息表态。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 表态的用户 ID |
chat | bigint | 被表态的消息所在聊天 ID |
message | bigint | 被表态的消息 ID |
options | SendReactionOptions | 其他数据 |
Returns
Promise
<void
>
Permission
ADD_REACTIONS
Permission
ADMINISTRATOR
Defined in
setChat()
setChat(
chat
,options
?):Promise
<void
>
设置聊天信息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 聊天 ID |
options ? | SetChatOptions | 其他选项 |
Returns
Promise
<void
>
Defined in
setGuildRole()
setGuildRole(
guild
,role
,options
?):Promise
<void
>
设置服务器身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 服务器 ID |
role | bigint | 身份组 ID |
options ? | SetGuildRoleOptions | 其他选项 |
Returns
Promise
<void
>
Defined in
setGuildScopedName()
setGuildScopedName(
guild
,name
,id
?):Promise
<void
>
设置机器人在指定频道中的昵称。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 频道 ID |
name | string | 新的昵称 |
id ? | bigint | 机器人的 user id,留空则自动获取 |
Returns
Promise
<void
>
Defined in
setMemberRole()
setMemberRole(
guild
,user
,roles
):Promise
<void
>
覆盖服务器成员的身份组。
Parameters
Parameter | Type | Description |
---|---|---|
guild | bigint | 所在服务器 ID |
user | bigint | 用户 ID |
roles | bigint [] | 新的身份组 ID 列表 |
Returns
Promise
<void
>
Defined in
setUserCredit()
setUserCredit(
user
,credit
,options
):Promise
<string
>
设置服务器用户荣誉。
Parameters
Parameter | Type | Description |
---|---|---|
user | bigint | 用户 ID |
credit | GuildCredit | 荣誉数据 |
options | SetUserCreditOptions | 其他数据 |
Returns
Promise
<string
>
荣誉自定义 ID
Defined in
unpinMessage()
unpinMessage(
chat
,message
):Promise
<void
>
取消精选消息。
Parameters
Parameter | Type | Description |
---|---|---|
chat | bigint | 消息所在聊天 ID |
message | bigint | 消息 ID |
Returns
Promise
<void
>
Permission
MANAGE_MESSAGES
Permission
ADMINISTRATOR