mirror of
				https://github.com/nonebot/nonebot2.git
				synced 2025-10-31 15:06:42 +00:00 
			
		
		
		
	Update docs
This commit is contained in:
		
							
								
								
									
										20
									
								
								docs/api.md
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								docs/api.md
									
									
									
									
									
								
							| @@ -1838,6 +1838,22 @@ sidebar: auto | ||||
|  | ||||
|   获取当前事件上下文的 `user_id` 字段。 | ||||
|  | ||||
| #### _readonly property_ `self_id` <Badge text="1.1.0+"/> | ||||
|  | ||||
| - **类型:** `int` | ||||
|  | ||||
| - **说明:** | ||||
|  | ||||
|   当前 session 对应的 QQ 机器人账号,在多个机器人账号使用同一个 NoneBot 后端时可用于区分当前收到消息或事件的是哪一个机器人。 | ||||
|  | ||||
|   等价于 `session.ctx['self_id']`。 | ||||
|  | ||||
| - **用法:** | ||||
|  | ||||
|   ```python | ||||
|   await bot.send_private_msg(self_id=session.self_id, user_id=12345678, message='Hello') | ||||
|   ``` | ||||
|  | ||||
| #### _coroutine_ `send(message, *, at_sender=False, ensure_private=False, ignore_failure=True, **kwargs)` | ||||
|  | ||||
| - **说明:** | ||||
| @@ -1853,7 +1869,7 @@ sidebar: auto | ||||
|  | ||||
| - **返回:** | ||||
|  | ||||
|   - `Any`: 返回 CQHTTP 插件发送消息接口的调用返回值,具体见 aiocqhttp 的 [API 调用](https://github.com/richardchien/python-aiocqhttp#api-%E8%B0%83%E7%94%A8) | ||||
|   - `Any` <Badge text="1.1.0+"/>: 返回 CQHTTP 插件发送消息接口的调用返回值,具体见 aiocqhttp 的 [API 调用](https://github.com/richardchien/python-aiocqhttp#api-%E8%B0%83%E7%94%A8) | ||||
|  | ||||
| - **异常:** | ||||
|  | ||||
| @@ -1980,7 +1996,7 @@ async def _(session): | ||||
|  | ||||
| - **返回:** | ||||
|  | ||||
|   - `Any`: 返回 CQHTTP 插件发送消息接口的调用返回值,具体见 aiocqhttp 的 [API 调用](https://github.com/richardchien/python-aiocqhttp#api-%E8%B0%83%E7%94%A8) | ||||
|   - `Any` <Badge text="1.1.0+"/>: 返回 CQHTTP 插件发送消息接口的调用返回值,具体见 aiocqhttp 的 [API 调用](https://github.com/richardchien/python-aiocqhttp#api-%E8%B0%83%E7%94%A8) | ||||
|  | ||||
| - **异常:** | ||||
|  | ||||
|   | ||||
| @@ -9,6 +9,7 @@ sidebar: auto | ||||
| - 插件模块现可通过 `__plugin_name__` 和 `__plugin_usage__` 来分别指定插件名称和插件使用方法(两者均不强制,若不设置则默认为 None) | ||||
| - 新增 `none.get_loaded_plugins()` 函数用于获取所有已加载的插件集合 | ||||
| - `BaseSession.send()` 方法和 `none.helpers.send()` 函数现返回 API 调用返回值(即 CQHTTP 插件的返回结果的 `data` 字段) | ||||
| - `BaseSession` 新增 `self_id` 属性,可通过 `session.self_id` 代替 `session.ctx['self_id']` 来获取当前机器人账号 | ||||
|  | ||||
| ## v1.0.0 | ||||
|  | ||||
|   | ||||
| @@ -12,11 +12,12 @@ await bot.send_private_msg(user_id=12345678, message='你好~') | ||||
|  | ||||
| 这里,`send_private_msg` 实际上对应 CQHTTP 的 [`/send_private_msg` 接口](https://cqhttp.cc/docs/#/API?id=send_private_msg-%E5%8F%91%E9%80%81%E7%A7%81%E8%81%8A%E6%B6%88%E6%81%AF),其它接口同理。 | ||||
|  | ||||
| 通过这种方式调用 API 时,需要注意两点: | ||||
| 通过这种方式调用 API 时,需要注意下面几点: | ||||
|  | ||||
| 1. **所有参数必须为命名参数(keyword argument)**,否则无法正确调用 | ||||
| 2. 这种调用全都是异步调用,因此需要适当 `await` | ||||
| 2. **调用失败时(没有权限、对方不是好友、无 API 连接等)可能抛出 `nonebot.CQHttpError` 异常**,注意捕获 | ||||
| 2. 这种调用**全都是异步调用**,因此需要适当 `await` | ||||
| 3. **调用失败时(没有权限、对方不是好友、无 API 连接等)可能抛出 `nonebot.CQHttpError` 异常**,注意捕获 | ||||
| 4. **当多个机器人使用同一个 NoneBot 后端时**,可能需要加上参数 `self_id=<机器人QQ号>`,例如 `await bot.get_group_list(self_id=session.ctx['self_id'])` | ||||
|  | ||||
| 另外,在需要动态性的场合,除了使用 `getattr()` 方法外,还可以直接调用 `bot.call_action()` 方法,传入 `action` 和 `params` 即可,例如上例中,`action` 为 `'send_private_msg'`,`params` 为 `{'user_id': 12345678, 'message': '你好~'}`。 | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user