Ryan Wang's Blog

Ryan Wang

玩玩 IFTTT

7904
2019-10-12
玩玩 IFTTT

很早就听说过 IFTTT 这个神器了,但是迟迟没有上手。这次趁有空闲时间,简单把玩了一下,发现确实可以带来一些便利。

什么是 IFTTT

IFTTT,是一个新生的网络服务平台,通过其他不同平台的条件来决定是否执行下一条命令。即对网络服务通过其他网络服务作出反应。IFTTT 得名为其口号“if this then that”。

IFTTT的官方念法类似英语单词“gift”的“ift”,即不要发“g”的音。(摘自维基百科)

实现原理

IFTTT 基于任务的条件触发,类似编程语言,即:“若 XXX 进行 YYY 行为,执行 ZZZ。”。每一个可以触发或者作为任务的网站叫做一个 Channel,触发的条件叫做 Triggers,之后执行的任务叫做 Actions,综合上面的一套流程叫做 Task。(摘自维基百科)

几个小案例

下面几个我使用的小案例,包括自动分享博文到微博或 Twitter 等社交平台,还有推送 Halo 新版本到 Telegram 或者 Twitter 等等。(注册 IFTTT之类的就不多说了,网址是:https://ifttt.com

1. 自动分享新博文到各种社交平台。

其原理是获取博客的 RSS 地址定时更新,如果有新的博文,就会触发推送到各个社交平台的事件。

点击右上角头像,选择 Create。就会出现新建一组流程的界面,如下图:
image.png

点击 This,会出现很多 service
image.png

各个 service 当中会有一些可供选择的事件。这里我们找到 RSS Feed
image

然后点击这个大大的 RSS 图标,会出现一些我们可以选择的事件,如下图。

image.png

可以看到,这里有两个事件可供我们选择,第一个是,一有新的更新就会执行下一个操作,也就是执行 That 中的事件。第二个是,当新的更新匹配到自定的关键字才会触发下一个操作。这里我们选择第一个即可。

image.png

这里我们需要输入我们博客的 RSS 地址,如:https://ryanc.cc/atom.xml。然后点击创建 Create trigger(触发器) 即可。

然后就会回到下面这个界面,可以看到 This 前面有个 RSS 的图标,这就说明触发器以及创建好了,下面就需要选择触发之后的事件了。
image.png

下面以 Twitter 为例,也就是当博文有更新时,自动推送到自己的 Twitter 账户,发表新的动态。第一次使用 Twitter 这个 service 的时候,需要登录你的 Twitter 账户。
image.png

选择 Twitter 之后,可以看到四个事件。这里我们选择第一个(发一条新的推)即可。
image.png

之后点击 Create action 即可。
image.png

到此这个流程就创建完毕了,接下来就可以用同样的方式创建推送到其他社交平台的流程了。比如微博,Facebook,Ins 之类的。当然,微信朋友圈,QQ 空间之类的就别想了。

2. 自动推送 Github 项目的新版本信息到各种社交平台

突然发现这个和上面那个案例是一毛一样的...那就不详细赘述了。

这里可能会问,博客有 RSS 功能,那么 Github 怎么办?其实 Github 针对各个项目也提供了 RSS 地址的。比如 Halo:https://github.com/halo-dev/halo/releases.atom

如果你想关注其他项目的版本动态,只需要改一下地址即可,例如:

我使用这个主要是方便推送 Halo 的更新信息,可以自动推送到 Twitter,以及 Halo 的 Telegram Channel

最后

玩一圈下来发现,在国内能玩儿的其实就那么几个,当然如果你在用很多国外的应用,这个服务还是挺方便的。当然,IFTTT 可以做的远不止此,还有诸如 EvernoteGithubGoogle DriveYouTubeWordPress 等的 service,还有很多玩法需要去探索啦。