IFTTTの無料サービス「Maker」を使ってRSSが更新されたらいろんなSNSでシェアする仕組みを作ってみた

どうも!西村祐二@大阪です。

弊社が運営しているこのブログサイト「Developers.IO」は、
AWS Summitのレポート記事やAWSのアップデート情報、リリースされたばかりの新機能のレビューなど
とても参考になる記事が日々投稿されています。

もっとみんなに知ってもらえるように、TwitterやFacebookなどで記事をシェアしたりしていますが、
毎日多くの記事が投稿され手動でシェアするのがすこし手間になっていました。
日々どうにかして簡単に自動化できないかなと思っていました。

そんな中、ウェブサービスを連携動作させるウェブ連携サービスのIFTTTが、
個人ユーザー向けに多出力で高機能なアプレットがつくれるIFTTTプラットフォームの「Maker」の提供を開始しました。

今回はこれを用いて、Developers.IOのRSSが更新されたら、
自動的にTwitter、Slack、Facebook、LinkedInへ投稿する
仕組みを作ってみたいと思います。

※SNSの設定により、周りに大量の通知が行われ迷惑になる可能性がございます。予め、公開範囲、通知設定等の確認・変更をお願い致します。

2017-05-31 21.25.05

IFTTTプラットフォームの「Maker」は今までと何が違うのか

今までの一般ユーザーは1入力1出力の仕組みしか作れませんでしたが
今回提供されたMakerでは、無料で1入力多出力の仕組みやフィルターの設定ができるようになります。

2017-05-31_18_47_05

作成手順

では、さっそく作っていきましょう。

RSSのURL確認

トリガーとなるDevelopers.IOのRSSはここから確認できます。
今回は、全体の「https://dev.classmethod.jp/feed/」を利用します。

2017-05-31 21.39.34

IFTTTへログイン

下記URLよりアカウント登録し、IFTTTへログインします。

2017-05-31_21_46_32

ログインしたら下のような画面に移動するかと思います。ユーザ名をクリックして「New Applet」を選択します。

2017-05-31_21_52_41

IFTTT Platformに移動

「New Applet」をクリックすると、Applet作成画面に移動します。今回は複数のウェブサービスを連携させるため、platformから作成します。

2017-05-31_21_53_14

IFTTT Platformの画面に移動します。

2017-05-31 21.53.47

※AppletはZapierでいうZapのようなもの。

IFTTT Appletを作成

トリガーとなるサービス、トリガーが発動したときのアクションの設定を行います。(今回フィルター設定はしない)

■トリガーの設定をする

ユーザによってRSSの設定を行うことを想定しており、
また、後からRSSのURLを変更可能にしたいので、Visiblityの「Chosen by user」にチェックしておく
「Hidden from user」にチェックしてAppletを作成すると、ユーザは初期で設定したRSSのURLから変更できないので注意。

2017-05-31_23_02_03

■アクションの設定をする

ツイートされたときの形式の設定は想定していないため、
Visiblityの「Hidden from user」にチェックしておく

2017-05-31_22_56_18


thenのアクションの部分をどんどん増やしていくことができ、
twitter、slack、facebook、LinkedInをアクションとして追加します。

■最後にAppletの名前と説明を記載し「save」する

2017-05-31_23_22_02

「save」が完了すると、private Applet として保存され
「Display preview」と「Configure preview」が表示されます。

「Configure preview」では設定どおりRSSのURLの設定が可能となっています。

2017-05-31_23_41_11

IFTTT Appletを使ってみる

※SNSの設定により、周りに大量の通知が行われ迷惑になる可能性がございます。予め、公開範囲、通知設定等の確認・変更をお願い致します。

「Trun on」をクリックすることで有効になります。 その際に、IFTTTからそれぞれのSNSへのアクセスを求められますので許可しておいてください。

IFTTT Appletを有効にしておくと、RSS更新時に下記のようにそれぞれのSNSで自動的に記事がシェアされます。
※RSSのキャッシュか、IFTTTのポーリング間隔か不明ですが、RSSが更新されてもトリガーが発動せず、
2,3件まとめてシェアされたり、リアルタイムに1つずつシェアされたりします。

2017-06-01 0.05.36

また、現在の使用回数や、最後に実行してから何分経過したかを確認することができます。
「Check now」を押すことによってトリガーの状態を手動で確認することができます。もし、RSSの更新があれば記事がシェアされます。

2017-05-31_11_41_50

フィルター設定について

今回、フィルターの設定は行っていませんがフィルター設定について記載しておきます。
Appletを作成する際にトリガーとアクションを設定することによって、
フィルターの欄が有効になり、フィルターの設定が可能となります。 また、右側にヒントを出してくれて親切です。

2017-05-31_22_55_11

現在の使用可能言語はJavaScriptのみとなっております。

使用制限について

何かしら制限があると思いますが、ドキュメントをみても明確な記載がなくわからない状態です。(探し方があまいだけかもしれません)
判明次第更新します。もしわかりましたら教えて下さい。

IFTTTとZapierの住み分け

今回提供された「Maker」によってIFTTTは無料で多くのサービスと連携できるようになり、かつ、今までの特徴である「簡単さ」と「わかりやすいUI」も合わさってかなりいい感じだと思いました。

何かウェブサービス同士を連携したいなと思ったら、まずIFTTTでできないか考えてみて、無理そうならLambdaやZapierの有料版を検討する流れが良いかと思います。

  • その他

・IFTTTにはSalesforceが対応していてうれしい。(ZapierにはSalesforceは有料版のみ提供)
・IFTTTはChatWork未対応。(Zapierは無料版から提供されているが、なぜかトリガーに設定することは不可。自分でコード書く必要がある)
(ChatWorkは使いやすくて好きだけど、こういうサービスに対応していないのが辛い、Slackは必ず対応しているから強い)

さいごに

いかがだったでしょうか。

今までは一対一のサービス連携しかできませんでしたが、今回提供された「Maker」では一対多数という形でサービス連携ができるようになりました。

運用や管理が不要で、コードも書かず多くのウェブサービスが連携できるのはとても魅力的ではないかと思います。
また、今回取り上げたサービス以外にも多くのウェブサービスに対応しているため
いろんな便利な連携ができると思います。
いい組み合わせが思いつきましたら、またブログにしたいと思います。