此适配器还在施工中,遇到问题请尽快反馈!
本项目仅为 Nonebot 适配器插件,要搭建 Bot 请先阅读 Nonebot2 文档
以下内容作为对于 Nonebot 文档的 driver
参数和 adapter
部分的扩充
请使用 pip 或项目包管理工具进行安装
使用 nb-cli 安装
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装nb adapter install nonebot-adapter-kaiheila
使用包管理器安装
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令pip
pip install nonebot-adapter-kaiheila
pdm
pdm add nonebot-adapter-kaiheila
poetry
poetry add nonebot-adapter-kaiheila
conda
conda install nonebot-adapter-kaiheila
打开 nonebot2 项目根目录下的 pyproject.toml
文件, 在 [tool.nonebot]
部分追加写入
plugins = ["nonebot-adapter-kaiheila"]
首先你需要注册 开黑啦 帐号,加入 机器人社区
私聊 koenigseggposche#8281
邀请你加入 「开黑啦」开发者内测频道
并进行报名获取机器人内测资格。
如果你已经拥有内测资格,则需要在 开发者平台 获取 Token
获取流程:应用 - 新建应用 - 填入应用名称 - 我的应用 - 点击Bot图标 - 机器人 - 机器人连接模式 - Token
1/MTA2MjE=/DnbsqfmN6/IfVCrdOiGXKcQ==
将这个 token 填入 NoneBot 的env
文件:
kaiheila_bots =[{"token": "1/MTA2MjE=/DnbsqfmN6/IfVCrdOiGXKcQ=="}]
NoneBot 默认的驱动器为 FastAPI,它是一个服务端类型驱动器(ReverseDriver),而 Kaiheila 适配器至少需要一个客户端类型驱动器(ForwardDriver),所以你需要额外安装其他驱动器。
目前推荐 httpx 客户端类型驱动器,你可以使用 nb-cli 进行安装。
nb driver install httpx
别忘了在环境文件中写入配置:
driver=~httpx+~websockets
kaiheila_ignore_events = ["notice."]
# 忽略指定字符串开头的消息类型,参数为list[str],里面可以填写多个event_name
# notice.guild_member_online 忽略成员上线通知事件
# notice.guild_member_ 忽略成员上线/下线通知事件
# notice. 忽略所有通知事件
kaiheila_ignore_other_bots = True
# 忽略其他bot消息,默认启用
import nonebot
from nonebot.adapters.kaiheila import Adapter as KaiheilaAdapter
nonebot.init()
driver = nonebot.get_driver()
driver.register_adapter(KaiheilaAdapter)
nonebot.load_builtin_plugins("echo")
nonebot.run()
现在,你可以私聊自己的 Kaiheila Bot /echo hello world
,不出意外的话,它将回复你 hello world
。(如果在频道内请@bot发送)
(感谢 @DogAddan 的贡献)
通过调用bot实例方法的形式可以调用开黑啦的所有API。
你可以在KOOK 开发者平台查看所有的API。API对应方法名参见源码文件。
对于POST asset/create
接口(上传文件/图片),你还可以直接调用bot.upload_file(file)
方法。