nonebot.helpers
context_id(event, *, mode='default', use_hash=False)
def 说明
获取事件对应的上下文的唯一 ID。
参数
event
(aiocqhttp.event.Event): 事件对象mode
(str): ID 的计算模式'default'
: 默认模式,任何一个上下文都有其唯一 ID'group'
: 群组模式,同一个群组或讨论组的上下文(即使是不同用户)具有相同 ID'user'
: 用户模式,同一个用户的上下文(即使在不同群组)具有相同 ID
use_hash
(bool): 是否将计算出的 ID 使用 MD5 进行哈希
返回
- str: 事件对应的上下文的唯一 ID
用法
ctx_id = context_id(session.event, use_hash=True)
1获取当前 Session 的事件对应的上下文的唯一 ID,并进行 MD5 哈希,得到的结果可用于图灵机器人等 API 的调用。
send(bot, event, message, *, ensure_private=False, ignore_failure=True, **kwargs)
async def 说明
发送消息到指定事件的上下文中。
参数
返回
- Any 1.1.0+: 返回 CQHTTP 插件发送消息接口的调用返回值,具体见 aiocqhttp 的 API 调用 (opens new window)
异常
CQHttpError
: 发送失败时抛出,实际由 [aiocqhttp] 抛出,等价于aiocqhttp.Error
用法
await send(bot, event, 'hello')
1
send_to_superusers(bot, message, **kwargs)
1.7.0+
async def 说明
发送私聊消息到全体超级用户(即配置下的
SUPERUSERS
)。参数
返回
- None
异常
CQHttpError
: 发送失败时抛出,实际由 [aiocqhttp] 抛出,等价于aiocqhttp.Error
用法
await send_to_superusers(bot, f'被群 {event.group_id} 踢出了')
1
render_expression(expr, *args, escape_args=True, **kwargs)
def 说明
渲染 Expression。
参数
expr
(Expression_T): 要渲染的 Expression,对于 Expression 的三种类型:str
、Sequence[str]
、(*Any, **Any) -> str
,行为分别是str
: 以*args
、**kwargs
为参数,使用str.format()
进行格式化Sequence[str]
: 随机选择其中之一,进行上面str
的操作(*Any, **Any) -> str
: 以*args
、**kwargs
为参数,调用该可调用对象/函数,对返回的字符串进行上面str
的操作
*args
: 渲染参数escape_args
(bool): 是否对渲染参数进行转义**kwargs
: 渲染参数
返回
- str: 渲染出的消息字符串
用法
msg1 = render_expression( ['你好,{username}!', '欢迎,{username}~'], username=username ) msg2 = render_expression('你所查询的城市是{}', city)
1
2
3
4
5