Telegram
最开始我的通讯工具是 WhatsApp,后来其被 Facebook 收购,同时后开 Apple 也推出了 iMessage,所以就换到了 iMessage,我一向只在手机上安装尽可能少的 App。而后来放弃 iMessage 是因为上面的垃圾信息泛滥,Apple 很长一段时间的不作为让我不得不放弃,在考虑是否需要换回 WhatsApp 时 Facebook 的隐私问题让我放弃了。我已经不记得我是从哪里听说的 Telegram,正巧上一家公司的主要共同工具也是 Telegram,所以就慢慢用的多了起来,后来熟悉了 Telegram bot 之后更是喜欢 Telegram 了。
我喜欢 Telegram 是因为以下几个特性:
- 多端登录
- Saved Messages
- Telegram Bot
- 用户体验
多端登录
因为我日常使用两个手机,身边也放着 iPad,工作由基本上在 Macbook 上,所以需要经常在多个设备之间传送资料,Apple 设备通过 AirDrop 没有任何问题,但是因为另一台手机是 Android,家人也习惯用 Windows 设备,所以跨平台传送是非常麻烦的,但是 Telegram 完美的解决了这个问题,因为可以同时登录所有的设备,所以我在我所有的设备上都登录了 Telegram,无论在哪个设备上看到不错的文章或者讯息想要保留,都会发送给 Telegram 的 Saved Messages,可以说 Saved messages 是一个不错的收藏夹工具。
Telegram 无法解决局域网大文件的传输,毕竟所有的讯息都会经过它的服务器,但这也并非它的设计所在,所以不多谈。
多端登录以及消息同步所带来的弊端就是没有默认的端到端加密(E2EE),Telegram 在官网中有声明为什么没有默认开启 E2EE,一个原因就是因为多端登录和群聊使得 E2EE 的实现难度很大,同时 Telegram 也指出 Apple 的 iMessage 的 E2EE 实际上非常的 useless:
Most of our competitors (notably, WhatsApp and iMessage) solve these problems in ways that make their end-to-end encryption useless.
我觉得这也算是一种妥协,在讯息加密和用户体验上的妥协。当然市面上也有更好的选择,例如主打 E2EE 的 Signal 等。
EH ForwarderBot 和分组
EH ForwarderBot 是一个开源的消息转发工具,可以将微信、Telegram、QQ 这些平台的数据相互转发,我主要是用这个工具来把微信的消息来转发到 Telegram 上,这样我就不需要在 iOS 上安装微信,也算是曲线实现了微信的多端登录。
当然也会有一些限制,例如只能支持基本的消息转发,红包什么的自然是不可行的,所以它并不能完全取代微信,还是需要一台手机来安装微信,使用收款付款等功能。
但是 EFB 的优势对于生产力来说有着很大的提升,首先国内的大部分的服务都可以通过微信触达,例如银行的公众号会发来每一笔消费记录,快递公司的公众号也会推送绑定手机号的快递进度,而 EFB 的 Telegram bot 有一个功能就是对所有人进行分组,你可以把公众号全部放在一个分组中接收消息,所以在我的 Telegram 里面就有了这样两个分组,一个用来接收所有银行的账单,一个用来接收所有快递的通知。
另外我很讨厌微信里的群聊,所以在 Telegram 里面创建了一个群,把微信所有的群聊群都放进去。因为可以对公众号进行分组,所以我在微信里关注了大量的公众号,通过 Telegram 将他们进行分类,在通过 RSSHUB 将这些公众号的文章转成 RSS 在 Reeder 4 上阅读。
Channel
Channel 更像是一个私人的朋友圈,你可以在里面发布一些自己喜欢的内容,或者说也是公众号,不客观 Not Objective则是把 Channel 完成了 Podcast 服务。我用 Channel 并不多,自己也创建一个 Channel 来放一些自己的想法。
自动化
Telegram bot 可以说是非常高效的工具,很多年前用户体验就开始推崇对话式的交互方式,虽然并没有真的火起来,但是 Telegram bot 之类的聊天软件中的机器人实际上扮演了这样的角色。我目前最常用的几个 bot 都是自己创建的:
- Feedbin bot
- Linkding bot
- SMS bot
这几个 Bot 我都是通过设置 Webhook 的方法,然后将数据推送到 Huginn 服务中作处理。
Feedbin bot
Feedbin 在这里是一款稍后阅读(Read it Later)服务,严格来说它应该是 RSS 服务,但是提供了类似于稍后读的服务。Feedbin 没有 Android 客户端,而 Android 上也无法找到像 Reeder 4 这么优秀的 RSS 应用,即便是有也不支持 Feedbin 的 Pages 接口。
因为我有两台常用的移动设备,一台 Android,一台 iOS,iOS 中我没有安装任何国产的 App,因为很少用到,iOS 上大部分都是最常用的工具就是阅读和效率 App,微信则是安装在 Android,因此有时候不可避免的会出现在 Android 看到一篇不错的内容,想要放到 iOS 里的稍后读 App,以往的做法依然是把链接分享到 Saved Messages,然后在到 iOS 中手动加入到稍后读 App 中。
现在的方法是通过 Telegram bot 然后直接调用 Feedbin 的 API 来保存新的文章,直接把需要保存的文章链接发送给 Bot 就可以了,而且因为多端登录,所以实际上可以在任何设备上很轻松的保存文章了。
Linkding bot
Linkding 是一个开源的书签管理工具,在新版中提供了 API,于是也类似于 Feedbin bot 的用法,通过一个 bot 来保存一些网络书签。只是 Linkding 的 API 设计的感觉不是特别合理,它有三个必须的字段,这就需要解析每次发送过去的信息,不过我为了图方便,其他两个信息都在服务端写死了,Bot 只需要提供必要 URL 即可。
SMS bot
这个 bot 实际上是把 Android 上的短信和来电信息推送到 Telegram 中,对我个人来说,Android 手机可有可无,虽然微信和支付宝等国内常用的 App 我都安装在这部手机上,但日常必需要使用的还是 iOS 设备。另外就是 iOS 本身很差劲的垃圾短信拦截,虽然有不错的工具可以缓解,但是对比起来小米的短信拦截和分类还是有很大差距。所以我用来注册一般网站时都会使用 Android 的号码。所以就会出现有时候在外面没有带 Android 手机,但是有特别需要注册一个需要手机验证码的网站,那么此时通过 Telegram 来接收短信就可以很好的解决这个问题。
Android 上使用 Tasks 来获取短信通知信息,然后通过 HTTP Post 方法把短信转发到 Telegram 上。我最初是直接使用 Telegram 的 API 来推送,但是因为 Proxy 经常出问题,所以会导致有时候信息无法准确的送达。现在的方案是通过一个服务器进行中转,通过 POST 请求把短信发送到对应的服务器,然后在通过服务器转发给 Telegram。
这其中的风险就是如果被中间人攻击,那么短信的信息可能被泄露,所以需要保证整个链路的安全。