Red Protocol Adapter for Nonebot2
Project description
NoneBot-Adapter-Red
✨ NoneBot2 Red Protocol适配器 / Red Protocol Adapter for NoneBot2 ✨
安装
Chronocat
请按照 Chronocat 的指引安装。
目前推荐版本为 v0.0.51
迁移指南
如果你原先为 go-cqhttp
用户,可以参考 迁移指南 来修改你的插件。
首次使用者同样可以参考该指南。
配置
修改 NoneBot 配置文件 .env
或者 .env.*
。
Driver
参考 driver 配置项,添加 ForwardDriver
支持。
如:
DRIVER=~httpx+~websockets
DRIVER=~aiohttp
关于 ForwardDriver
,参考 Driver。
RED_AUTO_DETECT
是否自动检测 Chronocat 的配置文件 ~/.chronocat/config/chronocat.yml
并读取内容,默认为 False
。
配置文件详细内容请参考 Chronocat/config。
该配置项需要在 Chronocat
版本 v0.0.46
以上才可用。
使用该配置项时,你需要通过 pip install nonebot-adapter-red[auto_detect]
安装 nonebot-adapter-red
。
如果你已经配置了 RED_BOTS
,则该配置项不会生效。
RED_BOTS
配置机器人帐号,如:
RED_BOTS='
[
{
"port": "xxx",
"token": "xxx",
"host": "xxx"
}
]
'
你需要从 Chronocat 的配置文件 ~/.chronocat/config/chronocat.yml
中获取 port
、token
、host
。
在单账号下,
port
与配置文件下的servers[X].port
一致token
与配置文件下的servers[X].token
一致host
与配置文件下的servers[X].listen
一致
# ~/.chronocat/config/chronocat.yml
servers:
- type: red
# Chronocat 已经自动生成了随机 token。要妥善保存哦!
# 客户端使用服务时需要提供这个 token!
token: DEFINE_CHRONO_TOKEN # token
# Chronocat 开启 red 服务的端口,默认为 16530。
port: 16530 # port
# 服务器监听的地址。 如果你不知道这是什么,那么不填此项即可!
listen: localhost # host
而多账号下,
port
与配置文件下下的overrides[QQ].servers[X].port
一致,并且一个QQ
只能对应一个port
token
与配置文件下下的overrides[QQ].servers[X].token
一致host
与配置文件下下的overrides[QQ].servers[X].listen
一致
# ~/.chronocat/config/chronocat.yml
overrides:
1234567890:
servers:
- type: red
# Chronocat 已经自动生成了随机 token。要妥善保存哦!
# 客户端使用服务时需要提供这个 token!
token: DEFINE_CHRONO_TOKEN # token
# Chronocat 开启 red 服务的端口,默认为 16530。
port: 16531 # port
# 服务器监听的地址。 如果你不知道这是什么,那么不填此项即可!
listen: localhost
旧版 Chronocat
对于旧版的 Chronocat,
port
是默认的16530
token
被默认存储在%AppData%/BetterUniverse/QQNT/RED_PROTOCOL_TOKEN
或~/BetterUniverse/QQNT/RED_PROTOCOL_TOKEN
中,并保持不变。host
默认为localhost
。
功能
支持的事件:
- 群聊消息、好友消息 (能够接收到来着不同设备的自己的消息)
- 群名称改动事件
- 群成员禁言/解除禁言事件
- 群成员加入事件 (包括旧版受邀请入群)
支持的 api:
- 发送消息 (文字,at,图片,文件,表情,引用回复)
- 发送伪造合并转发 (文字,at,图片)
- 获取自身资料
- 获取好友、群组、群组内群员资料
- 获取群公告
- 禁言/解禁群员
- 全体禁言
- 获取历史消息
- 获取媒体消息的原始数据
完整的 api 文档请参考 API 文档 或 QQNTRedProtocol
示例
from pathlib import Path
from nonebot import on_command
from nonebot.adapters.red import Bot
from nonebot.adapters.red.event import MessageEvent
from nonebot.adapters.red.message import MessageSegment
matcher = on_command("test")
@matcher.handle()
async def handle_receive(bot: Bot, event: MessageEvent):
if event.is_group:
await bot.send_group_message(event.scene, MessageSegment.image(Path("path/to/img.jpg")))
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
Built Distribution
File details
Details for the file nonebot_adapter_red-0.9.0.tar.gz
.
File metadata
- Download URL: nonebot_adapter_red-0.9.0.tar.gz
- Upload date:
- Size: 22.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.12.3 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a657c5ffb071c91deb4109bb94ac8046dcbea5cbb584437995c30ffb2d184954 |
|
MD5 | 1a78e147589a29a0c4ec1a7a206d956e |
|
BLAKE2b-256 | c1d581fda183c540aa6dd5444aa720b34d4724e0d962fcbb0535d29fe9d6f5a8 |
File details
Details for the file nonebot_adapter_red-0.9.0-py3-none-any.whl
.
File metadata
- Download URL: nonebot_adapter_red-0.9.0-py3-none-any.whl
- Upload date:
- Size: 24.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.12.3 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8dd5cd0a5d964faa23823b7c37fa8c64fa3ed8f67fa66515fe44a2708ee438ec |
|
MD5 | cf69d24b043350bef4c0698fd52acbe6 |
|
BLAKE2b-256 | 19c6b45001ee2e85352c39e10dacdd74cc8e2c99a5fc41f3dafb3ebc49fe1a61 |