mirror of
https://github.com/nonebot/nonebot2.git
synced 2025-02-17 16:20:05 +08:00
Update docs
This commit is contained in:
parent
16c15bca41
commit
99fd832441
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': '你好~'}`。
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user