GraiaProject / Avilla

The next-gen framework for IM development. Powered by Graia Project.
MIT License
160 stars 14 forks source link
avilla bot framework graia onebot onebot-sdk qq qqbot
# Avilla _The next-gen framework for IM development._ > 即刻动身, 踏上寻找第二个故乡的旅程.

code_style

Avilla 是 Graia Project 的 "下一代" 框架实现, 通过对 OneBot , Telegram Bot API 及其他的基于不同即时通讯软件实现的各式对接接口, 以及其他具有相应概念的 "异步消息流" 实例进行总结, 抽象其中最为基本的各式模型, 构造了一个理论上可以实现零成本切换对接平台的框架.

该框架目前处于快速迭代状态, API 可能会发生 剧烈 变化, 可能还不适合进行生产性的开发与运维

项目名称取自日本轻小说 《魔女之旅》 的角色 "艾维莉亚(Avilla)".

Docs docs docs docs

Notable Features

Quick Start

from avilla.core import Avilla, Context, MessageReceived
from avilla.console.protocol import ConsoleProtocol

avilla = Avilla()
avilla.apply_protocols(ConsoleProtocol())

@avilla.listen(MessageReceived)
async def on_message_received(cx: Context, event: MessageReceived):
    await cx.scene.send_message("Hello, Avilla!")

avilla.launch()

部件发布情况

代号 对接平台 协议 开发进度 PyPI 维护者 开源协议
Core - - Alpha image Official MIT
Console 终端环境 Console Alpha image Official MIT
Elizabeth Tencent QQ mirai-api-http Alpha image Official AGPLv3
Onebot 11 多平台支持 OneBot v11 WIP image Official -
QQ API Tencent QQ / QQ-Guild QQ / QQ-Guild Official API WIP image Official MIT
Red Tencent QQNT Red Protocol WIP image Official MIT
Satori 多平台支持 Satori Protocol (v1) WIP image Official MIT
Telegram Telegram Telegram Draft image - -
Nightcord Discord Discord Bots Draft image - -
Kook Kook Kook Draft image - -
OneBot 12 多平台支持 OneBot v12 Planned - - -

我们的愿景

创造出比这之前还要更加具有潜力和创造性的作品, 借此有力促进社区的发展, 助力社区的艺术家们 (Developers & Artists) 以更高的效率, 基于更完善的底层, 创作出更加精彩的作品.

相关项目

星座的光芒是由一个个星点共同组成的, 任何优秀的作品都绝不会是一个人的功绩. 而若是没有这些项目, Avilla 的实现就无从谈起. 排名不分顺序, 可能有许遗漏, 这里仅列出部分较为重要的项目.

无论如何, Avilla 都是 Graia Project 下的一个子项目, 以下项目均在不同层面上支持了 Avilla 的开发:

衷心感谢这些以及其他未被提及的项目.

开源协议

若非特殊说明, Avilla 及其子包默认使用 MIT 作为开源协议, 但如果你若引用到了使用 GPL/AGPL/LGPL 等具有传染性开源协议的项目, 无论是对 Avilla 实现或是使用了相应 Avilla 实现的项目仍需要遵循相关规则.