Rat's Blog

使用CoolQ Telegram Bot X转发/合并QQ群和Telegram群之间的消息

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »

说明:近些年Telegram聊天软件受到了许多人喜爱,甚至使用时间上超过了QQ,但是有着那些离不开QQ的人,两边经常切换貌似有点不方便,这里就分享个整合系统CoolQ Telegram Bot X,可以在Telegram群收发QQ群消息!这样我们就可以在电报上收到QQ群消息以及发送。支持图片、发送表情等功能。

#通过该系统,我们可以实现:
TG群和QQ群相互转发,
TG群单向转发到QQ群,
QQ群单向转发到TG群,
TG A群单向转发到TG B群,
QQ A群单向转发到QQ B群。

简介

CoolQ Telegram Bot X是一个消息转发机器人。它能够实现QQ/Telegram群组之间的消息转发。仅需简单的配置,就能方便的定制属于自己的转发逻辑。想要连接QQ群和Telegram群组,或者合并多个群组的消息?一个CoolQ Telegram Bot X就能满足你。

截图

特性

#深度集成
CoolQ Telegram Bot X集成了QQ机器人和Telegram机器人。酷Q Message SDK保证了每一条QQ消息都能稳定和可靠的接收和发送。基于官方Telegram Bot API的Telegram C++ SDK ,强力驱动收发Telegram的多种消息。消息转发逻辑处理单元会根据转发配置,将QQ机器人或Telegram机器人接收到的消息转发到相应的群组。

两个消息处理SDK和消息转发逻辑处理单元均被打包进一个酷Q插件。启动酷Q,启用CoolQ Telegram Bot X插件,一切就是这么简单)

#多向转发
CoolQ Telegram Bot X支持多种转发类型。不管是QQ转发到Telegram,还是Telegram转发到QQ,都能正确的解析和转发消息。当然了, QQ转发到QQ以及Telegram转发到Telegram同样支持,帮助你管理和合并不同群组的消息。

在一些情况下,你可能需要单向消息转发,而不是双向转发。不用担心,CoolQ Telegram Bot X贴心的考虑到了这一点,轻松胜任单向消息转发。

#智能转换
你可能已经发现,QQ表情是一种特殊的文字。这难不倒CoolQ Telegram Bot X,在转发到Telegram群组时,它会自动将QQ表情转换为对应的emoji。在未来的计划中,我们将提供更多特殊消息内容的解析和智能转换。

安装

1、安装酷Q机器人
Windows系统请直接从酷Q官方网站下载软件:点击访问,然后安装酷Q
Linux系统查看教程:使用Docker安装Wine-CoolQ,并运行酷Q

#酷Q有两个版本
Air版可以免费使用,但只支持发送文字消息。
Pro版是收费软件,需要支付授权费用后才能进行使用。Pro版支持更多的功能。

#目前Air版足够使用。以后可能会调用Pro版提供的功能,实现更智能的消息解析和转发。

2、下载CTBX插件
首先下载最新版的CoolQ Telegram Bot X插件→下载地址,解压出来后,我们会获取到一个cpk格式插件和配置文件,分别放入酷Q根目录/app/酷Q根目录/app/top.jogle.ctbx/config/里,并重新命名配置文件config.json

这里以博主提供的Docker安装酷Q为例,酷Q根目录被映射到了外部的/coolq文件夹,可以直接使用命令:

#下载CTBX插件,如果插件有更新记得替换下载链接
wget https://github.com/JogleLew/coolq-telegram-bot-x/releases/download/10.2.1/top.jogle.ctbx.zip
#解压插件
unzip top.jogle.ctbx.zip
#新建配置文件存放文件夹
mkdir -p /coolq/app/top.jogle.ctbx/config/
#移动插件
mv top.jogle.ctbx.cpk /coolq/app/
#移动配置文件并重新命名
mv config/config_example.json /coolq/app/top.jogle.ctbx/config/config.json
#清理垃圾
rm -rf top.jogle.ctbx.zip config
#给文件夹权限
chmod 777 /coolq/app/top.jogle.ctbx

解压文件的时候,如果出现-bash: unzip: command not found,需要运行命令:

#CentOS系统
yum -y install unzip

#Debian/Ubuntu系统
apt install unzip -y

3、配置插件

提示:这里配置文件有个地方的格式有点小错误,在第3个和第4个规则之间缺个逗号“,”,记得在后面编辑的时候补齐,不然运行会报错。

接下来我们还需要编辑config.json配置文件,需要用到的参数有:

Bot_Token(Telegram机器人的Token),Bot_QQ(酷Q登录的机器人QQ),QQ群号码和Telegram群ID。

TelegramToken获取方法如下:

1、在Telegram关注@BotFather
2、再到对话框依次输入:/start=>/newbot,然后会要你给机器人命名(如:MoeratsBot),命名完成会给你一个Token。
3、为了顺利使用,还需要输入/mybots,然后依次选择Bot Settings=>Group Privacy=>Turn off。

TelegramID获取方法如下:

1、新建一个Telegram群,然后把你的机器人拉进群
2、发送一条消息并@下机器人,比如:/my_id @MoeratsBot
3、在浏览器输入https://api.telegram.org/botxx:xx/getUpdates(其中xx:xx为Token),然后会返回类似信息:"chat":{"id":-2265968,"title":"MOERATS"。此时的-2265968就为群ID。

这时候参数都有了,然后开始编辑配置文件:

#不习惯用命令编辑的,可以直接通过FTP登录VPS,再找到文件进行编辑
nano /coolq/app/top.jogle.ctbx/config/config.json

依次填入相应的参数信息,参考图如下:

部分参数解释:

#From_Group和To_Group
转发的来源群组和目标群组,这里对于Tg群需要输入chat_id,QQ群需要输入群号。

#Type
转发方式,目前支持所有的转发方式,即:T<->Q、T->Q、Q->T、Q->Q、T->T,其中默认左边的为From_Group右边的是To_Group,也就是说Q<->T和T<->Q是不等价的,如果是T<->Q的话TG群的id应该写在From_Group,而如果是Q<->T的话QQ群号应该写在From_Group。

完全重复的转发规则后者会取代前者,同一个群组可以被应用于不同的转发规则上,说简单点就是一张有向图。

举例:
T<->Q:QQ群1和TG群2相互转发
Q<->T:TG群3和QQ群4相互转发
T->Q:TG群5单向转发到QQ群6
Q->T:QQ群7单向转发到TG群8
Q->Q:QQ群9单向转发到QQ群10
T->T:TG群11单向转发到TG群12

编辑好了后,使用Ctrl+xy保存退出。

4、启动插件
然后我们通过http://IP:9000访问VNC界面,启动酷Q主程序。右键点击酷Q悬浮窗,选择应用→应用管理→启用CoolQ Telegram Bot X即可。

最后基本上算完成了,对于该系统还有一个Python版本,比本文的多了个语音转发功能,但转发规则只有TGQQ双向转发,如果有兴趣的可以去研究,Github地址:点击查看