diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index f32a481d..da72ca0c 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -120,6 +120,10 @@ module.exports = context => ({ title: "nonebot.exception 模块", path: "exception" }, + { + title: "nonebot.adapters 模块", + path: "adapters/" + }, { title: "nonebot.adapters.cqhttp 模块", path: "adapters/cqhttp" diff --git a/docs/api/adapters/README.md b/docs/api/adapters/README.md new file mode 100644 index 00000000..b6529990 --- /dev/null +++ b/docs/api/adapters/README.md @@ -0,0 +1,41 @@ +--- +contentSidebar: true +sidebarDepth: 0 +--- + +# NoneBot.adapters 模块 + + +## _class_ `BaseBot` + +基类:`abc.ABC` + + +## _class_ `BaseEvent` + +基类:`abc.ABC` + + +### `_raw_event` + +原始 event + + +## _class_ `BaseMessageSegment` + +基类:`abc.ABC` + + +## _class_ `BaseMessage` + +基类:`list`, `abc.ABC` + + +### `append(obj)` + +Append object to the end of the list. + + +### `extend(obj)` + +Extend list by appending elements from the iterable. diff --git a/docs/api/adapters/cqhttp.md b/docs/api/adapters/cqhttp.md index 51436b12..53fa04f9 100644 --- a/docs/api/adapters/cqhttp.md +++ b/docs/api/adapters/cqhttp.md @@ -158,9 +158,9 @@ sidebarDepth: 0 ## _class_ `Bot` -基类:`nonebot.adapters.BaseBot` +基类:[`nonebot.adapters.BaseBot`](#None) -CQHTTP 协议 Bot 适配 +CQHTTP 协议 Bot 适配。继承属性参考 [BaseBot](./#class-basebot) 。 ### _property_ `type` @@ -261,14 +261,151 @@ CQHTTP 协议 Bot 适配 ## _class_ `Event` -基类:`nonebot.adapters.BaseEvent` +基类:[`nonebot.adapters.BaseEvent`](#None) + +CQHTTP 协议 Event 适配。继承属性参考 [BaseEvent](./#class-baseevent) 。 + + +### _property_ `id` + + +* 类型: `Optional[int]` + + +* 说明: 事件/消息 ID + + +### _property_ `name` + + +* 类型: `str` + + +* 说明: 事件名称,由类型与 `.` 组合而成 + + +### _property_ `self_id` + + +* 类型: `str` + + +* 说明: 机器人自身 ID + + +### _property_ `time` + + +* 类型: `int` + + +* 说明: 事件发生时间 + + +### _property_ `type` + + +* 类型: `str` + + +* 说明: 事件类型 + + +### _property_ `detail_type` + + +* 类型: `str` + + +* 说明: 事件详细类型 + + +### _property_ `sub_type` + + +* 类型: `str` + + +* 说明: 事件类型 + + +### _property_ `user_id` + + +* 类型: `Optional[int]` + + +* 说明: 事件主体 ID + + +### _property_ `group_id` + + +* 类型: `Optional[int]` + + +* 说明: 事件主体群 ID + + +### _property_ `to_me` + + +* 类型: `Optional[bool]` + + +* 说明: 消息是否与机器人相关 + + +### _property_ `message` + + +* 类型: `Optional[Message]` + + +* 说明: 消息内容 + + +### _property_ `reply` + + +* 类型: `Optional[dict]` + + +* 说明: 回复消息详情 + + +### _property_ `raw_message` + + +* 类型: `Optional[str]` + + +* 说明: 原始消息 + + +### _property_ `plain_text` + + +* 类型: `Optional[str]` + + +* 说明: 纯文本消息内容 + + +### _property_ `sender` + + +* 类型: `Optional[dict]` + + +* 说明: 消息发送者信息 ## _class_ `MessageSegment` -基类:`nonebot.adapters.BaseMessageSegment` +基类:[`nonebot.adapters.BaseMessageSegment`](#None) ## _class_ `Message` -基类:`nonebot.adapters.BaseMessage` +基类:[`nonebot.adapters.BaseMessage`](#None) diff --git a/docs_build/adapters/README.rst b/docs_build/adapters/README.rst new file mode 100644 index 00000000..25dbf4e9 --- /dev/null +++ b/docs_build/adapters/README.rst @@ -0,0 +1,12 @@ +--- +contentSidebar: true +sidebarDepth: 0 +--- + +NoneBot.adapters 模块 +================= + +.. automodule:: nonebot.adapters + :members: + :private-members: + :show-inheritance: diff --git a/nonebot/adapters/__init__.py b/nonebot/adapters/__init__.py index a4d10c2d..fb1fdbec 100644 --- a/nonebot/adapters/__init__.py +++ b/nonebot/adapters/__init__.py @@ -52,6 +52,9 @@ class BaseEvent(abc.ABC): def __init__(self, raw_event: dict): self._raw_event = raw_event + """ + 原始 event + """ def __repr__(self) -> str: return f"" diff --git a/nonebot/adapters/cqhttp.py b/nonebot/adapters/cqhttp.py index 0f6d0973..96777759 100644 --- a/nonebot/adapters/cqhttp.py +++ b/nonebot/adapters/cqhttp.py @@ -256,7 +256,7 @@ class ResultStore: class Bot(BaseBot): """ - CQHTTP 协议 Bot 适配 + CQHTTP 协议 Bot 适配。继承属性参考 `BaseBot <./#class-basebot>`_ 。 """ def __init__(self, @@ -435,6 +435,9 @@ class Bot(BaseBot): class Event(BaseEvent): + """ + CQHTTP 协议 Event 适配。继承属性参考 `BaseEvent <./#class-baseevent>`_ 。 + """ def __init__(self, raw_event: dict): if "message" in raw_event: @@ -445,11 +448,19 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def id(self) -> Optional[int]: + """ + - 类型: ``Optional[int]`` + - 说明: 事件/消息 ID + """ return self._raw_event.get("message_id") or self._raw_event.get("flag") @property @overrides(BaseEvent) def name(self) -> str: + """ + - 类型: ``str`` + - 说明: 事件名称,由类型与 ``.`` 组合而成 + """ n = self.type + "." + self.detail_type if self.sub_type: n += "." + self.sub_type @@ -458,16 +469,28 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def self_id(self) -> str: + """ + - 类型: ``str`` + - 说明: 机器人自身 ID + """ return str(self._raw_event["self_id"]) @property @overrides(BaseEvent) def time(self) -> int: + """ + - 类型: ``int`` + - 说明: 事件发生时间 + """ return self._raw_event["time"] @property @overrides(BaseEvent) def type(self) -> str: + """ + - 类型: ``str`` + - 说明: 事件类型 + """ return self._raw_event["post_type"] @type.setter @@ -478,6 +501,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def detail_type(self) -> str: + """ + - 类型: ``str`` + - 说明: 事件详细类型 + """ return self._raw_event[f"{self.type}_type"] @detail_type.setter @@ -488,6 +515,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def sub_type(self) -> Optional[str]: + """ + - 类型: ``Optional[str]`` + - 说明: 事件子类型 + """ return self._raw_event.get("sub_type") @type.setter @@ -498,6 +529,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def user_id(self) -> Optional[int]: + """ + - 类型: ``Optional[int]`` + - 说明: 事件主体 ID + """ return self._raw_event.get("user_id") @user_id.setter @@ -508,6 +543,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def group_id(self) -> Optional[int]: + """ + - 类型: ``Optional[int]`` + - 说明: 事件主体群 ID + """ return self._raw_event.get("group_id") @group_id.setter @@ -518,6 +557,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def to_me(self) -> Optional[bool]: + """ + - 类型: ``Optional[bool]`` + - 说明: 消息是否与机器人相关 + """ return self._raw_event.get("to_me") @to_me.setter @@ -528,6 +571,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def message(self) -> Optional["Message"]: + """ + - 类型: ``Optional[Message]`` + - 说明: 消息内容 + """ return self._raw_event.get("message") @message.setter @@ -538,6 +585,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def reply(self) -> Optional[dict]: + """ + - 类型: ``Optional[dict]`` + - 说明: 回复消息详情 + """ return self._raw_event.get("reply") @reply.setter @@ -548,6 +599,10 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def raw_message(self) -> Optional[str]: + """ + - 类型: ``Optional[str]`` + - 说明: 原始消息 + """ return self._raw_event.get("raw_message") @raw_message.setter @@ -558,11 +613,19 @@ class Event(BaseEvent): @property @overrides(BaseEvent) def plain_text(self) -> Optional[str]: + """ + - 类型: ``Optional[str]`` + - 说明: 纯文本消息内容 + """ return self.message and self.message.extract_plain_text() @property @overrides(BaseEvent) def sender(self) -> Optional[dict]: + """ + - 类型: ``Optional[dict]`` + - 说明: 消息发送者信息 + """ return self._raw_event.get("sender") @sender.setter