使用EFB实现Telegram收发微信
即时聊天工具确实太多了,比如qq,微信,what’s app,telegram等等.而且有些app确实太过于臃肿,比如微信,对于我来说,只是为了接收几个人的消息而已,对于其所谓的生态没有半毛钱兴趣.因此ehForwarderBot诞生了.它可以调用其他即时通讯的api,在一个app上(本文用telegram)集中管理所有消息.PS:这样子就能在一个手机上双开微信(但是telegram上的微信只能聊天,并不能做别的事情)…本文主要介绍如何使用telegram来接发微信消息,关于其他的app自己有兴趣的可以找官方文档尝试一下,不同的点主要在于slave channel
的变更.
前置条件
- 微信账号必须能登录网页版(本质是调用网页版微信的api接口,所以才能达到所谓的多端口登录)
- 一台vps,国内的或者海外的都可以,建议最好还是用海外的
- vps上的python的使用版本必须大于等于3.6
- 说实话EFB 2.x的安装比几年前的1.x的安装要简单太多了,也比之前1.x的要稳定,但是假如你用的python版本是小于等于3.6的话,各种惊喜在后面等你
- 报错出现类似于
empty channel
之类的话,请检查一下你安装efb时使用的python版本 - 由于很多linux系统的python版本是都是默认的3.5(linux系统的很多脚本是直接用python写的),即使你升级也无济于事,所以这里建议vps的系统最好使用windows的,因为windows的python版本安装就是傻瓜式操作,升级会把之前的老版本给直接覆盖了,没有版本管理这一说(对于没有经验的人来说,这是最快的解决方式.但是这也依旧抹除不了windows是个垃圾这个不争的事实)
- 对于Ubuntu 16.04.6 LTS 安装Python 3.6的话,可参照install-python3.6-on-ubuntu-16.04-LTS
安装步骤
安装ehForwarderbot
- 假如系统版本的python不是3.6及以上的,请自行stackoverflow或者去相关系统的论坛上查找解决方案,自己花了几个小时,到最后也不知道是怎么被自己切换到python3.6
- 以下操作都是基于你已经安装了python3.6的前提下进行的
安装efb的依赖
1
2
3sudo apt install ffmpeg
sudo apt install python3-pip
pip3 install libmagic pillow安装efb
1
pip3 install ehforwarderbot
在根目录下新建一个.ehforwarderbot的文件夹,并且更改所有用户的权限
1
2mkdir ~/.ehforwarderbot
chmod -R 777 .ehforwarderbot接着再新建一个存储数据的文件夹storage,并更改其权限
1
2mkdir -p .ehforwarderbot/storage
chmod 777 .ehforwarderbot/storage安装
master channel: Telegram
1
pip3 install efb-telegram-master
安装
wechat slave channel: Telegram
1
pip3 install efb-wechat-slave
创建Bot
在Telegram中通过BotFather创建一个新的bot,用来专门接收来自于微信的消息1
2
3
4
5
6
7
8
9
101. /start
2. /newbot # 会生成一个**token**
3. /setprivacy # 设置为'Disable'接收所有来自群的消息
4. /setjoingroups # 'Enable'可以将该机器人添加到其他telegram群中
5. /setcommands 添加以下命令及描述:
link - 将会话绑定到 Telegram 群组
chat - 生成会话头
recog - 回复语音消息以进行识别
extra - 获取更多功能
6. @get_id_bot 获得**bot ID**
配置文件
创建并且配置Telegram master相关文件
1
2
3cd .ehforwarderbot
mkdir -p profiles/default/blueset.telegram
vi profiles/default/blueset.telegram/config.yaml在上述文件中写入以下内容(以下的token就是在telegram中获取的token以及botId)
1
2
3
4
5
6token: "6***262:AA***nUWU"
admins:
- 20***7
master_channel: "blueset.telegram"
slave_channels:
- "blueset.wechat"修改保存完成之后
1
cp profiles/default/blueset.telegram/config.yaml profiles/default
创建并且配置wechat slave channel相关文件
1
2mkdir -p profiles/blueset.wechat
vi profiles/blueset.wechat/config.yaml在上述文件中写入以下内容
1
2
3
4flags:
option_one: 10
option_two: false
option_three: "foobar"启动EFB
1
screen python3 -m ehforwarderbot
Enjoy yourself
如有问题,欢迎调戏