Skip to content
This repository has been archived by the owner on Jan 23, 2019. It is now read-only.

kurikomoe/QQ2TG

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

更新

1/6/19: 废弃,WebQQ 协议 1/1/19 被腾讯下线,建议采用酷 Q 等的作为后端。

一句话概述

Linux下不管是Wine、Crossover还是虚拟机跑QQ都太麻烦了,因此写了个东西把TG和QQ连接到了一起。于是可以在TG上愉快的聊QQ了。

具体描述

为QQBot写了一个插件(不妨叫做「QQBOT_PLUGIN」),为Telegram写了一个Bot(不妨叫做「TGBOT」),通过(现阶段)Unix Socket通信,基本工作原理就是

QQBot <--> QQBOT_PLUGIN <--(Unix Socket)--> TGBOT <--> Telegram

这样子进行通信。把QQ消息转发到TG,把发送给TGBOT的消息转发到QQ。

要点

不同于关联QQ-TG群组的组件,此BOT为个人独享,直接作为TG和QQ的中间层,把一个BOT当作QQ信息的终端,以此来接受和发送信息。

优点

  • 不用忍受wine系列qq的高cpu占用,不用忍受开虚拟机的费电。所有的东西都整合在TG里面,方便又开心。

  • 不怕别人召回了??

  • TG可以和系统内置的Notification结合,实时提示新的信息,以及内容。

缺点

  • 由于WebQQ本身协议的问题,因此只能接受发送文字信息(考虑到大部分时间图片,表情包都是卖萌的。。也就无所谓了,不过以后可以考虑利用酷Q实现)

  • 对QQBot的源代码理解不是很深入,因此目前是通过插件的形式导入进去,以后希望能把QQBot的代码内置到本项目里面,就不用分别启动了。

  • 掉线重连机制目前还没有实现

  • QQ消息全部整合到BOT中,容易看走眼??(有几万个群的dalao估计会被刷爆的)

  • 目前没有过滤自己发送的信息,因为weibqq存在发送失败的可能性,因此读取自己的信息并显示出来有利于判断消息是否成功发送。

安装

需要安装的组件

config.py

配置文件,可以建立config_user.py 修改相应的配置

qq.py

作为QQBOT的Plugin载入,同时确保qq.py可以import到config.py

建议把qq.py config.py config_user.py 直接ln -s 「软链接」到~/.qqbot-tmp/plugins目录下

tg.py

telegram bot,直接

python3 tg.py

就可以启动

功能描述

基础聊天功能

通过/start开启和机器人的聊天(为了刷新username和chat_id)

基本发送消息命令
/msg group|buddy|discuss username|qq message

对于包含 space 的群名,使用下划线「_」代表空格

快速回复功能

因为每次打/msg balabala 实在是太麻烦了,于是利用TG的reply功能,可以快速回复消息

具体做法:

  • 右键含有「name: type」的这种消息,选择reply

  • 直接输入要回复的信息,之后TGBOT会自动提取出要回复联系人的类型和名字,直接回复。

启动 qqbot 的功能

INFO: 这个功能目前是用 os.system 实现的,有注入的危险 另外需要在 config_user.py 里面添加相应的配置 QQBOT_USER_CONFIG_NAME 设置

启动 qqbot 的命令
/qqbot start|stop|restart

配合自动发送二维码功能,以后就能超方便的重启 qqbot or 获取新的 qqbot 二维码了(因为栗子懒得登录服务器重启了。。)

INFO: /start 命令会自动执行 /qqbot start

未来的计划

  • 将QQBot换成酷Q?

  • QQBOT_PLUGIN 与 TelegramBot 通讯支持跨服务器(以后就VPS上24h不停的跑TGBOT,QQBOT看情况按需在本地或VPS上开启

  • /focus 系列命令

将与BOT的直接聊天转化为对focus状态的联系人的聊天。

  • 更多的兼容层,实现与IRC等的兼容

  • /block 系列命令,记录屏蔽群消息清单

  • /history 系列命令, 记录历史消息并显示

鸣谢

About

QQ和Telegram消息的连通层(废弃,WebQQ 协议 1/1/19 被腾讯下线)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages