From 60ef01b66f5186c3145a04d9317ba79da2e2d56c Mon Sep 17 00:00:00 2001 From: nonebot Date: Wed, 17 Feb 2021 15:23:23 +0000 Subject: [PATCH] :memo: update api docs --- docs/api/adapters/README.md | 394 ++++++++++++++++-------------------- docs/api/nonebot.md | 62 +++--- 2 files changed, 207 insertions(+), 249 deletions(-) diff --git a/docs/api/adapters/README.md b/docs/api/adapters/README.md index 42498ab2..ee6edaa1 100644 --- a/docs/api/adapters/README.md +++ b/docs/api/adapters/README.md @@ -17,16 +17,6 @@ sidebarDepth: 0 Bot 基类。用于处理上报消息,并提供 API 调用接口。 -### `driver` - -Driver 对象 - - -### `config` - -Config 配置对象 - - ### _abstract_ `__init__(connection_type, self_id, *, websocket=None)` @@ -43,35 +33,34 @@ Config 配置对象 -### `connection_type` - -连接类型 - - -### `self_id` - -机器人 ID - - -### `websocket` - -Websocket 连接对象 - - -### _abstract property_ `type` - -Adapter 类型 - - -### _classmethod_ `register(driver, config)` +### _abstract async_ `call_api(api, **data)` * **说明** - register 方法会在 driver.register_adapter 时被调用,用于初始化相关配置 + 调用机器人 API 接口,可以通过该函数或直接通过 bot 属性进行调用 +* **参数** + + + * `api: str`: API 名称 + + + * `**data`: API 数据 + + + +* **示例** + + +```python +await bot.call_api("send_msg", message="hello world") +await bot.send_msg(message="hello world") +``` + + ### _abstract async classmethod_ `check_permission(driver, connection_type, headers, body)` @@ -127,34 +116,15 @@ Adapter 类型 -### _abstract async_ `call_api(api, **data)` +### _classmethod_ `register(driver, config)` * **说明** - 调用机器人 API 接口,可以通过该函数或直接通过 bot 属性进行调用 + register 方法会在 driver.register_adapter 时被调用,用于初始化相关配置 -* **参数** - - - * `api: str`: API 名称 - - - * `**data`: API 数据 - - - -* **示例** - - -```python -await bot.call_api("send_msg", message="hello world") -await bot.send_msg(message="hello world") -``` - - ### _abstract async_ `send(event, message, **kwargs)` @@ -177,29 +147,167 @@ await bot.send_msg(message="hello world") -## _class_ `MessageSegment` +### _abstract property_ `type` -基类:`abc.ABC` - -消息段基类 +Adapter 类型 -### `type` +## _class_ `Event` + +基类:`abc.ABC`, `pydantic.main.BaseModel` + +Event 基类。提供获取关键信息的方法,其余信息可直接获取。 -* 类型: `str` +### _abstract_ `get_event_description()` -* 说明: 消息段类型 +* **说明** + + 获取事件描述的方法,通常为事件具体内容。 -### `data` + +* **返回** + + + * `str` -* 类型: `Dict[str, Union[str, list]]` + +### _abstract_ `get_event_name()` -* 说明: 消息段数据 +* **说明** + + 获取事件名称的方法。 + + + +* **返回** + + + * `str` + + + +### `get_log_string()` + + +* **说明** + + 获取事件日志信息的方法,通常你不需要修改这个方法,只有当希望 NoneBot 隐藏该事件日志时,可以抛出 `NoLogException` 异常。 + + + +* **返回** + + + * `str` + + + +* **异常** + + + * `NoLogException` + + + +### _abstract_ `get_message()` + + +* **说明** + + 获取事件消息内容的方法。 + + + +* **返回** + + + * `Message` + + + +### `get_plaintext()` + + +* **说明** + + 获取消息纯文本的方法,通常不需要修改,默认通过 `get_message().extract_plain_text` 获取。 + + + +* **返回** + + + * `str` + + + +### _abstract_ `get_session_id()` + + +* **说明** + + 获取会话 id 的方法,用于判断当前事件属于哪一个会话,通常是用户 id、群组 id 组合。 + + + +* **返回** + + + * `str` + + + +### _abstract_ `get_type()` + + +* **说明** + + 获取事件类型的方法,类型通常为 NoneBot 内置的四种类型。 + + + +* **返回** + + + * `Literal["message", "notice", "request", "meta_event"]` + + + +### _abstract_ `get_user_id()` + + +* **说明** + + 获取事件主体 id 的方法,通常是用户 id 。 + + + +* **返回** + + + * `str` + + + +### _abstract_ `is_tome()` + + +* **说明** + + 获取事件是否与机器人有关的方法。 + + + +* **返回** + + + * `bool` + ## _class_ `Message` @@ -251,15 +359,6 @@ await bot.send_msg(message="hello world") -### `reduce()` - - -* **说明** - - 缩减消息数组,即按 MessageSegment 的实现拼接相邻消息段 - - - ### `extract_plain_text()` @@ -269,158 +368,17 @@ await bot.send_msg(message="hello world") -## _class_ `Event` - -基类:`abc.ABC`, `pydantic.main.BaseModel` - -Event 基类。提供获取关键信息的方法,其余信息可直接获取。 - - -### _abstract_ `get_type()` +### `reduce()` * **说明** - 获取事件类型的方法,类型通常为 NoneBot 内置的四种类型。 + 缩减消息数组,即按 MessageSegment 的实现拼接相邻消息段 -* **返回** +## _class_ `MessageSegment` - - * `Literal["message", "notice", "request", "meta_event"]` +基类:`abc.ABC` - - -### _abstract_ `get_event_name()` - - -* **说明** - - 获取事件名称的方法。 - - - -* **返回** - - - * `str` - - - -### _abstract_ `get_event_description()` - - -* **说明** - - 获取事件描述的方法,通常为事件具体内容。 - - - -* **返回** - - - * `str` - - - -### `get_log_string()` - - -* **说明** - - 获取事件日志信息的方法,通常你不需要修改这个方法,只有当希望 NoneBot 隐藏该事件日志时,可以抛出 `NoLogException` 异常。 - - - -* **返回** - - - * `str` - - - -* **异常** - - - * `NoLogException` - - - -### _abstract_ `get_user_id()` - - -* **说明** - - 获取事件主体 id 的方法,通常是用户 id 。 - - - -* **返回** - - - * `str` - - - -### _abstract_ `get_session_id()` - - -* **说明** - - 获取会话 id 的方法,用于判断当前事件属于哪一个会话,通常是用户 id、群组 id 组合。 - - - -* **返回** - - - * `str` - - - -### _abstract_ `get_message()` - - -* **说明** - - 获取事件消息内容的方法。 - - - -* **返回** - - - * `Message` - - - -### `get_plaintext()` - - -* **说明** - - 获取消息纯文本的方法,通常不需要修改,默认通过 `get_message().extract_plain_text` 获取。 - - - -* **返回** - - - * `str` - - - -### _abstract_ `is_tome()` - - -* **说明** - - 获取事件是否与机器人有关的方法。 - - - -* **返回** - - - * `bool` +消息段基类 diff --git a/docs/api/nonebot.md b/docs/api/nonebot.md index 58f7fbda..e3b80445 100644 --- a/docs/api/nonebot.md +++ b/docs/api/nonebot.md @@ -67,37 +67,6 @@ sidebarDepth: 0 * `require` => `nonebot.plugin.require` -## `get_driver()` - - -* **说明** - - 获取全局 Driver 对象。可用于在计划任务的回调中获取当前 Driver 对象。 - - - -* **返回** - - - * `Driver`: 全局 Driver 对象 - - - -* **异常** - - - * `ValueError`: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用) - - - -* **用法** - - -```python -driver = nonebot.get_driver() -``` - - ## `get_app()` @@ -191,6 +160,37 @@ bots = nonebot.get_bots() ``` +## `get_driver()` + + +* **说明** + + 获取全局 Driver 对象。可用于在计划任务的回调中获取当前 Driver 对象。 + + + +* **返回** + + + * `Driver`: 全局 Driver 对象 + + + +* **异常** + + + * `ValueError`: 全局 Driver 对象尚未初始化 (nonebot.init 尚未调用) + + + +* **用法** + + +```python +driver = nonebot.get_driver() +``` + + ## `init(*, _env_file=None, **kwargs)`