nonebot.adapters.onebot.v12.bot
OneBot v12 机器人定义。
class Event(<auto>)
参数
auto
class BotSelf(<auto>)
参数
auto
class BotStatus(<auto>)
参数
auto
class GetStatusResp(<auto>)
参数
auto
class GetVersionResp(<auto>)
参数
auto
class SendMessageResp(<auto>)
参数
auto
class GetSelfInfoResp(<auto>)
参数
auto
class GetUserInfoResp(<auto>)
参数
auto
class GetGroupInfoResp(<auto>)
参数
auto
class GetGroupMemberInfoResp(<auto>)
参数
auto
class GetGuildInfoResp(<auto>)
参数
auto
class GetGuildMemberInfoResp(<auto>)
参数
auto
class GetChannelInfoResp(<auto>)
参数
auto
class GetChannelMemberInfoResp(<auto>)
参数
auto
class UploadFileResp(<auto>)
参数
auto
class UploadFileFragmentedResp(<auto>)
参数
auto
class GetFileUrlResp(<auto>)
参数
auto
class GetFilePathResp(<auto>)
参数
auto
class GetFileDataResp(<auto>)
参数
auto
class GetFileFragmentedPrepareResp(<auto>)
参数
auto
class GetFileFragmentedTransferResp(<auto>)
参数
auto
async def send(bot, event, message, at_sender=..., reply_message=..., **kwargs)
说明: 默认回复消息处理函数。
参数
bot
(Bot)event
(EventModel)message
(str | Message | MessageSegment)at_sender
(bool)reply_message
(bool)**kwargs
(Any)
返回
- Any
class Bot(adapter, self_id, impl, platform, status=...)
参数
adapter
(Adapter)self_id
(str)impl
(str)platform
(str)status
(BotStatusModel | None)
async method call_api(api, **data)
说明: 调用 OneBot 协议 API。
参数
api
(str): API 名称**data
: API 参数
返回
- Any: API 调用返回数据
异常
nonebot.adapters.onebot.exception.NetworkError: 网络错误
nonebot.adapters.onebot.exception.ActionFailed: API 调用失败
async method handle_event(event)
说明: 处理收到的事件。
参数
event
(EventModel)
返回
- None
async method send(event, message, **kwargs)
说明: 根据
event
向触发事件的主体回复消息。参数
event
(EventModel): Event 对象message
(str | Message | MessageSegment): 要发送的消息at_sender
(bool): 是否 @ 事件主体reply_message
(bool): 是否回复事件消息**kwargs
(Any): 其他参数,可以与 Adapter.custom_send 配合使用
返回
- Any: API 调用返回数据
异常
ValueError: 缺少
user_id
,group_id
NetworkError: 网络错误
ActionFailed: API 调用失败
async method get_latest_events(*, limit=..., timeout=..., **kwargs)
说明: 获取最新事件列表
参数
limit
(int): 获取的事件数量上限,0 表示不限制timeout
(int): 没有事件时要等待的秒数,0 表示使用短轮询,不等待**kwargs
(Any): 扩展字段
返回
- list[Event]
async method get_supported_actions(**kwargs)
说明: 获取支持的动作列表
参数
**kwargs
(Any): 扩展字段
返回
- list[str]
async method get_status(**kwargs)
说明: 获取运行状态
参数
**kwargs
(Any): 扩展字段
返回
- GetStatusResp
async method get_version(**kwargs)
说明: 获取版本信息
参数
**kwargs
(Any): 扩展字段
返回
- GetVersionResp
async method send_message(*, detail_type, user_id=..., group_id=..., guild_id=..., channel_id=..., message, **kwargs)
说明: 发送消息
参数
detail_type
(Literal['private', 'group', 'channel'] | str): 发送的类型, 可以为 private、group 或扩展的类型,和消息事件的 detail_type 字段对应user_id
(str): 用户 ID,当 detail_type 为 private 时必须传入group_id
(str): 群 ID,当 detail_type 为 group 时必须传入guild_id
(str): Guild 群组 ID,当 detail_type 为 channel 时必须传入channel_id
(str): 频道 ID,当 detail_type 为 channel 时必须传入message
(Message): 消息内容**kwargs
(Any): 扩展字段
返回
- SendMessageResp
async method delete_message(*, message_id, **kwargs)
说明: 撤回消息
参数
message_id
(str): 唯一的消息 ID**kwargs
(Any)
返回
- None
async method get_self_info(**kwargs)
说明: 获取机器人自身信息
参数
**kwargs
(Any)
返回
- GetSelfInfoResp
async method get_user_info(*, user_id, **kwargs)
说明: 获取用户信息
参数
user_id
(str): 用户 ID,可以是好友,也可以是陌生人**kwargs
(Any): 扩展字段
返回
- GetUserInfoResp
async method get_friend_list(**kwargs)
说明: 获取好友列表
参数
**kwargs
(Any): 扩展字段
返回
- list[GetUserInfoResp]
async method get_group_info(*, group_id, **kwargs)
说明: 获取群信息
参数
group_id
(str): 群 ID**kwargs
(Any): 扩展字段
返回
- GetGroupInfoResp
async method get_group_list(**kwargs)
说明: 获取群列表
参数
**kwargs
(Any): 扩展字段
返回
- list[GetGroupInfoResp]
async method get_group_member_info(*, group_id, user_id, **kwargs)
说明: 获取群成员信息
参数
group_id
(str): 群 IDuser_id
(str): 用户 ID**kwargs
(Any): 扩展字段
返回
- GetGroupMemberInfoResp
async method get_group_member_list(*, group_id, **kwargs)
说明: 获取群成员列表
参数
group_id
(str): 群 ID**kwargs
(Any): 扩展字段
返回
- list[GetGroupMemberInfoResp]
async method set_group_name(*, group_id, group_name, **kwargs)
说明: 设置群名称
参数
group_id
(str): 群 IDgroup_name
(str): 群名称**kwargs
(Any): 扩展字段
返回
- None
async method leave_group(*, group_id, **kwargs)
说明: 退出群
参数
group_id
(str): 群 ID**kwargs
(Any): 扩展字段
返回
- None
async method get_guild_info(*, guild_id, **kwargs)
说明: 获取 Guild 信息
参数
guild_id
(str): 群组 ID**kwargs
(Any): 扩展字段
返回
- GetGuildInfoResp
async method get_guild_list(**kwargs)
说明: 获取群组列表
参数
**kwargs
(Any): 扩展字段
返回
- list[GetGuildInfoResp]
async method set_guild_name(*, guild_id, guild_name, **kwargs)
说明: 设置群组名称
参数
guild_id
(str): 群组 IDguild_name
(str): 群组名称**kwargs
(Any): 扩展字段
返回
- None
async method get_guild_member_info(*, guild_id, user_id, **kwargs)
说明: 获取群组成员信息
参数
guild_id
(str): 群组 IDuser_id
(str): 用户 ID**kwargs
(Any): 扩展字段
返回
- GetGuildMemberInfoResp
async method get_guild_member_list(*, guild_id, **kwargs)
说明: 获取群组成员列表
参数
guild_id
(str): 群组 ID**kwargs
(Any): 扩展字段
返回
- list[GetGuildMemberInfoResp]
async method leave_guild(*, guild_id, **kwargs)
说明: 退出群组
参数
guild_id
(str): 群组 ID**kwargs
(Any): 扩展字段
返回
- None
async method get_channel_info(*, guild_id, channel_id, **kwargs)
说明: 获取频道信息
参数
guild_id
(str): 群组 IDchannel_id
(str): 频道 ID**kwargs
(Any): 扩展字段
返回
- GetChannelInfoResp
async method get_channel_list(*, guild_id, joined_only=False, **kwargs)
说明: 获取频道列表
参数
guild_id
(str): 群组 IDjoined_only
(bool): 只获取机器人账号已加入的频道列表**kwargs
(Any): 扩展字段
返回
- list[GetChannelInfoResp]
async method set_channel_name(*, guild_id, channel_id, channel_name, **kwargs)
说明: 设置频道名称
参数
guild_id
(str): 群组 IDchannel_id
(str): 频道 IDchannel_name
(str): 新频道名称**kwargs
(Any): 扩展字段
返回
- None
async method get_channel_member_info(*, guild_id, channel_id, user_id, **kwargs)
说明: 获取频道成员信息
参数
guild_id
(str): 群组 IDchannel_id
(str): 频道 IDuser_id
(str): 用户 ID**kwargs
(Any): 扩展字段
返回
- GetChannelMemberInfoResp
async method get_channel_member_list(*, guild_id, channel_id, **kwargs)
说明: 获取频道成员列表
参数
guild_id
(str): 群组 IDchannel_id
(str): 频道 ID**kwargs
(Any): 扩展字段
返回
- list[GetChannelMemberInfoResp]
async method leave_channel(*, guild_id, channel_id, **kwargs)
说明: 退出频道
参数
guild_id
(str): 群组 IDchannel_id
(str): 频道 ID**kwargs
(Any): 扩展字段
返回
- None
async method upload_file(*, type, name, url=..., headers=..., path=..., data=..., sha256=..., **kwargs)
说明: 上传文件
参数
type
(Literal['url', 'path', 'data'] | str): 上传文件的方式,可以为 url、path、data 或扩展的方式name
(str): 文件名url
(str): 文件 URL,当 type 为 url 时必须传入headers
(dict[str, str]): 下载 URL 时需要添加的 HTTP 请求头,可选传入path
(str): 文件路径,当 type 为 path 时必须传入data
(bytes): 文件数据,当 type 为 data 时必须传入sha256
(str): 文件数据(原始二进制)的 SHA256 校验和,全小写,可选传入**kwargs
(Any): 扩展字段
返回
- UploadFileResp
method upload_file_fragmented(<auto>)
说明: Helper for @overload to raise when called.
重载
1.
(stage, name=..., total_size=..., **kwargs) -> UploadFileFragmentedResp
参数
stage
(Literal['prepare']): 上传阶段name
(str): 文件名total_size
(int): 文件完整大小**kwargs
(Any): 扩展字段
返回
- UploadFileFragmentedResp
2.
(stage, file_id=..., offset=..., data=..., **kwargs) -> None
参数
stage
(Literal['transfer']): 上传阶段file_id
(str): 准备阶段返回的文件 IDoffset
(int): 本次传输的文件偏移,单位:字节data
(bytes): 本次传输的文件数据**kwargs
(Any): 扩展字段
返回
- None
3.
(stage, file_id=..., sha256=..., **kwargs) -> UploadFileResp
参数
stage
(Literal['finish']): 上传阶段file_id
(str): 准备阶段返回的文件 IDsha256
(str): 整个文件的 SHA256 校验和,全小写**kwargs
(Any): 扩展字段
返回
- UploadFileResp
method get_file(<auto>)
说明: Helper for @overload to raise when called.
重载
1.
(*, type, file_id, **kwargs) -> GetFileUrlResp
参数
type
(Literal['url']): 获取文件的方式,可以为 url、path、data 或扩展的方式file_id
(str): 文件 ID**kwargs
(Any): 扩展字段
返回
- GetFileUrlResp
2.
(*, type, file_id, **kwargs) -> GetFilePathResp
参数
type
(Literal['path']): 获取文件的方式,可以为 url、path、data 或扩展的方式file_id
(str): 文件 ID**kwargs
(Any): 扩展字段
返回
- GetFilePathResp
3.
(*, type, file_id, **kwargs) -> GetFileDataResp
参数
type
(Literal['data']): 获取文件的方式,可以为 url、path、data 或扩展的方式file_id
(str): 文件 ID**kwargs
(Any): 扩展字段
返回
- GetFileDataResp
method get_file_fragmented(<auto>)
说明: Helper for @overload to raise when called.
重载
1.
(*, stage, file_id, **kwargs) -> GetFileFragmentedPrepareResp
参数
stage
(Literal['prepare']): 获取阶段file_id
(str): 文件 ID**kwargs
(Any): 扩展字段
返回
- GetFileFragmentedPrepareResp
2.
(*, stage, file_id, offset=..., size=...) -> GetFileFragmentedTransferResp
参数
stage
(Literal['transfer']): 获取阶段file_id
(str): 文件 IDoffset
(int): 本次获取的文件偏移,单位:字节size
(int): 本次获取的文件大小,单位:字节kwargs
: 扩展字段
返回
- GetFileFragmentedTransferResp