「ifttt」はYahoo! Pipesで挫折したオイラにも使えたよ!

http://ifttt.com/を使ってみました。
Yahoo! Pipesと似てるらしいですがこちらの方がもっと単純明快みたい。Yahoo! Pipesの方が汎用性高くて高機能なんでしょうけど、以前試してみた時は非常に取っ付きにくくて挫折しました…。iftttはちょっとしか触ってない感じで言うと汎用性低いっぽいけど非常にとっつきやすいです。ちなみにサイトのタグライン(キャッチコピー)は「Put the internet to work for you.」となってます。Yahoo! Pipesの方のタグラインは「Rewire the web」ですね。

まず「ifttt」が何の略なのかですがトップページ上部のLearn moreを押すとAbout IFTTTというページでそこに色々説明がありました。

「if this then that」の略ってことみたい。つまり「もしthisならthatせよ」ってことですね。で、iftttではこの「this」をTriggerと呼んで「that」をActionと呼ぶと。で、それらを合わせた「if this then that」をこのiftttではRecipeと呼ぶという説明です。

で、iftttを何と読むかもそこに書いてありました。

IFTTT is pronounced like “gift” without the “g.”
ギフトの「g」無しなので「イフト」って読むみたいよ。

試しにifttt触ってみてtaskを一つ作ってみました(というかRecipeね)。下記に書いたようなことはプログラマの方にとっては何と低級で曖昧な処理をめんどくさい手法で実現してるのかしら…?とか思われるかも知れませんが…。クリックとコピペだけでほんと簡単にできちゃったのでスゴイでよー!。

とりあえずアカウント作ってサンプル的なRecipesというのを見ると

  • When Facebook profile picture changes, update Twitter profile picture.
  • If its raining tommorow, send me an email! #weather #gmail
  • When a new album is added to Amazon's Top Free MP3 Albums, send me an email.
  • When a new book is added to Kindle Top 100 Free eBooks, send me an email.
  • Thanking people in Twitter when they mention you or RT

というようにYahooPipesでやりたかったようなことのサンプルも豊富っぽい!

例として自分のFlickrの写真が他人にFavoriteされたらtwitterにそれを送る、というのを作ってみます。

ifttt
「Create a new task」を押してタスクを作ります。

何か処理を決定する毎に下にスクロールして新しく指定する処理が表示されるインターフェースで非常に分かりやすいです。

ifttt
まずは、もし「this」ならば「that」する、の「this」を定義します。

まずはtrigger channelを決めます。

ifttt
↑上のように各種サービスから選べます。(ほんとはFlickrのAPIか何かでfavされたかどうかを取得した方がいいのかもですが、これ出来るかよく分からないのでFlickrのfeedを加工してみることにします。)

各種サービスの中からFeedを選択。さらに「New feed item matches」を選択します。つまり新しいfeedで指定したワードにmatchするとtriggerがfireされる、ということになります。

ifttt_04

FlickrのRSSをのURLを入れて、keywordには「added as a favorite.」とします。これによりこのfeedのタイトルと写真へのURLが取得できるためです。

ifttt
↑今度は「that」する、のthatを定義します。

ifttt
↑「that」の方のチャンネルも同様。で、今度はtwitterを選択します。すると、twitter認証画面が表示されるので認証します。
そしてtwitterでどんなactionをするかを選びます。Post a new tweet, Post a tweet with image, Add user list, Update profile pictureの中から選びます。今回は「Post a new tweet」を選択。

ifttt
何をつぶやくか、ですが、

Flickr : {{EntryTitle}} : {{EntryUrl}} : {{EntryPublished}}
としました。そのFeedのEntryTitle(この場合はどの写真名がfavされたかというfeedのタイトル)とEntryUrl(この場合はfavされた写真のURL)とEntryPublished(feedのdate)がtwitterにつぶやかれます。defaultだと「{{EntryTitle}} {{EntryUrl}}」の2つのみですが、上記のtext formの右横に(上記画像だと見えないですが)「+addins」というプルダウンメニューが表示されています。選択肢には、

  • Entry Title
  • Entry URL
  • Entry Author
  • Entry Content
  • First Image URL
  • Entry Date
  • Feed Title
  • Feed URL

というのがあって、feedの何をどう挿入するかを選択できます。Entry Dateを選択した所、{{EntryPublished}}という括弧をAddinするか?と聞かれるのでAddinボタンを押すとその括弧が挿入されました。で、「Flickr」とかセミコロンを手動で挿入して体裁を整えました。

その結果が下記のつぶやきです。Flickrのダミーアカウントを作って自分の写真をfavしてみました。

https://twitter.com/#!/1vv4/status/174035806925750272

Flickr : PRADA Japan Tokyo Omotesando:day ver. added as a favorite. : http://bit.ly/wrQ00D : February 27, 2012 at 04:38PM

ログインしたページのtasksページ(ダッシュボード?)には下記のように表示されます。
ifttt8
if (feedアイコン) then (twitterアイコン)、てな感じです。さらに、

Quick reminder: Tasks are checked once every 15 minutes. When you turn a task off then back on, it resets as if you had just created it.

↑てことなので、taskは15分に1回の動作らしいです。

あと、twitterをtriggerにしてtwitterをactionにすると永久にピンポンして終わらないtaskが出来ちゃいそうな気もしますが、そういうのはどうなんでしょう?よく分からないすね…。

追記:

http://updates.ifttt.com/post/31945038639/upcoming-changes-to-twitter-triggers
In recent weeks, Twitter has announced policy changes* that will affect how applications and users like yourself can interact with Twitter’s data. As a result of these changes, on September 27th we will be removing all Twitter Triggers, disabling your ability to push tweets to places like email, Evernote and Facebook. All Personal and Shared Recipes using a Twitter Trigger will also be removed. Recipes using Twitter Actions and your ability to post new tweets via IFTTT will continue to work just fine.
*snip*
*These Twitter policy changes specifically disallow uploading Twitter Content to a “cloud based service” (Section 4A https://dev.twitter.com/terms/api-terms) and include stricter enforcement of the Developer Display Requirements (https://dev.twitter.com/terms/display-requirements).

てことでTwitterをTriggerにしたRecipesは2012/09/27に全廃。