✨ Yet Another Bot Framework for Tencent QQ Written in Python ✨
CAI
是完全免费且开放源代码的软件,仅供学习和娱乐用途使用CAI
不会通过任何方式强制收取费用,或对使用者提出物质条件
CAI
采用 AGPLv3 协议开源,不鼓励、不支持一切商业使用。
-
简单易用的 API,支持多账号
-
极少的额外依赖
完整的 Type Hints(pep-0484)
-
Packet Query 支持 Variadic Generics
from cai.utils.binary import Packet packet = Packet(bytes.fromhex("01000233000000")) packet.start().int8().uint16().bytes(4).execute() # return type: INT8, UINT16, BYTES
-
便携的 JceStruct 定义 (使用方法参考 JceStruct)
from typing import Optional from jce import JceStruct, JceField, types class CustomStruct(JceStruct): int32_field: types.INT32 = JceField(jce_id=0) optional_field: Optional[types.DOUBLE] = JceField(None, jce_id=1) nested_field: OtherStruct = JceField(jce_id=2)
-
CAI
仅作为底层协议库使用,将协议封装为 API。
CAI
不会支持涉及 金钱、主动邀请、获取凭证 等敏感操作的协议。
已支持的协议列表:
- 账号密码登录
- 设备锁验证
- 图片验证码提交
- 短信验证码提交
- 扫码登录
- 短信验证码
- 设置在线状态
- 上传图片/音频/视频/转发消息(用于发送聊天信息)
- 获取音频下载链接(
get_voice_download_url
)
- 获取好友列表
- 获取好友信息
- 获取好友分组列表
- 获取好友分组信息
- 撤回消息
- 发送文本信息(
send_friend_msg
)
- 获取群列表
- 获取群信息
- 获取群成员列表
- 发送群消息(
send_group_msg
) - 发送戳一戳(
send_nudge
) - 设置群管理(
set_group_admin
) - 禁言群员(
mute_member
) - 撤回消息(
recall_group_msg
) - 漫游消息(
get_group_msg
)
通过注册事件监听回调,在事件发生时执行指定操作。事件类型可通过 cai.client.events 模块导入。
- 好友消息 (PrivateMessage)
- 群消息 (GroupMessage)
- 完整的群事件支持 (group.py)
- Bot 基础事件 (common.py)
- 好友事件 (friend.py)
从 pypi 安装(推荐):
pip install cai-bot
从 git 安装(最新版,可能存在问题):
pip install git+https://github.com/wyapx/CAI@dev
暂无文档,请参考 examples 中的源代码进行开发
注意
:这需要你有 一定 的源代码阅读能力
本仓库为 github.com/cscs181/CAI 的一个二次开发项目,遵循原有的开发许可证同时,不会修改原有文件内的版权信息
最后感谢 yanyongyu
开源的源码