v11.adapter

v11 适配器

class melobot.protocols.onebot.v11.Adapter[源代码]

基类:Adapter[EventFactory, OutputFactory, EchoFactory, Action, BaseIO, BaseIO]

when_validate_error(validate_type: Literal['event', 'echo']) Any], <class 'Exception'>), None]][源代码]
参数:

validate_type (Literal['event', 'echo'])

返回类型:

Callable[[AsyncCallable[(dict[str, typing_extensions.Any], <class 'Exception'>), None]], AsyncCallable[(dict[str, typing_extensions.Any], <class 'Exception'>), None]]

async call_output(action: Action) tuple[ActionHandle, ...][源代码]

输出行为的底层方法

参数:

action (Action) -- 行为对象

返回:

ActionHandle 元组

返回类型:

tuple[ActionHandle, ...]

with_echo(func: AsyncCallable[P, tuple[ActionHandle[EchoT | None], ...]]) AsyncCallable[P, tuple[ActionHandle[EchoT], ...]][源代码]
参数:

func (AsyncCallable[~P, tuple[ActionHandle[EchoT | None], ...]])

返回类型:

AsyncCallable[~P, tuple[ActionHandle[EchoT], ...]]

async send(msgs: str | Segment | Iterable[Segment] | dict | Iterable[dict]) tuple[ActionHandle[SendMsgEcho | None], ...][源代码]
参数:

msgs (str | Segment | Iterable[Segment] | dict | Iterable[dict])

返回类型:

tuple[ActionHandle[SendMsgEcho | None], ...]

async send_reply(msgs: str | Segment | Iterable[Segment] | dict | Iterable[dict]) tuple[ActionHandle[SendMsgEcho | None], ...][源代码]
参数:

msgs (str | Segment | Iterable[Segment] | dict | Iterable[dict])

返回类型:

tuple[ActionHandle[SendMsgEcho | None], ...]

async send_custom(msgs: str | Segment | Iterable[Segment] | dict | Iterable[dict], user_id: int | None = None, group_id: int | None = None) tuple[ActionHandle[SendMsgEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[SendMsgEcho | None], ...]

async send_forward(msgs: Iterable[NodeSegment]) tuple[ActionHandle[SendForwardMsgEcho | None], ...][源代码]
参数:

msgs (Iterable[NodeSegment])

返回类型:

tuple[ActionHandle[SendForwardMsgEcho | None], ...]

async send_forward_custom(msgs: Iterable[NodeSegment] | Iterable[dict], user_id: int | None = None, group_id: int | None = None) tuple[ActionHandle[SendForwardMsgEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[SendForwardMsgEcho | None], ...]

async delete_msg(msg_id: int) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:

msg_id (int)

返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async get_msg(msg_id: int) tuple[ActionHandle[GetMsgEcho | None], ...][源代码]
参数:

msg_id (int)

返回类型:

tuple[ActionHandle[GetMsgEcho | None], ...]

async get_forward_msg(forward_id: str) tuple[ActionHandle[GetForwardMsgEcho | None], ...][源代码]
参数:

forward_id (str)

返回类型:

tuple[ActionHandle[GetForwardMsgEcho | None], ...]

async send_like(user_id: int, times: int = 1) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_kick(group_id: int, user_id: int, later_reject: bool = False) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
  • group_id (int)

  • user_id (int)

  • later_reject (bool)

返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_ban(group_id: int, user_id: int, duration: int = 1800) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
  • group_id (int)

  • user_id (int)

  • duration (int)

返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_anonymous_ban(group_id: int, anonymous: AnonymousDict, anonymous_flag: str, duration: int = 1800) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_whole_ban(group_id: int, enable: bool = True) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_admin(group_id: int, enable: bool = True) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_anonymous(group_id: int, enable: bool = True) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_card(group_id: int, user_id: int, card: str = '') tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_name(group_id: int, name: str) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_leave(group_id: int, is_dismiss: bool = False) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_special_title(group_id: int, user_id: int, title: str = '', duration: int = -1) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_friend_add_request(add_flag: str, approve: bool = True, remark: str = '') tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async set_group_add_request(add_flag: str, add_type: Literal['add', 'invite'], approve: bool = True, reason: str = '') tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async get_login_info() tuple[ActionHandle[GetLoginInfoEcho], ...][源代码]
返回类型:

tuple[ActionHandle[GetLoginInfoEcho], ...]

async get_stranger_info(user_id: int, no_cache: bool = False) tuple[ActionHandle[GetStrangerInfoEcho], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[GetStrangerInfoEcho], ...]

async get_friend_list() tuple[ActionHandle[GetFriendListEcho], ...][源代码]
返回类型:

tuple[ActionHandle[GetFriendListEcho], ...]

async get_group_info(group_id: int, no_cache: bool = False) tuple[ActionHandle[GetGroupInfoEcho], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[GetGroupInfoEcho], ...]

async get_group_list() tuple[ActionHandle[GetGroupListEcho], ...][源代码]
返回类型:

tuple[ActionHandle[GetGroupListEcho], ...]

async get_group_member_info(group_id: int, user_id: int, no_cache: bool = False) tuple[ActionHandle[GetGroupMemberInfoEcho], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[GetGroupMemberInfoEcho], ...]

async get_group_member_list(group_id: int) tuple[ActionHandle[GetGroupMemberListEcho], ...][源代码]
参数:

group_id (int)

返回类型:

tuple[ActionHandle[GetGroupMemberListEcho], ...]

async get_group_honor_info(group_id: int, type: Literal['talkative', 'performer', 'legend', 'strong_newbie', 'emotion', 'all']) tuple[ActionHandle[GetGroupHonorInfoEcho], ...][源代码]
参数:
  • group_id (int)

  • type (Literal['talkative', 'performer', 'legend', 'strong_newbie', 'emotion', 'all'])

返回类型:

tuple[ActionHandle[GetGroupHonorInfoEcho], ...]

async get_cookies(domain: str = '') tuple[ActionHandle[GetCookiesEcho], ...][源代码]
参数:

domain (str)

返回类型:

tuple[ActionHandle[GetCookiesEcho], ...]

async get_csrf_token() tuple[ActionHandle[GetCsrfTokenEcho], ...][源代码]
返回类型:

tuple[ActionHandle[GetCsrfTokenEcho], ...]

async get_credentials(domain: str = '') tuple[ActionHandle[GetCredentialsEcho], ...][源代码]
参数:

domain (str)

返回类型:

tuple[ActionHandle[GetCredentialsEcho], ...]

async get_record(file: str, out_format: str) tuple[ActionHandle[GetRecordEcho], ...][源代码]
参数:
返回类型:

tuple[ActionHandle[GetRecordEcho], ...]

async get_image(file: str) tuple[ActionHandle[GetImageEcho], ...][源代码]
参数:

file (str)

返回类型:

tuple[ActionHandle[GetImageEcho], ...]

async can_send_image() tuple[ActionHandle[CanSendImageEcho], ...][源代码]
返回类型:

tuple[ActionHandle[CanSendImageEcho], ...]

async can_send_record() tuple[ActionHandle[CanSendRecordEcho], ...][源代码]
返回类型:

tuple[ActionHandle[CanSendRecordEcho], ...]

async get_status() tuple[ActionHandle[GetStatusEcho], ...][源代码]
返回类型:

tuple[ActionHandle[GetStatusEcho], ...]

async get_version_info() tuple[ActionHandle[GetVersionInfoEcho], ...][源代码]
返回类型:

tuple[ActionHandle[GetVersionInfoEcho], ...]

async set_restart(delay: int = 0) tuple[ActionHandle[EmptyEcho | None], ...][源代码]
参数:

delay (int)

返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

async clean_cache() tuple[ActionHandle[EmptyEcho | None], ...][源代码]
返回类型:

tuple[ActionHandle[EmptyEcho | None], ...]

class melobot.protocols.onebot.v11.EchoRequireCtx[源代码]

基类:Context[bool]

v11 事件

class melobot.protocols.onebot.v11.adapter.event.Event[源代码]

基类:Event

time: int

时间戳

self_id: int

机器人自己的 qq 号

post_type: Literal['message', 'notice', 'request', 'meta_event'] | str

事件类型

raw: dict[str, Any]

事件原始数据

is_message() bool[源代码]
返回类型:

bool

is_notice() bool[源代码]
返回类型:

bool

is_request() bool[源代码]
返回类型:

bool

is_meta() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.MessageEvent[源代码]

基类:Event

sender: _MessageSender | _GroupMessageSender

消息发送者

message: list[Segment]

消息内容(消息段表示)

contents: Sequence[Content]

消息内容(通用内容表示)

message_type: Literal['private', 'group'] | str

消息类型

sub_type: Literal['friend', 'group', 'other', 'normal', 'anonymous', 'notice', 'group_self'] | str

消息子类型

message_id: int

消息 id

user_id: int

消息发送者 ID

raw_message: str

消息内容(cq 字符串表示)

font: int

消息字体

property text: str
property textlines: str
get_segments(type: type[Segment] | str) list[Segment][源代码]
参数:

type (type[Segment] | str)

返回类型:

list[Segment]

get_datas(type: type[Segment] | str, name: str) list[Any][源代码]
参数:
返回类型:

list[Any]

is_private() bool[源代码]

是否为私聊消息(注意群临时会话属于该类别)

返回类型:

bool

is_friend() bool[源代码]

是否为好友消息

返回类型:

bool

is_group_temp() bool[源代码]

是否为群临时会话(属于私聊的一种)

返回类型:

bool

is_private_other() bool[源代码]

是否为其他私聊类型消息

返回类型:

bool

is_private_temp() bool[源代码]

是否为临时会话(属于私聊的一种)

返回类型:

bool

is_group() bool[源代码]

是否为群消息(正常群消息、群匿名消息、群自身消息、群系统消息属于该类型)

返回类型:

bool

is_group_normal() bool[源代码]

是否为正常群消息

返回类型:

bool

is_group_self() bool[源代码]

是否为群自身消息(即 bot 自己群中发的消息)

返回类型:

bool

is_group_anonymous() bool[源代码]

是否为匿名群消息

返回类型:

bool

is_group_notice() bool[源代码]

是否为群中的"系统消息"

返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event._MessageSender[源代码]

基类:object

user_id: int | None

发送者 ID

nickname: str | None

发送者昵称

sex: Literal['male', 'female', 'unknown'] | None

发送者性别

age: int | None

发送者年龄

is_group_owner() bool[源代码]

判断是否为群主,若不是或不是群类型消息,返回 False

返回类型:

bool

is_group_admin() bool[源代码]

判断是否为群管理(包含群主),若不是或不是群类型消息,返回 False

返回类型:

bool

is_group_member_only() bool[源代码]

判断是否只是群员(注意只是群员,不包括群主、管理和匿名),若不是或不是群类型消息,返回 False

返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event._GroupMessageSender[源代码]

基类:_MessageSender

card: str | None

发送者头衔

area: str | None

发送者地区

level: str | None

发送者等级

role: Literal['owner', 'admin', 'member'] | None

发送者角色

title: str | None

发送者群昵称

class melobot.protocols.onebot.v11.adapter.event._MessageAnonymous[源代码]

基类:object

id: int

匿名信息的 id

name: str

匿名信息的 name

flag: str

匿名信息的 flag

class melobot.protocols.onebot.v11.adapter.event.PrivateMessageEvent[源代码]

基类:MessageEvent

sender: _MessageSender

消息发送者

message_type: Literal['private']

消息类型

class melobot.protocols.onebot.v11.adapter.event.GroupMessageEvent[源代码]

基类:MessageEvent

sender: _GroupMessageSender

消息发送者

anonymous: _MessageAnonymous | None

消息匿名信息段

group_id: int

消息来源群号

message_type: Literal['group']

消息类型

sub_type: Literal['normal', 'anonymous', 'notice', 'group_self']

消息子类型

class melobot.protocols.onebot.v11.adapter.event.MetaEvent[源代码]

基类:Event

meta_event_type: Literal['lifecycle', 'heartbeat'] | str

元事件类型

is_lifecycle() bool[源代码]
返回类型:

bool

is_heartbeat() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.LifeCycleMetaEvent[源代码]

基类:MetaEvent

meta_event_type: Literal['lifecycle']

元事件类型

sub_type: Literal['enable', 'disable', 'connect'] | str

元事件子类型

is_enable() bool[源代码]
返回类型:

bool

is_disable() bool[源代码]
返回类型:

bool

is_connect() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.HeartBeatMetaEvent[源代码]

基类:MetaEvent

meta_event_type: Literal['heartbeat']

元事件类型

status: _MetaHeartBeatStatus

心跳元事件状态

interval: int

心跳间隔

class melobot.protocols.onebot.v11.adapter.event._MetaHeartBeatStatus[源代码]

基类:object

online: bool | None

心跳元事件在线状态

good: bool

心跳元事件健康状态

raw: dict[str, Any]

心跳元事件原始内容

class melobot.protocols.onebot.v11.adapter.event.NoticeEvent[源代码]

基类:Event

notice_type: Literal['group_upload', 'group_admin', 'group_decrease', 'group_increase', 'group_ban', 'friend_add', 'group_recall', 'friend_recall', 'notify'] | str

通知事件类型

is_group_upload() bool[源代码]

是否是群文件上传通知事件

返回类型:

bool

is_group_admin() bool[源代码]

是否是群管理员变动通知事件

返回类型:

bool

is_group_decrease() bool[源代码]

是否是群成员减少通知事件

返回类型:

bool

is_group_increase() bool[源代码]

是否是群成员增加通知事件

返回类型:

bool

is_group_ban() bool[源代码]

是否是群禁言通知事件

返回类型:

bool

is_friend_add() bool[源代码]

是否是好友添加事件

返回类型:

bool

is_group_recall() bool[源代码]

是否是群消息撤回事件

返回类型:

bool

is_friend_recall() bool[源代码]

是否是私聊消息撤回事件

返回类型:

bool

is_notify() bool[源代码]

是否是 notify 类型通知事件

返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.GroupUploadNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['group_upload']

通知事件类型

group_id: int

群号

user_id: int

事件主体人 qq 号

file: _GroupUploadFile

文件描述对象

class melobot.protocols.onebot.v11.adapter.event._GroupUploadFile[源代码]

基类:object

id: str

群文件 id

name: str

群文件名称

size: int

群文件大小

busid: int

群文件 busid

class melobot.protocols.onebot.v11.adapter.event.GroupAdminNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['group_admin']

通知事件类型

sub_type: Literal['set', 'unset']

子类型

group_id: int

群号

user_id: int

事件主体人 qq 号

is_set() bool[源代码]
返回类型:

bool

is_unset() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.GroupDecreaseNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['group_decrease']

通知事件类型

sub_type: Literal['kick', 'leave', 'kick_me']

子类型

group_id: int

群号

operator_id: int

操作者 qq 号

user_id: int

事件主体人 qq 号

is_kick() bool[源代码]
返回类型:

bool

is_kick_me() bool[源代码]
返回类型:

bool

is_leave() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.GroupIncreaseNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['group_increase']

通知事件类型

sub_type: Literal['invite', 'approve']

子类型

group_id: int

群号

operator_id: int

操作者 qq 号

user_id: int

事件主体人 qq 号

is_invite() bool[源代码]
返回类型:

bool

is_approve() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.GroupBanNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['group_ban']

通知事件类型

sub_type: Literal['ban', 'lift_ban']

子类型

group_id: int

群号

operator_id: int

操作者 qq 号

user_id: int

事件主体人 qq 号

duration: int

禁言间隔

is_ban() bool[源代码]
返回类型:

bool

is_lift_ban() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.FriendAddNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['friend_add']

通知事件类型

user_id: int

事件主体人 qq 号

class melobot.protocols.onebot.v11.adapter.event.GroupRecallNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['group_recall']

通知事件类型

group_id: int

群号

user_id: int

事件主体人 qq 号

operator_id: int

操作者 qq 号

message_id: int

被撤回的消息 id

class melobot.protocols.onebot.v11.adapter.event.FriendRecallNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['friend_recall']

通知事件类型

user_id: int

事件主体人 qq 号

message_id: int

被撤回的消息 id

class melobot.protocols.onebot.v11.adapter.event.NotifyNoticeEvent[源代码]

基类:NoticeEvent

notice_type: Literal['notify']

通知事件类型

sub_type: Literal['poke', 'lucky_king', 'honor'] | str

子类型

is_poke() bool[源代码]
返回类型:

bool

is_lucky_king() bool[源代码]
返回类型:

bool

is_honor() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.PokeNotifyEvent[源代码]

基类:NotifyNoticeEvent

sub_type: Literal['poke']

子类型

group_id: int | None

群号

user_id: int

事件发起者 qq 号

target_id: int

事件作用者 qq 号

class melobot.protocols.onebot.v11.adapter.event.LuckyKingNotifyEvent[源代码]

基类:NotifyNoticeEvent

sub_type: Literal['lucky_king']

子类型

group_id: int

群号

user_id: int

红包发送者 qq 号

target_id: int

运气王 qq 号

class melobot.protocols.onebot.v11.adapter.event.HonorNotifyEvent[源代码]

基类:NotifyNoticeEvent

sub_type: Literal['honor']

子类型

group_id: int

群号

honor_type: Literal['talkative', 'performer', 'emotion']

群荣誉类型

user_id: int

事件主体人 qq 号

is_talkative() bool[源代码]
返回类型:

bool

is_performer() bool[源代码]
返回类型:

bool

is_emotion() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.RequestEvent[源代码]

基类:Event

request_type: Literal['friend', 'group'] | str

请求事件类型

is_friend() bool[源代码]
返回类型:

bool

is_group() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.event.FriendRequestEvent[源代码]

基类:RequestEvent

request_type: Literal['friend']

请求事件类型

user_id: int

请求人 qq 号

comment: str

加好友备注

flag: str

请求 flag,在调用处理请求的 API 时需要传入

class melobot.protocols.onebot.v11.adapter.event.GroupRequestEvent[源代码]

基类:RequestEvent

request_type: Literal['group']

请求事件类型

sub_type: str

子类型

group_id: int

群号

user_id: int

请求人 qq 号

comment: str

加群备注

flag: str

请求 flag,在调用处理请求的 API 时需要传入

is_add() bool[源代码]
返回类型:

bool

is_invite() bool[源代码]
返回类型:

bool

v11 消息段

各种消息段类型的 typedata 参数内容遵循 OneBot v11 原始文档规范,请自行查阅其文档。

# 例子:
seg: TextSegment = event.get_segments('text')
assert seg.type == 'text'
# 建议始终使用下标访问,而不是 get
# 使用下标,类型提示将会完美工作
assert seg.data['text'] == '<whatever>'
class melobot.protocols.onebot.v11.adapter.segment.Segment[源代码]

基类:Generic[SegTypeT, SegDataT]

__init__(seg_type: SegTypeT, **seg_data: Any) None[源代码]
参数:
  • seg_type (SegTypeT)

  • seg_data (Any)

返回类型:

None

classmethod add_type(seg_type_hint: type[TypeT], seg_data_hint: type[DataT]) type[_CustomSegInterface[TypeT, DataT]][源代码]
参数:
  • seg_type_hint (type[TypeT])

  • seg_data_hint (type[DataT])

返回类型:

type[_CustomSegInterface[TypeT, DataT]]

property type: SegTypeT
property data: SegDataT
classmethod resolve(seg_type: Any, seg_data: Any) Segment[源代码]
参数:
  • seg_type (Any)

  • seg_data (Any)

返回类型:

Segment

to_cq() str[源代码]
返回类型:

str

to_dict(force_str: bool = False) dict[str, Any][源代码]
参数:

force_str (bool)

返回类型:

dict[str, Any]

to_json(force_str: bool = False) str[源代码]
参数:

force_str (bool)

返回类型:

str

class melobot.protocols.onebot.v11.adapter.segment.TextSegment[源代码]

基类:Segment[Literal['text'], _TextData]

__init__(text: str, **kwargs: Any) None[源代码]
参数:
  • text (str)

  • kwargs (Any)

返回类型:

None

to_cq(escape: bool = False) str[源代码]
参数:

escape (bool)

返回类型:

str

class melobot.protocols.onebot.v11.adapter.segment.FaceSegment[源代码]

基类:Segment[Literal['face'], _FaceData]

__init__(id: int, **kwargs: Any) None[源代码]
参数:
  • id (int)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ImageSegment[源代码]

基类:Segment[Literal['image'], _ImageSendData | _ImageRecvData]

__init__(**kv_pairs: Any) None[源代码]
参数:

kv_pairs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ImageSendSegment[源代码]

基类:ImageSegment

__init__(*, file: str | Annotated[AnyUrl, UrlConstraints(max_length=None, allowed_schemes=['http', 'https', 'file', 'base64'], host_required=None, default_host=None, default_port=None, default_path=None)], type: Literal['flash'] | None = None, cache: Literal[0, 1] | None = None, proxy: Literal[0, 1] | None = None, timeout: int | None = None, **kwargs: Any) None[源代码]
参数:
  • file (str | Annotated[AnyUrl, UrlConstraints(max_length=None, allowed_schemes=['http', 'https', 'file', 'base64'], host_required=None, default_host=None, default_port=None, default_path=None)])

  • type (Literal['flash'] | None)

  • cache (Literal[0, 1] | None)

  • proxy (Literal[0, 1] | None)

  • timeout (int | None)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ImageRecvSegment[源代码]

基类:ImageSegment

class melobot.protocols.onebot.v11.adapter.segment.RecordSegment[源代码]

基类:Segment[Literal['record'], _RecordSendData | _RecordRecvData]

__init__(**kv_pairs: Any) None[源代码]
参数:

kv_pairs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.RecordSendSegment[源代码]

基类:RecordSegment

__init__(*, file: str | Annotated[AnyUrl, UrlConstraints(max_length=None, allowed_schemes=['http', 'https', 'file', 'base64'], host_required=None, default_host=None, default_port=None, default_path=None)], magic: Literal[0, 1] | None = None, cache: Literal[0, 1] | None = None, proxy: Literal[0, 1] | None = None, timeout: int | None = None, **kwargs: Any) None[源代码]
参数:
  • file (str | Annotated[AnyUrl, UrlConstraints(max_length=None, allowed_schemes=['http', 'https', 'file', 'base64'], host_required=None, default_host=None, default_port=None, default_path=None)])

  • magic (Literal[0, 1] | None)

  • cache (Literal[0, 1] | None)

  • proxy (Literal[0, 1] | None)

  • timeout (int | None)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.RecordRecvSegment[源代码]

基类:RecordSegment

class melobot.protocols.onebot.v11.adapter.segment.VideoSegment[源代码]

基类:Segment[Literal['video'], _VideoSendData | _VideoRecvData]

__init__(**kv_pairs: Any) None[源代码]
参数:

kv_pairs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.VideoSendSegment[源代码]

基类:VideoSegment

__init__(*, file: str | Annotated[AnyUrl, UrlConstraints(max_length=None, allowed_schemes=['http', 'https', 'file', 'base64'], host_required=None, default_host=None, default_port=None, default_path=None)], cache: Literal[0, 1] | None = None, proxy: Literal[0, 1] | None = None, timeout: int | None = None, **kwargs: Any) None[源代码]
参数:
  • file (str | Annotated[AnyUrl, UrlConstraints(max_length=None, allowed_schemes=['http', 'https', 'file', 'base64'], host_required=None, default_host=None, default_port=None, default_path=None)])

  • cache (Literal[0, 1] | None)

  • proxy (Literal[0, 1] | None)

  • timeout (int | None)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.VideoRecvSegment[源代码]

基类:VideoSegment

class melobot.protocols.onebot.v11.adapter.segment.AtSegment[源代码]

基类:Segment[Literal['at'], _AtData]

__init__(qq: int | Literal['all'], **kwargs: Any) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.RpsSegment[源代码]

基类:Segment[Literal['rps'], _RpsData]

__init__(**kwargs: Any) None[源代码]
参数:

kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.DiceSegment[源代码]

基类:Segment[Literal['dice'], _DictData]

__init__(**kwargs: Any) None[源代码]
参数:

kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ShakeSegment[源代码]

基类:Segment[Literal['shake'], _ShakeData]

__init__(**kwargs: Any) None[源代码]
参数:

kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.PokeSegment[源代码]

基类:Segment[Literal['poke'], _PokeSendData | _PokeRecvData]

__init__(**kv_pairs: Any) None[源代码]
参数:

kv_pairs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.PokeSendSegment[源代码]

基类:PokeSegment

__init__(type: str, id: int, **kwargs: Any) None[源代码]
参数:
  • type (str)

  • id (int)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.PokeRecvSegment[源代码]

基类:PokeSegment

class melobot.protocols.onebot.v11.adapter.segment.AnonymousSegment[源代码]

基类:Segment[Literal['anonymous'], _AnonymousData]

__init__(ignore: Literal[0, 1] | None = None, **kwargs: Any) None[源代码]
参数:
  • ignore (Literal[0, 1] | None)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ShareSegment[源代码]

基类:Segment[Literal['share'], _ShareData]

__init__(url: AnyUrl, title: str, content: str | None = None, image: AnyHttpUrl | None = None, **kwargs: Any) None[源代码]
参数:
  • url (AnyUrl)

  • title (str)

  • content (str | None)

  • image (AnyHttpUrl | None)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ContactSegment[源代码]

基类:Segment[Literal['contact'], _ContactFriendData | _ContactGroupData]

__init__(type: Literal['qq', 'group'], id: int, **kwargs: Any) None[源代码]
参数:
  • type (Literal['qq', 'group'])

  • id (int)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ContactFriendSegment[源代码]

基类:ContactSegment

__init__(id: int, **kwargs: Any) None[源代码]
参数:
  • id (int)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ContactGroupSegment[源代码]

基类:ContactSegment

__init__(id: int, **kwargs: Any) None[源代码]
参数:
  • id (int)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.LocationSegment[源代码]

基类:Segment[Literal['location'], _LocationData]

__init__(lat: float, lon: float, title: str | None = None, content: str | None = None, **kwargs: Any) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.MusicSegment[源代码]

基类:Segment[Literal['music'], _MusicData | _MusicCustomData]

__init__(**kv_pairs: Any) None[源代码]
参数:

kv_pairs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.MusicPlatformSegment[源代码]

基类:MusicSegment

__init__(*, type: Literal['qq', '163', 'xm'], id: str, **kwargs: Any) None[源代码]
参数:
  • type (Literal['qq', '163', 'xm'])

  • id (str)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.MusicCustomSegment[源代码]

基类:MusicSegment

__init__(*, type: Literal['custom'], url: AnyHttpUrl, audio: AnyHttpUrl, title: str, content: str | None = None, image: AnyHttpUrl | None = None, **kwargs: Any) None[源代码]
参数:
  • type (Literal['custom'])

  • url (AnyHttpUrl)

  • audio (AnyHttpUrl)

  • title (str)

  • content (str | None)

  • image (AnyHttpUrl | None)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ReplySegment[源代码]

基类:Segment[Literal['reply'], _ReplyData]

__init__(id: str, **kwargs: Any) None[源代码]
参数:
  • id (str)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.ForwardSegment[源代码]

基类:Segment[Literal['forward'], _ForwardData]

__init__(id: str, **kwargs: Any) None[源代码]
参数:
  • id (str)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.NodeSegment[源代码]

基类:Segment[Literal['node'], _NodeReferData | _NodeStdCustomDataInterface | _NodeGocqCustomDataInterface]

__init__(**kv_pairs: Any) None[源代码]
参数:

kv_pairs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.NodeReferSegment[源代码]

基类:NodeSegment

__init__(id: str, **kwargs: Any) None[源代码]
参数:
  • id (str)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.NodeStdCustomSegment[源代码]

基类:NodeSegment

__init__(user_id: int, nickname: str, content: list[Segment], **kwargs: Any) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.NodeGocqCustomSegment[源代码]

基类:NodeSegment

__init__(uin: int, name: str, content: list[Segment], **kwargs: Any) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.XmlSegment[源代码]

基类:Segment[Literal['xml'], _XmlData]

__init__(data: str, **kwargs: Any) None[源代码]
参数:
  • data (str)

  • kwargs (Any)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.segment.JsonSegment[源代码]

基类:Segment[Literal['json'], _JsonData]

__init__(data: str, **kwargs: Any) None[源代码]
参数:
  • data (str)

  • kwargs (Any)

返回类型:

None

v11 行为(动作)

一般来说,无需手动通过这些原始的行为类构建行为,直接调用 Adapter 的输出方法即可。

但仍然提供这些接口用于高级操作。

class melobot.protocols.onebot.v11.adapter.action.Action[源代码]

基类:Action

__init__(type: str, params: dict[str, Any]) None[源代码]
参数:
返回类型:

None

set_echo(status: bool) None[源代码]
参数:

status (bool)

返回类型:

None

extract() dict[str, Any][源代码]
返回类型:

dict[str, Any]

flatten() str[源代码]
返回类型:

str

class melobot.protocols.onebot.v11.adapter.action.SendMsgAction[源代码]

基类:Action

__init__(msgs: str | Segment | Iterable[Segment] | dict | Iterable[dict], user_id: int | None = None, group_id: int | None = None) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SendForwardMsgAction[源代码]

基类:Action

__init__(msgs: Iterable[NodeSegment] | Iterable[dict], user_id: int | None = None, group_id: int | None = None) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.DeleteMsgAction[源代码]

基类:Action

__init__(msg_id: int) None[源代码]
参数:

msg_id (int)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetMsgAction[源代码]

基类:Action

__init__(msg_id: int) None[源代码]
参数:

msg_id (int)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetForwardMsgAction[源代码]

基类:Action

__init__(forward_id: str) None[源代码]
参数:

forward_id (str)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SendLikeAction[源代码]

基类:Action

__init__(user_id: int, times: int = 1) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupKickAction[源代码]

基类:Action

__init__(group_id: int, user_id: int, later_reject: bool = False) None[源代码]
参数:
  • group_id (int)

  • user_id (int)

  • later_reject (bool)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupBanAction[源代码]

基类:Action

__init__(group_id: int, user_id: int, duration: int = 1800) None[源代码]
参数:
  • group_id (int)

  • user_id (int)

  • duration (int)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupAnonymousBanAction[源代码]

基类:Action

class AnonymousDict[源代码]

基类:TypedDict

id: int
name: str
flag: str
__init__(group_id: int, anonymous: AnonymousDict, anonymous_flag: str, duration: int = 1800) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupWholeBanAction[源代码]

基类:Action

__init__(group_id: int, enable: bool = True) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupAdminAction[源代码]

基类:Action

__init__(group_id: int, user_id: int, enable: bool = True) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupAnonymousAction[源代码]

基类:Action

__init__(group_id: int, enable: bool = True) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupCardAction[源代码]

基类:Action

__init__(group_id: int, user_id: int, card: str = '') None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupNameAction[源代码]

基类:Action

__init__(group_id: int, name: str) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupLeaveAction[源代码]

基类:Action

__init__(group_id: int, is_dismiss: bool = False) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupSpecialTitleAction[源代码]

基类:Action

__init__(group_id: int, user_id: int, title: str = '', duration: int = -1) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetFriendAddRequestAction[源代码]

基类:Action

__init__(add_flag: str, approve: bool = True, remark: str = '') None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetGroupAddRequestAction[源代码]

基类:Action

__init__(add_flag: str, add_type: Literal['add', 'invite'], approve: bool = True, reason: str = '') None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetLoginInfoAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetStrangerInfoAction[源代码]

基类:Action

__init__(user_id: int, no_cache: bool = False) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetFriendlistAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetGroupInfoAction[源代码]

基类:Action

__init__(group_id: int, no_cache: bool = False) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetGrouplistAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetGroupMemberInfoAction[源代码]

基类:Action

__init__(group_id: int, user_id: int, no_cache: bool = False) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetGroupMemberlistAction[源代码]

基类:Action

__init__(group_id: int) None[源代码]
参数:

group_id (int)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetGroupHonorInfoAction[源代码]

基类:Action

__init__(group_id: int, type: Literal['talkative', 'performer', 'legend', 'strong_newbie', 'emotion', 'all']) None[源代码]
参数:
  • group_id (int)

  • type (Literal['talkative', 'performer', 'legend', 'strong_newbie', 'emotion', 'all'])

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetCookiesAction[源代码]

基类:Action

__init__(domain: str = '') None[源代码]
参数:

domain (str)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetCsrfTokenAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetCredentialsAction[源代码]

基类:Action

__init__(domain: str = '') None[源代码]
参数:

domain (str)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetRecordAction[源代码]

基类:Action

__init__(file: str, out_format: str) None[源代码]
参数:
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetImageAction[源代码]

基类:Action

__init__(file: str) None[源代码]
参数:

file (str)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.CanSendImageAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.CanSendRecordAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetStatusAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.GetVersionInfoAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.SetRestartAction[源代码]

基类:Action

__init__(delay: int = 0) None[源代码]
参数:

delay (int)

返回类型:

None

class melobot.protocols.onebot.v11.adapter.action.CleanCacheAction[源代码]

基类:Action

__init__() None[源代码]
返回类型:

None

v11 回应

各种回应类型的 data 参数内容遵循 OneBot v11 原始文档规范,请自行查阅其文档。

# 使用回应的例子:
handles = await adapter.with_echo(adapter.send)("Hello Melobot!")
# 当需要频繁使用时:
block_send = adapter.with_echo(adapter.send)
handles1 = await block_send("Hello Melobot!")
handles2 = await block_send("Hello OneBot!")
# 当然,或者这样:
with EchoRequireCtx().unfold(True):
    handles1 = await adapter.send("Hello Melobot!")
    handles2 = await adapter.send_image(
        "test.jpg",
        url="https://glowmem.com/static/avatar.jpg"
    )

# 使用:
echo: SendMsgEcho = await handles[0]
# 建议始终使用下标访问,而不是 get
# 使用下标,类型提示将会完美工作
assert isinstance(echo.data['message_id'], int)
class melobot.protocols.onebot.v11.adapter.echo.Echo[源代码]

基类:Echo

is_ok() bool[源代码]
返回类型:

bool

is_async() bool[源代码]
返回类型:

bool

is_failed() bool[源代码]
返回类型:

bool

class melobot.protocols.onebot.v11.adapter.echo.EmptyEcho[源代码]

基类:Echo

data: None
class melobot.protocols.onebot.v11.adapter.echo.SendMsgEcho[源代码]

基类:Echo

data: _SendMsgEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.SendForwardMsgEcho[源代码]

基类:Echo

data: _SendForwardMsgEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetMsgEcho[源代码]

基类:Echo

data: _GetMsgEchoDataInterface | None
class melobot.protocols.onebot.v11.adapter.echo.GetForwardMsgEcho[源代码]

基类:Echo

data: _GetForwardMsgEchoDataInterface | None
class melobot.protocols.onebot.v11.adapter.echo.GetLoginInfoEcho[源代码]

基类:Echo

data: _GetLoginInfoEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetStrangerInfoEcho[源代码]

基类:Echo

data: _GetStrangerInfoEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetFriendListEcho[源代码]

基类:Echo

data: list[_GetFriendListEchoElem] | None
class melobot.protocols.onebot.v11.adapter.echo.GetGroupInfoEcho[源代码]

基类:Echo

data: _GetGroupInfoEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetGroupListEcho[源代码]

基类:Echo

data: list[_GetGroupInfoEchoData] | None
class melobot.protocols.onebot.v11.adapter.echo.GetGroupMemberInfoEcho[源代码]

基类:Echo

data: _GetGroupMemberInfoEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetGroupMemberListEcho[源代码]

基类:Echo

data: list[_GetGroupMemberInfoEchoData] | None
class melobot.protocols.onebot.v11.adapter.echo.GetGroupHonorInfoEcho[源代码]

基类:Echo

data: _GetGroupHonorInfoEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetCookiesEcho[源代码]

基类:Echo

data: _GetCookiesEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetCsrfTokenEcho[源代码]

基类:Echo

data: _GetCsrfTokenEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetCredentialsEcho[源代码]

基类:Echo

data: _GetCredentialsEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetRecordEcho[源代码]

基类:Echo

data: _GetRecordEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetImageEcho[源代码]

基类:Echo

data: _GetImageEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.CanSendImageEcho[源代码]

基类:Echo

data: _CanSendImageEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.CanSendRecordEcho[源代码]

基类:Echo

data: _CanSendRecordEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetStatusEcho[源代码]

基类:Echo

data: _GetStatusEchoData | None
class melobot.protocols.onebot.v11.adapter.echo.GetVersionInfoEcho[源代码]

基类:Echo

data: _GetVersionInfoEchoData | None