在多个群组间传话的机器人。原名为“qq-tg-irc”。
2020年7月22日,晨风机器人作者被警方喝茶,随后酷Q作者迫于压力跑路。
目前可行的备选方案为 OICQ 或 Mirai/CQHTTP Mirai。
- QQ(实验性)、Telegram、IRC、Discord 等多组聊天群之间互联。
- 可根据需要配置单向互联,或者将同一聊天软件的多个分群互联到一起。
- 支持图片转发。如不能发送图片(IRC),程序可将图片上传到图床并提供图片链接。
- 支持自定义转发消息样式。
- 支持 Docker 部署。
- 可支持扩展(备注:目前接口尚不完善,请尽量避免自己写插件)。
由于全新的 QQ 号无法直接进群,故建议提前两周注册 QQ 账号,并保持在线。尽量实名注册并绑定手机,以免在触发验证时无法验证账号。
- 与 @BotFather 私聊,输入
/newbot
命令,按照屏幕指示进行操作,创建机器人账号。 - 记录 BotFather 给出的 Token。
- 输入
/setprivacy
命令,根据屏幕提示选择机器人账号,然后选择Disable
,关闭隐私模式。
IRC 不需要注册。为了提高安全性,您可以采取注册 Nick、增加 Cloak 等措施,需要的话请自行搜索教程。
- 进入 Discord Developer Portal,创建 Application。创建完成后记录 CLIENT ID。
- 进入 Bot 页面,点击 Add Bot,创建机器人。创建成功后记录 Token。
- 进入 OAuth2 页面,往下翻到“OAuth2 URL Generator”,找到 SCOPES 并勾选 bot,然后再继续勾选 BOT PERMISSIONS 中的权限(例如 Administrator),系统会生成一个链接。访问生成的链接,按照屏幕提示将机器人拉入到你的服务器与频道中。
推荐在 Docker 中运行互联机器人程序。具体配置方法见 Docker说明。
- 安装 Node.js,最小版本 12。
- 下载代码
git clone https://github.com/Joch2520/LilyWhiteBot
- 修改配置文件:
- 将 config.example.yml 改名为 config.yml,按照配置文件中的提示填入参数。默认情况下各机器人都是关闭的,您需要将需要的机器人的
disabled
改为false
。 - 为避免群友乱说话导致封号,本程序有敏感词机制。需将 badwords.example.yml 改名为 badwords.yml。但是请注意,本程序未提供具体词库,且过滤机制较为简单,词库太大的话会影响性能。
- 将 config.example.yml 改名为 config.yml,按照配置文件中的提示填入参数。默认情况下各机器人都是关闭的,您需要将需要的机器人的
- 运行
npm install
node main.js
- 检查互联机器人是否正常运行。
如果已正常工作,建议使用 forever 启动机器人,保证程序随时运行。
如何获取群组ID?
- IRC、QQ:分别为频道名称(以
#
开头)和 QQ 群号码。在 LilyWhiteBot 配置文件中分别为irc/#频道名称
与qq/群号
,例如irc/#test
、qq/12345678
。 - Telegram:将 @GroupIDbot 拉入到您的聊天群,然后输入
/id
,机器人会返回聊天群的 ID。这个 ID 是一个负数,在 LilyWhiteBot 配置文件中需要写成类似telegram/-1234567890
的格式。 - Discord:进入 Discord 的用户设置(User Settings),找到 Appearance,启用“Enable Developer Mode”选项。然后右击聊天频道,在弹出菜单中选择“Copy ID”。在 LilyWhiteBot 配置文件中需要写成类似
discord/1234567890
的格式。
如果您从其他版本升级,请注意以下三点:
- Node.js 最低版本为 12。
- 配置文件格式由 json 换成了 yaml。json 配置文件仍然可用,但您会收到一条警告信息。
- 程序不再支持酷 Q。
以下各功能的设定方法均为改 config.yml。接口与功能可能会有所调整。详细内容参见插件。