iftttはシンプルでパワフルなオンラインのタスクスケジューラ。
「もし□□(This)が△△になったら〇〇(That)する」という風に、□□にタスク、△△に実行条件、〇〇に実行アクションをステップバイステップで設定していくのが特徴です。
タスクとアクションは、あらかじめ用意されているさまざまなサービス(チャンネル)から選択して、それらを組み合わせることでひとつのタスクが完成されるようになっています。
例えば、指定したRSSフィードに「サービス」というキーワードが含まれていたらTwitterにRSSのエントリータイトルとURLを投稿するというタスクを作ってみましょう。
まずは「Create Task」をクリックしてタスクを追加し、タスクとなるチャンネルにRSSを選択。
条件として「New feed item matches」を選択。
キーワードとURLを指定。
次にアクションとなるチャンネルにTwitterを選択。初回はTwitterチャンネルはユーザー情報がアクティブになっていないので、Twitterへアプリ認証を済ませてチャンネルをアクティブにします。
実行アクションとして「Post new tweet」を選択。
Tweetの内容を指定します。内容にはそれぞれいくつかの変数を使うことが可能です。例えば以下の例では、{{EntryTitle}}はRSSのエントリーのタイトルが、{{EntryUrl}}にはエントリーのURLが、それぞれTwitterにポストされる際に置き換って記述されます。
最後に「Create & Tune on」でタスクが完成してダッシュボードに追加されます。
それぞれのタスクはダッシュボードから編集/削除/無効など一元管理出来るようになっています。
さてこのサービス、デザインやUIが秀逸なだけでなく、あらかじめチャンネルという概念で使用する外部サービスとそれに対応する条件を用意して、ユーザーにそれらを組み合わさせながら利用させることで、非常にフレキシブルなサービスを実現しているというところが実によくできていると思います。
もちろん上記の例は一例であって、チャンネルと条件の組み合わせによって無数のタスクが利用できることは言うまでもありません。