/

大国特色奇异技巧系列之二:Telegram 收发微信消息

ehforwarderbot_cover

ehforwarderbot_ui

不鳥萬如一老师曾讨论过关于微信,小弟很赞成其中的观点。微信可以成功,和防火长城关系密切。Telegram 是一款在功能及体验上远超微信的即时聊天工具,关于 Telegram 的传奇故事可以参见这篇

EH Forwarder Bot 是一位大大开发的一个消息隧道聊天机器人框架,可将一个平台的消息转到另一个平台,其中包括将微信消息转发至 Telegram。

这个小工具可以将 Web 端的微信消息转发至 Telegram,这样做有几个好处:1、使用更现代的 Telegram 聊天界面收发微信消息;2、聊天记录在 Telegram 云备份一份;3、得益于 Telegram 优秀的跨平台特性,可以更方便多平台使用微信;4、 Telegram 的某些功能,如超多的贴图、定时发信息等也可以使用。

使用 EH Forwarder Bot 微信消息转至 Telegram 需要准备:1、可以连外网的 VPS 或连外网的群晖(推荐);2、两个 Telegram 账号;3、确保微信可以正常登录 Web 端。

配置 Telegram 机器人

创建 Telegram 机器人

首先创建一个新的 Telegram 机器人,打开 Telegram 应用,与 @BotFather 开始对话,

发送 /start ,可以看到各种指令及简要说明,

发送 /newbot 创建一个新机器人,之后会询问机器人的名字及机器人的用户名,根据提示输入即可。

之后会返回机器人的 token,记下备用。

配置 Telegram 机器人

接下来配置刚刚建立的 Telegram 机器人,

发送 /setprivacy 至 @BotFather,选择刚刚建立的机器人,设置为 Disable

发送 /setjoingroups 至 @BotFather,选择刚刚建立的机器人,设置为 Enable

发送 /setcommands 至 @BotFather,选择刚刚建立的机器人,回复以下内容:

1
2
3
4
5
6
7
8
help - 显示命令清单
link - 连接对话到 TG 群组
unlink_all - 解除群组中所有对话的连接
info - 显示当前对话的详细信息
chat - 创建对话
recog - 回复语音消息以进行识别
extra - 获取更多功能
update_info - 更新组群名字及头像

获取 Telegram ID

之后获取自己的 Telegram ID,与 @get_id_bot 对话,发送 /start,获得的一串数字即为自己的 ID,记下这串数字备用。

配置 Docker

首先确保 VPS 或群晖可以连外网,Telegram 目前需要连外网才能用。另外,有些 VPS 可能触发微信的异地登录,导致登录 Web 端微信失败(小弟有尝试在谷歌云上搭建,最后导致禁止 Web 端登录微信),相对比较安全且稳定的是在连外网的群晖上搭建。

小弟使用的是这个大大的 Docker。首先新建存放这个 Docker 的文件夹,文件夹依照下面的层级结构建立好子文件目录:

1
2
3
4
5
6
📂profiles
└── 📂default
├── 📂blueset.telegram
│ └── config.yaml
├── 📂blueset.wechat
└── config.yaml

其中,profiles/default/config.yaml 这个文件输入以下内容:

1
2
3
master_channel: blueset.telegram
slave_channels:
- blueset.wechat

profiles/default/blueset.telegram/config.yaml 这个文件中输入机器人的 token 和 Telegram ID,

1
2
3
token: "123456789:ABCD_1-1A2BASDFA_ASFASDFASDFASDFASF"
admins:
- 1234567

打开群晖 Docker ,在「注册表」标签卡中搜索「ehforwarderbot」,找到「jemyzhang/ehforwarderbot」下载映像,

ehforwarderbot_reg

待下载完成,在「映像」标签卡中点击「启动」,选择「高级设置」,在「路径」选项卡中选择存放配置文件的路径,挂载路径填写 /data

ehforwarderbot_dir

之后启动容器,在「日志」或「终端机」中可以看到微信登录二维码,可以复制网址到浏览器,微信扫描二维码登录,登录成功日志会有显示,Telegram 可以收到微信的消息。

ehforwarderbot_qr

使用

Web 端支持的文字、语音、文件都可以转发至 Telegram,红包、定位、朋友圈等 Web 端没有的功能不支持。

直接回复

默认会将所有微信 Web 端的消息汇总至一个消息框中,想要回复可以直接发送命令/chat,选择要回复的联系人或群组,之后右滑返回的消息回复即可。另外还支持 /chat 关键词 快速定位要回复的联系人或群组。

分组对话

如果某个联系人或群组,可以首先用两个 Telegram 账号新建一个空白群组,之后向机器人发送命令 /link 将某个联系人或群组连接至空白群组,也支持 /link 关键词 快速链接联系人或群组,之后选择空白群组,链接好之后就可以实现消息分组。

酷功能

超酷贴图

Telegram 有很多不错的贴图,还有很多从 Line 移植过来的贴图,比微信的贴图精致很多,其中静态贴图可以直接发送至微信,动态贴图可以借助 Sticker download 这个机器人将动态贴图转成 GIF 发送。

定时发送

Telegram 支持定时发送信息,这个也支持。