Skip to main content

Alconna Adapter for Nonebot

Project description

nonebot

NoneBot Plugin Alconna

✨ Alconna Usage For NoneBot2 ✨

✨ All Receive in One, And One Send All ✨

license pypi python

该插件提供了 AlconnaNoneBot2 适配版本与工具

特性

  • 完整的 Alconna 特性支持
  • 自动回复命令帮助信息选项
  • 跨平台的接收与发送消息(被动+主动)
  • 22种适配器的收发消息支持
  • got-reject 更强大的补全会话机制
  • 多种内置插件 (echo,help,lang)
  • i18n 支持

讨论

QQ 交流群: 链接

使用方法

NoneBot 文档: 📖这里 仓库内介绍: 📦这里

跨平台消息

from nonebot import get_driver
from nonebot_plugin_alconna import Target, UniMessage, SupportScope, on_alconna, message_recall

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("图片已收到, 即将撤回")
    await message_recall()

@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
Ntchat adapters.ntchat
MineCraft adapters.minecraft
Walle-Q adapters.onebot12
Discord adapters.discord
Red 协议 adapters.red
Satori adapters.satori
Dodo IM adapters.dodo
Kritor adapters.kritor
Tailchat adapters.tailchat
Mail adapters.mail
微信公众号 adapters.wxmp
黑盒语音 adapters.heybox
Milky adapters.milky
EFChat adapters.efchat
B站直播间 adapters.bililive
云湖 adapters.yunhu
VoceChat adapters.vocechat

支持的消息元素

  • ✅: 支持(接收和发送)
  • ⬇️: 支持接收
  • ⬆️: 支持发送
  • ➖: 情况不存在
  • ❌: 插件/适配器未支持
  • 🚫: 协议未支持
  • (🚧): 计划中或部分支持或为实验性支持

[!WARNING] 协议名称前面的⚠️意味着其协议或其适配器长时间未维护或已失效

元素\适配器 OneBot V11 OneBot V12 Telegram 飞书 Github QQ-API ⚠️钉钉 Console 开黑啦 ⚠️Mirai ⚠️Ntchat Minecraft Discord ⚠️Red Satori Dodo IM ⚠️Kritor Tailchat Mail 微信公众号 黑盒语音 Milky EFChat B站直播间 云湖 VoceChat
文本 Text
样式文本 Styled Text 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
提及用户 At(user) ⬆️ 🚫 🚫 ⬆️ 🚫 ⬆️
提及角色 At(role) 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
提及频道 At(channel) 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 ⬆️ 🚫 🚫 🚫 🚫 🚫 🚫 🚫
提及全体 AtAll 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
表情 Emoji 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
图片 Image ⬆️ 🚫 ⬆️ 🚫
音频 Audio ⬆️ 🚫 🚫 🚫 ⬆️ ⬇️ 🚫 ⬆️ ⬆️ 🚫 ⬆️ 🚫 🚫 ⬆️ ⬆️ 🚫 ⬇️
语音 Voice ⬆️ 🚫 ⬆️ 🚫 🚫 ⬆️ ⬇️ 🚫 ⬆️ ⬆️ 🚫 🚫 🚫 🚫 🚫 ⬆️
视频 Video 🚫 🚫 🚫 🚫 ⬆️ 🚫 🚫 🚫 🚫
文件 File ⬇️,⬆️(🚧) 🚫 🚫 🚫 🚫 ⬆️ ⬇️ ⬇️ 🚫 🚫 ⬆️ 🚫 🚫
回复 Reply 🚫 🚫 🚫 🚫 🚫 ⬆️ ⬆️ ⬆️
引用转发 Reference 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
超级消息 Hyper 🚫 🚫 ⬇️ 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 ⬇️ 🚫 🚫 🚫
按钮 Button 🚫 🚫 ⬆️ 🚫 🚫 🚫 🚫 🚫 🚫 🚫 ⬆️ 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
其余 Other

支持的消息操作

  • ✅: 支持
  • ❌: 插件/适配器未支持
  • 🚫: 协议未支持
  • (🚧): 计划中或部分支持或为实验性支持

[!WARNING] 协议名称前面的⚠️意味着其协议或其适配器长时间未维护或已失效

操作\适配器 OneBot V11 OneBot V12 Telegram 飞书 Github QQ-API ⚠️钉钉 Console 开黑啦 ⚠️Mirai ⚠️Ntchat Minecraft Discord ⚠️Red Satori Dodo IM ⚠️Kritor Tailchat Mail 微信公众号 黑盒语音 Milky EFChat B站直播间 云湖 VoceChat
发送 Send
撤回 Recall 🚫 🚫 🚫 🚫 🚫 🚫 🚫
编辑 Edit 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫
表情响应 Reaction ✅(🚧) 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫 🚫

配置项

  • ALCONNA_AUTO_SEND_OUTPUT : 是否全局启用输出信息自动发送
  • ALCONNA_USE_COMMAND_START : 是否将 COMMAND_START 作为全局命令前缀
  • ALCONNA_GLOBAL_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内置插件集合
  • ALCONNA_CONFLICT_RESOLVER: 命令冲突解决策略,default 为保留两个命令,raise 为抛出异常,ignore 为忽略新命令,replace 为替换旧命令
  • ALCONNA_RESPONSE_SELF: 是否允许响应自己的消息
  • ALCONNA_CACHE_MESSAGE: 是否缓存消息

插件示例

demo bot

# 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.62.0.tar.gz (162.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_alconna-0.62.0-py3-none-any.whl (225.3 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_alconna-0.62.0.tar.gz.

File metadata

  • Download URL: nonebot_plugin_alconna-0.62.0.tar.gz
  • Upload date:
  • Size: 162.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.26.7 CPython/3.12.3 Linux/6.17.0-1008-azure

File hashes

Hashes for nonebot_plugin_alconna-0.62.0.tar.gz
Algorithm Hash digest
SHA256 24fc3bc0cff09febb22bfadb3146c147c092c4156444b274ac1b8d2cd77f1a9d
MD5 a9f668d92edec64ccb21d84c1dda14c7
BLAKE2b-256 0518478f1915898399a96506398b079ddef3303b12a2c2888859ad9d4a0bc739

See more details on using hashes here.

File details

Details for the file nonebot_plugin_alconna-0.62.0-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_alconna-0.62.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a8b644f05f0a9e57c307e26296ae1bc58a3f91ef24733d7c0f00a06bd2036b8c
MD5 6298c6845882f39bb57ea71c8c38b3c7
BLAKE2b-256 1ee93d4bdb54950da7c8dff3264b58c0c96a9a2dcb7535c89dec28fcf6bc5f9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page