efb[IFTTT]LINE跟TELEGRAM做连动-电报telegram技巧分享

微信会针对使用第三方客户端的用户实行登录封禁,即无法再使用微信网页版登录,请自行思量风险。

不嘻歡 Docker 的同窗 可以参考手动安装 。

两年多前,青小蛙就在使用 EFB V1 了,而且还写过一篇比较具体的教程:

https://www.appinn.com/efb-tutorial-with-docker/

现在此版本仍旧可用,但 EFB 已经升级到了 V2,虽然还处于 Beta,但基于 V2 的种种中间件,以及支持 QQ 互通,以是新用户还是使用 V2 吧。

介绍

EFB 全称 ehForwarderBot ,是一个可扩展的信息隧道机器人开源框架,支持通过谈天机器人从差别的 IM 工具收发信息,好比通过 Telegram 收发微信消息,通过 Telegram 收发 QQ 消息,通过 Telegram 收发 Facebook Messenger 等。

安装 Docker,以 Ubuntu 为例

鉴于每个人的系统环境差别,无论何等细致的安装教程都市产生林林总总的问题,而这些问题绝大多数都与 EFB 无关,更多的是系统环境设置问题,以是本着多一事不如少一事的原则,这里使用 docker 安装。而 Docker 可以或许有用制止差别用户系统环境差别导致的问题。

曾经写过 Docker 官方建议的安装方法 ,不外现在的 Ubuntu 18.04+ 版本更建议使用 apt 安装,简单快捷:


apt update apt install docker.io curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose

即可完成安装。

别的平台请 参考官网 ,安装 Docker CE 即可。

设置 EFB V2

首先创建一个文件夹,要先创建几个文件:


├── blueset.telegram │ ├── config.yaml │ └── tgdata.db * ├── blueset.wechat * │ ├── wxpy.pkl * │ └── wxpy_puid.pkl * ├── config.yaml └── docker-compose.yml **

标志 * 号为主动天生的路径和文件,可以不用管它,** 可见最后。

config.yaml

在当前路径下创建

config.yaml

文件

下面是一个拿来可用的

config.yaml

示例:


master_channel: blueset.telegram slave_channels: - blueset.wechat middlewares: - filter.FilterMiddleware

内里包含了 1 其中间件:过滤指定会话功能。

blueset.telegram/config.yaml

创建 Telegram 主频道设置文件

config.yaml


$ mkdir blueset.telegram $ touch blueset.telegram/config.yaml

下面是需要修改的

blueset.telegram/config.yaml

示例文件:


token: "Telegram Bot's token" admins: - 你的 Telegram User ID


  • Telegram User ID

    与这个机器人 @ get_id_bot 谈天,输入

    /my_id

    即可

  • Telegram Bot’s token

    参考这篇文章 ,设置机器人部分

运行

修改 docker-compose.yml 文件:


efbv2: image: scavin/docker-efbv2 container_name: efbv2 restart: always volumes: - ./:/root/.ehforwarderbot/profiles/default/

然后运行:


docker-compose up -d

最后,使用下面的下令察看微信登录二维码:


docker logs efbv2

怎样使用过滤

选择你要屏蔽的对象,直接回答

filter`

即可

(完)

有问题可直接回答。

批量绑定订阅号


tag:REPL

支持批量绑定订阅号

此方法需要肯定的操作履历,请审慎。

最糟糕的结果是绑定杂乱,有大概需要重新绑定全部联系人,如能承受此结果,可随意折腾。

以 REPL 模式启动 EFB

REPL 模式同样需要设置 EFB。可以在第一次运行 EFB 的使用,重要用来进入维护模式,好比:绑定订阅号到某一个 Group。


$ docker run -d --name efbv2 $(pwd):/root/.ehforwarderbot/profiles/default/ scavin/docker-efbv2:REPL

以 REPL 模式启动 EFB


$ docker exec -it efbv2 ash

出处在 这里 ,但留意这里有一些错误,以下面的为准:

EWS & ETM:批量绑定(订阅号等) Eana Hufwe edited this page on 25 Nov 2018 · 2 revisions Written for EFB 2.0.0b10; ETM 2.0.0b11; EWS 2.0.0a12

留意: 本内容是一个非正式支持的 Hack,且未经过测试。项目维护者及作者没有任务对下述内容提供任何支持,且不对该内容产生的任何结果负任何责任。 请在充实明白下述内容原理的条件下操作。You have been warned.

将 ETM 的 Telegram Bot 添加到目的绑定群组、发送 /info 以获取该群组 ID。群组 ID 应是一个负整数。下面以 -3324225 为例。 在当前的 profile 中设置 ETM 为主端,并启用 EWS。 以 REPL 模式启动 EFB

python3 -i -m ehforwarderbot [-p PROFILE_NAME]

操作 REPL


>>> from ehforwarderbot import coordinator >>> from efb_telegram_master import utils >>> # 获取 ETM, EWS 运行实例 >>> etm = coordinator.master >>> ews = coordinator.slaves['blueset.wechat'] # 如有运行多个实例,需追加实例 ID >>> # 获取会话列表 >>> chats = ews.get_chats() >>> # 提取出全部需要批量绑定的会话,比方这里要提取全部非订阅号 >>> # 详细可使用的参数请参考 EFB 和 EWS 的说明文档 >>> to_link = [i.uid for i in chats if i.vendor_specific.get('is_mp', False)] >>> # 绑定到指定会话 >>> tg_grp_id = -123456 >>> for i in to_link: ... etm.db.add_chat_assoc(master_uid=utils.chat_id_to_str(etm.channel_id, tg_grp_id), ... slave_uid=utils.chat_id_to_str(ews.channel_id, i), ... multiple_slave=True) >>> # 退出 EFB 实例并以一样平常方法重新启动 >>> ^D

动态贴纸支持


tag:dev

支持动态贴纸

telegram收发line

去年 12 月尾,青小蛙介绍了可扩展的谈天平台,隧道机器人框架 EH Forwarder Bot ,实现了通过 Telegram Bot(机器人)收发微信功能,无论文字、语音、图片还是视频、心情,都可以互通。几个月用下来,真有点离不开了。

而 EFB 的搭建有一些门槛( 官方教程 ),重要的问题是 Python 3 的设置问题,青小蛙也碰了不少坑。鉴于近来在折腾 Docker ,索性把青小蛙是怎样安装 EFB 的過逞总结出来,方便大家。




配景

首先你要有使用 Telegram 的習慣,否则这所有没得玩 ? 。其次,要有一点 Linux 底子,需要一台 VPS ,青小蛙这里以 Vultr (? 此链接有返利) 2.5刀最低款套餐为例,系统为 Ubuntu 16.04 x64,CPU 1 核,内存 512M。之以是没有使用 Vultr 提供的 Docker 镜像在于那是台 CentOS,很久没用过了…




更新系统

由于新机器,SSH 登录后,照惯例先更新:


apt-get update apt-get upgrade




安装 Docker CE

这里有具体的安装過逞 ,非常轻易,照着一行一行敲下令即可:


sudo apt-get -y install apt-transport-https ca-certificates curl curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt-get update sudo apt-get -y install docker-ce




通过 Docker 安装 EFB

我们使用 @royx 提供的 EFB 镜像 来安装,也非常轻易:


docker pull royx/docker-efb

至此,实在服务器端的设置已经完成了,基于 Docker 的安装就是这么简单 ?

下面来设置一下 Telegram,让可爱的小机器人来舒畅的工作。




设置 Telegram Bot 机器人

EFB 现在实现的 Telegram 与 微信 互通的原理是这样的:

Telegram bot > EFB > 微信网页版 > 微信

以是我们先来设置 Telegram bot:

  1. Telegram 里搜索 @ botfather 并和他对话
  2. 对 @botfather 说话,输入

    /newbot
  3. 给你的机器人 bot 起个名字
  4. 继续给机器人起用户名,和上面的名字可以相同,但必须以 bot 末端
  5. 得到机器人 Token,下图红色部分,一会要用到

留意以上机器人信息不要走漏给别人,上面这个测试机器人青小蛙删掉了。

设置 bot 隐私权限

bot 大概会吸收不了非 “/” 开头的消息,以是需要设置一下,让 bot 吸收全部内容:

继续与 @botfather 对话,输入

/setprivacy

,选择方才创建的机器人,点击 Disable




得到 Telegram ID

再和别的一个机器人 @ get_id_bot 对话,点击 start 即可得到你的 Telegram ID,一串数字(Chat ID)。

至此,Telegram 的设置完成,我们得到两个重要的数字:token、Telegram ID




设置 EFB

这里是最简单的一份设置文件,你可以 从这里得到 官方提供的设置文件:


master_channel = 'plugins.eh_telegram_master', 'TelegramChannel' slave_channels = [('plugins.eh_wechat_slave', 'WeChatChannel')] eh_telegram_master = { "token": "12345678:QWFPGJLUYarstdheioZXCVBKM", "admins": [13456782], "bing_speech_api": ["xxx", "xxx"], "baidu_speech_api": { "app_id": 0, "api_key": "xxx", "secret_key": "xxx" } }

将以上内容保存为 config.py 文件,

留意

把上面 token以及 admins 冒号背面的部分更换成方才得到的 token 和 Chat ID。

即:下面的红色部分:

“token”: “12345678:QWFPGJLUYarstdheioZXCVBKM”,

“admins”: [13456782],


留意

xxx 部分可以自己申请,也可以参考 官方提供 的内容。

再新建一个 tgdata.db 文件:


touch tgdata.db

至此,EFB 的设置完成,我们得到两个文件: config.py、tgdata.db,在这里我们举例将这两个文件保存在 /root/efb/config.py 和 /root/efb/tgdata.db 这两个位置。




通过 Docker 运行 EFB

只需要一句:


docker run -d --restart=always --name=ehforwarderbot \ -v $(pwd)/config.py:/opt/ehForwarderBot/config.py \ -v $(pwd)/tgdata.db:/opt/ehForwarderBot/plugins/eh_telegram_master/tgdata.db \ royx/docker-efb

又要留意了,这内里需要把 $(pwd) 改成方才创建的两个文件路径,任意你保存在那里,上面的例子就是 /root/efb/,以是完备的一个例子:


docker run -d --restart=always --name=ehforwarderbot -v /root/efb/config.py:/opt/ehForwarderBot/config.py -v /root/efb/tgdata.db:/opt/ehForwarderBot/plugins/eh_telegram_master/tgdata.db royx/docker-efb

全部安装、设置、运行已完成。




登录微信


docker logs ehforwarderbot

在屏幕上,你会看到一个二维码,用微信扫描,登录,大功告成。




简单的使用 EFB

你可以完全通过机器人与微信互通,但对于联系人较多的微名誉户来说意义不大,以是,我们将微信联系人绑定到逐一对应的 Telegram 群组中,就完美解决了一对一谈天的问题。

首先在 Telegram 中创建一个新的群组,好比 青小蛙.WeChat 这个名字,然后将你的机器人约请进来(此处,手机端的 Telegram 无法直接拉机器人进来,你需要任意拉一个真人,再拉机器人进来,再把那个人踢出去;电脑端则可以在创建群组的时间直接拉机器人进来)

继续和你的机器人谈天,对他说:

/link 青小蛙

EFB 会主动帮你搜索微信联系人,并表现搜索结果,点击你需要的联系人名:

再点击 Link,此时 Telegram 会弹出联系人选单,选择方才创建的群组,即完成了微信联系人与 Telegram 群组的绑定。

如今已经可以舒畅的和机器人谈天啦,你还可以把群组的头像改成微信联系人的头像,感觉…就跟微信换了一个客户端一样 ?

閒聊

[IFTTT] LINE跟TELEGRAM做連動

我發現要寫一隻BOT 丟訊息去LINE這件事實在是很麻煩, 因為LINE都要收錢 付錢就很不麻煩了

但是我沒有錢

,以是付錢的那些企業方案啥的就不考慮了,而其他開發者發案還得要搞SSL憑證 又要搞一個外部IP的站給他連也是很討厭的事

以是我後來有發現其實有一個叫做LINE NOTIFY的功能可以用,他可以做到用BOT丟訊息給他這件事情

以是我只要採用IFTTT這個網站的功能,讓他跟LINE連動就可以丟資料給LINE了

ITFFF的功能就是 IF 怎樣怎樣的時候 THEN 怎樣怎樣

也就是說比方

IF TELEGRAM有訊息時 THEN 把訊息轉發去LINE一份


IF YOUTUBE有影片時 THEN 發GMAIL告訴我

這樣的功能

首先先必須去IFTTT網站註冊一下,註冊超快

註冊完之後,你可以看到它有许多的應用程式可以做連動

像這次範例是要

LINE



TELEGRAM

做連動,以是你要去搜尋這兩個應用程式,然後按連接,這樣一來 你這兩個應用程式就已經跟IFTTT網站做連接了。

此時你的LINE跟TELEGRAM大概會收到通知,就代表OK了

之後你就要開始寫腳本,看怎樣的情況之下 需要他連動了

你先點右上角的帳號 然後選NEW APPLET 之後點那個 +THIS如下圖

像是我是選TELEGRAM,他就會問你 你要在怎樣的情況之下 觸發連動

像是我是選 NEW MESSAGE IN A GROUP這個,以是只要TELEGRAM群組有人TAG他 他就會幫你轉發(備註1)

選完之後 後面一些設定設定好等他一下 就搞定拉。

備註:

1.

假如是選群組的話,你必須要事先先把 @IFTTT這個TELEGRAM帳號参加到那個群組,你後面設定選群組時才有東西選。

2.假如群組有其他機器人(TELEGRAM BOT)的話,機器人講的話不會觸發他,肯定要真人帳號才行。

3.TELEGRAM轉發到LINE這件事情,似乎不會真的太即時,實測應該都會等個2~5秒之類的

本文网址:

http://www.1cm8858.com/d/202062114418_1536_2198858193/home

Ten articles before and after

前面看到有人说用虚拟号码注册的tg在开启两步验证后帐户被抢注Writecode-电报telegram技巧分享

如何使用telegram?「」跨平台通讯软体及推荐心得@derak20的败家部落格:痞客邦-电报telegram技巧分享

telegram汤不热群电报群组广播-电报telegram技巧分享

科学网电报是何时传入中国-电报telegram技巧分享

【电赖大战】telegram微信之外-电报telegram技巧分享

telegram群组和频道的区别-电报telegram技巧分享

从[软件]Telegram-电报telegram技巧分享

telegram电报贴纸打包下载工具如何下载/-电报telegram技巧分享

破密:中国密码战史(1)以前发电报都用数字翻译成汉字-电报telegram技巧分享

telegram/电报遇到账号被禁this手机号码被禁了怎么解?-电报telegram技巧分享