使用 Bot 在 Telegram 及 QQ 间转发消息,基本可以做到去 QQ 化,仅在 Telegram 上与 QQ 好友/群组互动
简介#
使用 Bot 在 Telegram 及 QQ 间转发消息,基本可以做到去 QQ 化,仅在 Telegram 上与 QQ 好友/群组互动
本项目使用 Docker Compose 简化了 Telegram Bot 和 QQ Bot 的安装与配置,仅需要 Docker Compose 与流畅的国际互联网连接即可使用
环境要求#
- Docker
- Docker Compose
- 能稳定连接到Telegram服务器的网络
使用项目#
配置#
克隆项目#
# 克隆
git clone -b go-cqhttp https://github.com/sakarie9/TG-EFB-QQ-Docker.git
# 进入文件夹
cd TG-EFB-QQ-Docker
配置GOCQ
端#
编辑
gocq/config.yml
配置文件account: # 账号相关 uin: 000000000 # QQ 账号 password: '' # QQ 密码,为空时使用扫码登录
(可选)修改登陆协议,运行如下命令,待提示生成
device.json
后ctrl+c
退出,编辑gocq/device.json
,参考 设备信息docker run --rm -it --name="gocq" -v $PWD/gocq:/data xzsk2/gocqhttp-docker:latest
配置EFB
端#
获取
token
创建一个Bot,向 @BotFather 发起会话,发送指令
/newbot
开始创建Bot,创建完成后可获取token
查看自己的
Telegram ID
向 @get_id_bot 发送
/start
,得到的Chat ID
即为用户的Telegram ID
打开
./efb/profiles/default/blueset.telegram/config.yaml
,修改下列字段,token
修改为上面获取到的Bot token
,admins
修改为Telegram ID
,注意格式token: 123456789:ABCDEFG1ABCDEFG1ABCDEFG1 admins: - 987654321
运行#
启动#
docker-compose up -d
如需扫码登陆输入 docker logs gocq
查看二维码
停止#
docker-compose down
自动更新#
docker run -d \
--name watchtower \
--restart unless-stopped \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower -c \
--interval 3600 \
efb gocq
本地代理#
如果你的服务器环境可以连接到Telegram服务器,可跳过本章节
本教程使用 ssr-command-client 作为本地代理,可参考此项目文档配置
安装
pip3 install shadowsocksr-cli
使用
# 添加订阅链接 shadowsocksr-cli --add-url 你的ssr订阅链接 # 更新订阅 shadowsocksr-cli -u # 启动 shadowsocksr-cli --fast-node
修改
EFB
配置编辑
./TG-EFB-QQ-Docker/efb/profile/default/blueset.telegram/config.yaml
,添加代理token: xxx:xxx admins: - xxxxxxxx # 添加下面的两行 request_kwargs: proxy_url: socks5h://127.0.0.1:1080/
重启
docker-compose down docker-compose up -d
常见问题#
无法发送群消息,只能接收?
无法发送大于三个字符的群消息,接收正常;好友消息的收发正常。这种情况是触发了TX的风控,一般服务器上挂12小时-2天即可正常