Alconna Adapter for Nonebot
Project description
NoneBot Plugin Alconna
✨ Alconna Usage For NoneBot2 ✨
✨ All Receive in One, And One Send All ✨
该插件提供了 Alconna 的 NoneBot2 适配版本与工具
特性
- 完整的 Alconna 特性支持
- 自动回复命令帮助信息选项
- 跨平台的接收与发送消息(被动+主动)
- 对20种适配器的收发消息支持
- 比
got-reject
更强大的补全会话机制 - 多种内置插件 (echo,help,lang)
- i18n 支持
讨论
QQ 交流群: 链接
使用方法
跨平台消息
from nonebot import get_driver
from nonebot_plugin_alconna import Target, UniMessage, SupportScope, on_alconna
driver = get_driver()
test = on_alconna("test")
@test.handle()
async def handle_test():
r = await UniMessage.image(path="path/to/img").send()
if r.recallable:
await r.reply("图片已发送,10秒后撤回")
await r.recall(delay=10, index=0)
@test.got("foo", prompt=UniMessage.template("{:Reply($message_id)}请输入图片"))
async def handle_foo():
await test.send("图片已收到")
@driver.on_startup
async def _():
await Target.group("123456789", SupportScope.qq_client).send(UniMessage.image(path="test.png"))
支持情况
支持的适配器
协议名称 | 路径 |
---|---|
OneBot 协议 | adapters.onebot11, adapters.onebot12 |
Telegram | adapters.telegram |
飞书 | adapters.feishu |
GitHub | adapters.github |
QQ bot | adapters.qq |
钉钉 | adapters.ding |
Console | adapters.console |
开黑啦 | adapters.kook |
Mirai | adapters.mirai, adapters.mirai2 |
Ntchat | adapters.ntchat |
MineCraft | adapters.minecraft |
BiliBili Live | adapters.bilibili |
Walle-Q | adapters.onebot12 |
Discord | adapters.discord |
Red 协议 | adapters.red |
Satori | adapters.satori |
Dodo IM | adapters.dodo |
Kritor | adapters.kritor |
Tailchat | adapters.tailchat |
支持的消息元素
- ✅: 支持(接收和发送)
- ⬇️: 支持接收
- ⬆️: 支持发送
- ➖: 情况不存在
- ❌: 插件未支持
- 🚫: 协议未支持
- 🚧: 计划中或部分支持
[!WARNING] 斜体的协议名称意味着其协议或其适配器长时间未维护或已失效
元素\适配器 | OneBot V11 | OneBot V12 | Telegram | 飞书 | Github | QQ-API | 钉钉 | Console | 开黑啦 | Mirai | Ntchat | MineCraft | BiliBili Live | Discord | Red | Satori | Dodo IM | Kritor | Tailchat |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
文本 Text | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
样式文本 Styled Text | 🚫 | 🚫 | ✅ | 🚫 | ✅ | ✅ | ❌ | ✅ | ✅ | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | ✅ |
提及用户 At(user) | ✅ | ✅ | ✅ | ✅ | ⬆️ | ✅ | ✅ | 🚫 | ✅ | ✅ | ❌ | 🚫 | 🚫 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
提及角色 At(role) | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | ✅ | ✅ | 🚫 | 🚫 |
提及频道 At(channel) | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | ✅ | ✅ | 🚫 | ✅ |
提交全体 AtAll | ✅ | ✅ | 🚫 | ✅ | 🚫 | ✅ | ✅ | 🚫 | ✅ | ✅ | 🚫 | 🚫 | 🚫 | ✅ | ✅ | ✅ | ✅ | ✅ | 🚫 |
表情 Emoji | ✅ | 🚫 | ✅ | 🚫 | 🚫 | ✅ | 🚫 | ✅ | ✅ | ✅ | 🚫 | 🚫 | 🚫 | ✅ | ✅ | 🚫 | 🚫 | ✅ | ✅ |
图片 Image | ✅ | ✅ | ✅ | ✅ | ⬆️ | ✅ | ✅ | 🚫 | ✅ | ✅ | ✅ | ❌ | 🚫 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
音频 Audio | ⬆️ | ✅ | ✅ | ✅ | 🚫 | ✅ | 🚫 | 🚫 | ✅ | ⬆️ | ⬇️ | 🚫 | 🚫 | ⬆️ | ⬆️ | ✅ | 🚫 | ⬆️ | 🚫 |
语音 Voice | ✅ | ✅ | ✅ | ⬆️ | 🚫 | ⬆️ | 🚫 | 🚫 | ⬆️ | ✅ | ⬇️ | 🚫 | 🚫 | ⬆️ | ✅ | ⬆️ | 🚫 | ✅ | 🚫 |
视频 Video | ✅ | ✅ | ✅ | ✅ | 🚫 | ✅ | 🚫 | 🚫 | ✅ | ✅ | ✅ | 🚫 | 🚫 | ⬆️ | ✅ | ✅ | ✅ | ✅ | 🚫 |
文件 File | ⬇️ | ✅ | ✅ | ✅ | 🚫 | ✅ | 🚫 | 🚫 | ✅ | ✅ | ✅ | 🚫 | 🚫 | ⬆️ | ✅ | ✅ | ⬇️ | ⬇️ | ✅ |
回复 Reply | ✅ | ✅ | ✅ | ✅ | 🚫 | ✅ | 🚫 | 🚫 | ✅ | ✅ | ✅ | 🚫 | 🚫 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
引用转发 Reference | ✅ | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | 🚫 | 🚫 | ✅ | ✅ | 🚫 | ✅ | 🚫 |
超级消息 Hyper | ✅ | 🚫 | 🚫 | ⬇️ | 🚫 | ✅ | 🚫 | 🚫 | ✅ | ✅ | ✅ | 🚫 | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | ✅ | 🚫 |
按钮 Button | 🚫 | 🚫 | ⬆️ | 🚫 | 🚫 | ✅ | 🚫 | 🚫 | 🚫 | 🚫 | 🚫 | ⬆️ | 🚫 | ✅ | 🚫 | ✅ | 🚫 | ✅ | 🚫 |
其余 Other | ✅ | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ | ➖ | ✅ | ✅ | ✅ | ➖ | ➖ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
配置项
- ALCONNA_AUTO_SEND_OUTPUT : 是否全局启用输出信息自动发送
- ALCONNA_USE_COMMAND_START : 是否将 COMMAND_START 作为全局命令前缀
- ALCONNA_AUTO_COMPLETION: 是否全局启用补全会话功能
- ALCONNA_USE_ORIGIN: 是否全局使用原始消息 (即未经过 to_me 等处理的)
- ALCONNA_USE_PARAM: 是否使用特制的 Param 提供更好的依赖注入
- ALCONNA_USE_CMD_SEP: 是否将 COMMAND_SEP 作为全局命令分隔符
- ALCONNA_GLOBAL_EXTENSIONS: 全局加载的扩展, 路径以 . 分隔, 如 foo.bar.baz:DemoExtension
- ALCONNA_CONTEXT_STYLE: 全局命令上下文插值的风格,None 为关闭,bracket 为 {...},parentheses 为 $(...)
- ALCONNA_ENABLE_SAA_PATCH: 是否启用 SAA 补丁
- ALCONNA_APPLY_FILEHOST: 是否启用文件托管
- ALCONNA_APPLY_FETCH_TARGETS: 是否启动时拉取一次发送对象列表
- ALCONNA_BUILTIN_PLUGINS: 需要加载的alc内置插件集合
插件示例
# echo 插件
from nonebot_plugin_alconna import UniMessage, Command
@Command("echo <...content>").build(auto_send_output=True).handle()
async def _(content: UniMessage):
await content.finish()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nonebot_plugin_alconna-0.51.4.tar.gz
(140.4 kB
view hashes)
Built Distribution
Close
Hashes for nonebot_plugin_alconna-0.51.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a43720a497c4fefb0da89e8d9996f8261bb0e92f70a991f2f4fd14c8ed628995 |
|
MD5 | 668e31967d51fc431b36cc0eba9d1ce9 |
|
BLAKE2b-256 | da8a5e6eee8bf2644bdfcd5bf2f9c4b7d607d7c97c29e6da5f2daf6e07f65e5b |
Close
Hashes for nonebot_plugin_alconna-0.51.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d31e537eb35e45a3753ad5d95dc0359f777269d6ce7e39fa74d515cad9a0981 |
|
MD5 | 44b233ac4287b1fdce7510aa46a70938 |
|
BLAKE2b-256 | 8ec2d740ce0779b0434e8e85e3930b3138b295ba83b2cd1960f3619a516cbe6f |