面白いサービスが始まった。すぐにアカウントを作り試してみた。ブログを書いたら自動的に Twitter に告知を報告したり、Pocket のエントリに特定のタグを付けると WordPress にエントリを作ってくれたりする。
Twitter や Facebook、Flickr! などと連携することは珍しくないが、仲介するというのは初めて見た。WordPress でエントリを公開したら Poecket と Evernote と Dropbox に保存し、Twitter と Facebook にその旨を投稿するといったこともできるし、その逆方向も可能だ。
サービスの API に依存しているので対応しているサービスしか使えないが、メジャーどころの SNS やブログは対応している。日本独自のブログホスティングサービス(はてな、Ameba 等)が対応していないのは残念だ。
後、残念だったのは Pocket から WordPress にエントリを起こしてくれるのは便利だが、引用の URL が IFTTT 経由の短縮URLなのが不便。もし IFTTT がサービスを止めたら元のページが存在していても 404 になってしまう。しかも、短縮URLなのでオリジナルのURLを類推することは難しい。
PCで引用したいページを見付けた場合にはブックマークレットで WordPress に下書きできるが iPhone ではできない(Safari で開いてブックマークレットを起動すればいいがレスポンスが悪いし不便)。なので、とりあえず Pocket に保存して後でPC上でブックマークレットを起動している。
TidBITS 日本語版 #1204/06-Jan-2014 今は IFTTT がインターネットを自動化、でも次はどうなる?
賢人の 言葉に「あなたがどこへ行こうとも、あなたはそこにいる」とあるが、あなたがどこへ行こうと、あなたの iPhone もそこにある。今自分が立っている場所の衛星写真が見られたり、夜中に全く初めての場所に到着してもその近くにレストランが見つかるという、比較的新しく手に入れた能力を、私たちはまるで当然のことのように思っている。
けれども、結局のところすべては情報の問題だ。素晴らしく便利な情報だけれども、ただの情報に過ぎない。私たちがまだ手に入れていないのは 自動化 だ。つまり、その情報を利用して有用なことが自動的に私たちの周囲に起こるようにできる能力だ。確かに Apple は iBeacon を使って Apple Store 店内で超局所的販売情報提供をしているし、既に Michael Cohen が記事“iiOS 7 で期待膨らむ iBeacon”(2013 年 9 月 18 日) の中でこのテクノロジーをさらに役立つ(より気味悪さの少ない)目的に応用できることを解説しているけれども、それらはすべて、他の人たちがあなたに代わって何かをコントロールする話だ。では、私が私自身の世界を自動化することが、どうしてそんなに難しいのだろうか?分かりやすく言えば、どうして私は自分のコーヒーメーカーのタイマーをセットしなければならないのか、ということだ。私が目覚める時間をコーヒーメーカーが知っているようにはできないのか? 私が自宅に帰り着く 30 分前に自動的に暖房のスイッチが入るようにはできないのか? それと、これは Pete に言いたいが、三日も前に飲み切ったミルクを買っておいてくれと頼むのに、どうして私は毎度毎度手でリマインダーをセットしなければならないのか?
これらのことの多くはまだまだ難しいだろうし、相当の時間が経たなければ実現は不可能だろう。けれども、少なくともインターネットの利用に関しては、いくつか興味深い自動化ツールを提供できる魅力的な基盤構造が既に存在している。その名を IFTTT と言い、あなたがそれに指示を出しておきさえすれば、あなたがどこにいるかを追跡してあなたのためにいろいろなことを開始するようにできる。現在それがどんなことをできるかを知るのも価値あることだが、どのような自動化された未来をそれが示唆しているかを考えるのも、意味あることだろう。
IFTTT よ、私のために働け — IFTTT は “If This, Then That” (これならあれを) の略だが、もう少し日常的な言い回しにすれば “If This (Happens), Then (Do) That” (もしもこれが起これば、その場合あれをせよ) という意味だ。IFTTT には 76 個の異なる “channel” があって、監視すべきイベントと、それぞれに対してすべき事柄が定められている。その大多数は、インターネット上のイベントを、もともとそれとは別のインターネットアクションとを、あなたの意のままに相互に絡み合うようにさせるものだ。あなたが一つのイベントを一つのアクションに結び付ければ、IFTTT はそれを “recipe” と呼ぶ。どんな recipe も他の IFTTT ユーザーたちと共有することができるので、既存の recipe を何千も揃えたライブラリが出来ていて、あなたはそれらを自分の必要に応じて改変して使うことができる。でもたいていの場合改変の必要はない。新規に recipe を作るのも簡単だからだ。
例えば、私は普段から Facebook や Twitter に投稿しているが、機知に富んだ自分の言葉がそれらの貯蔵庫に閉じ込められたまま二度と人の目に触れなくなるのは嫌だと思っている。そこで私は IFTTT の recipe を作って私の投稿を放置されていた私のブロクの中へコピーさせるようにした。また、エッセーを書いて私のブログの “important” カテゴリーに投稿した際には自動的に通知が Facebook と Twitter に行くようにしたが、”important” 以外のカテゴリーに投稿した際には Facebook のみにクロスポストされるようにした。
それからまた、私は自分の iPhone に強制的に日記をつけさせるために一連の IFTTT アクションを設定している。時には、Foursquare にチェックインすると自動的に私の Google Calendar にその時刻を記したイベントが追加されるので、一週間を振り返って自分がいつどこにいたかが一覧できる。また、私が Evernote の中に作っている inbox ノートブックに Foursquare チェックインを記録させることもでき、そうすれば日々つけている音声やテキストのメモと並んでその記録が入り交じるようになる。いつでも好きな時に recipe をオフにすることができ、私は自分のライブラリの中に二十個ほど recipe を用意してその中から気分に応じてオンにして使うようにしている。
IFTTT が iOS 用に初めてリリースされた時点で、他のいくつかの iOS アプリとの間にいくらかの統合が含まれていた。例えば Contacts アプリや Photos アプリと統合されていた。だから、iPhone で撮った新しい写真を Evernote inbox へ自動的に持ち込むことも可能になった。(あるいは、さらに言えば、危険をものともせずどんな公共の場所へでも IFTTT の channel がありさえすれば投稿できるようになった。)また、Contacts に新しい人が追加される度に自動的にその人にあてて自分の連絡先情報を添えつつ「お会いできて嬉しいです」メッセージを送るというアクションを思い付いた人もいた。
IFTTT で最も興味深い点は、いろいろなイベントやアクションを自分の思うままに組み合わせられることだ。どんなイベントでも、IFTTT が理解できる形で切り分けることができさえすれば、そのイベントをあなたの好きな channel に振り向けることができる。一番難しいのは IFTTT が何を理解できるかを見極めるところだが、たいていの場合そこには回避策がある。例えば、TidBITS channel は用意されていないけれども、出来合いの RSS Feed channel を使えば、TidBITS ウェブサイトが更新される度にアクションを生成させるようにできる。行き詰まったら、共有 recipe のライブラリを眺めて、盗めるアイデアがないか探してみるとよい。
大多数のソーシャルネットワークは IFTTT の channel として使える(目立つ例外は Google+ だ)ので、あなたの代わりに情報をさまざまの形で公開共有させることが可能となる。最も人気ある IFTTT recipe の中には、iPhone で撮った新しい写真を電子メールで送信する(Photo Stream を信用していない人たちがどれほど多いかということだ)もの、毎日の天気情報を SMS で受信するもの、Facebook でプロフィール写真を更新すれば Twitter でも自動的に変更するもの、などがある。
まずは使ってみよう — IFTTT はサインアップするのも使用するのも完全に無料だし、その iOS 用アプリも無料だ。(同社が 20 人のスタッフを抱えていてまだ増員中であることを考えれば、彼らがどうやってお金をもうけようとしているのか、彼らの長期的生き残り戦略は何か、という疑問が浮かぶ。今のところ彼らはベンチャーキャピタルによって食いつないでいる。)
まず ifttt.com で新規のアカウントをセットアップし、それから一番上にある Channels リンクをクリックする。
手動で channel を有効化しておかなければ recipe で使えるようにならないし、IFTTT が提供しているたくさんの channel のうちあなたに必要となるのはほんの少数だろう。全部を使おうとするのでなく、あなたが以前から使っているサービスに関連のある特定の channel をいくつかクリックしよう。あなたが Facebook のヘビーユーザーなら、その channel をオンにしよう。私と同様、LinkedIn ってどうやって使うのか全然分からないなら、それはオフにしておこう。ただし例外は、あなたの iOS デバイスと統合する channel だ。デバイス自体の上では、それらの channel を有効にしておかねばならない。
それが済んだら、既存の recipe をいろいろ眺めて、IFTTT のトリガーがどんな風に働くのかアイデアを得るのもよいし、いきなり自分用の recipe を作ってみるのもよいだろう。Create をクリックすれば、利用できる channel のリストが表示される。そこで大きな青い “this” という単語をクリックすれば、トリガーとなる channel が表示される。
それから channel を一つ選べば、その channel で使えるトリガーのリストが出る。例えば、現在のところ Facebook channel は “new status message” や “you are tagged in a photo” など 13 個の監視すべきイベントを提供している。そこからトリガーを一つ選べば 何を 探すべきかをあなたが指定するためのフォームが出るが、このフォームはイベントにより変わる。次に channel リストへ(大きな青い “that” という単語をクリックして)戻る。これもまた、どの channel の中のどのイベントも、他のどこにあるアクションでも呼び出すことができるからだ。何かを起こさせたい channel を選んでから、アクションを選び、ここでもまたフォームに記入する。全部で七つのステップだが、すべての手順は一つの長い、縦にスクロールするページの中で案内される。
そこで Create Recipe をクリックすれば、もう出来上がりだ。何かが起こるのを待って、それが起これば結果として何かをする、そういう recipe を一つあなたは手に入れた。説明が複雑に聞こえても、実際にポイント&クリックしてみれば何でもない。経験豊富な読者の方は、私が説明しているものが インターネット用のビジュアルなスクリプティング言語 だともうお気付きだろう。だからと言って怖がる必要はない。これは、私が使ってみたことのあるうちで最も単純なスクリプティング言語で、ただ IF-THEN 構文を含んでいるのみだ。でも、もしも混乱してしまったなら、公開されている recipe から始めて、それをあなたの必要に合うように変更して使えばうまく行くはずだ。
現実世界はどうか? — IFTTT には興味深い channel や recipe が既にいくつかあって、現実世界に自動化を適用することができる。何かのイベントに参加するつもりだけれども長居はしたくないので立ち去る口実が欲しいって? ならば、秘密の脱出用単語を文字で打ち込めば電話が鳴るという IFTTT recipe を作っておくか、あるいは Date and Time トリガーを使って指定の日時に鳴らすようにしてもよい。電話から聞こえる声が text-to-speech の合成音声であることを知っているのはあなただけだ。(ちなみに、どんなトリガーの結果も、text-to-speech の合成音声で読み上げることができる。)
位置情報機能を使えば、IFTTT にはさらに確固とした現実世界の用途が開ける。もちろん、仕事場を出ようとする時に大切な人に電子メールする recipe を作ることもできるけれども、あなたが(あるいは Elvis が)実際に建物を出た瞬間にテキストメッセージを送るようにすればどんなに良いだろうか? 位置情報機能を IFTTT に組み込むのは難しくない。地図の上であなたがトリガーを引き起こしたい場所を見つけ、その位置からどれだけの半径の範囲を指定したいかを決めておいて、あなたがその範囲に入ったり出たりすれば起こしたいアクションを、何百もある中から一つ選べばよいだけだ。IFTTT ではこの指定の作業をウェブブラウザからでも iPhone からでもできるようにしているが、その recipe のトリガーを実行できるのは iPhone の位置情報のみだ。
確かに、iOS の Reminders アプリを使ってもアラートを出させることができるけれども、IFTTT ならばあなたが仕事場を出る時に帰りに食料品店に寄って買い物するというリマインダーをテキストメッセージとしてあなたに送ることもできるし、あなたの大切な人にあてて何か買い物して帰ろうかと尋ねるメッセージを送ることもできる。
IFTTT はまたいくつかの電気製品と統合してホームオートメーションを提供できる。どんな電気製品でも Belkin WeMo スイッチに連結させれば、IFTTT があなたの好きなようにその電気製品の電源を入れたり切ったりできる。これこそ、魔法のコーヒーポットの入り口だ。あなたが家を出る時に “power down” アクションを送るように IFTTT に命じれば、もう二度とポットを空焚きする心配はない。Belkin WeMo 以外に Philips Hue スマート電球にも対応しているので、実質的に家全体の電源を IFTTT で入れたり切ったりすることは可能だが、ただしそのためには家中のスマート電源やスマート電球に数百ドルほど投資しなければならないだろう。
けれどもこれは単なるお試し段階に過ぎない。そう、あなたがフィットネス追跡器 Jawbone UP を持っていれば、朝目覚めればコーヒーポットの電源が入るようにできる。ただしそれは、コーヒーポットにただ電源が入るだけでなく、その先のこともできなければ意味はない。それから、スマート電源スイッチを使って外出するとすべての電気製品の電源が切れるようにすることはできるけれども、バックアップ用バッテリが付いていない電子機器があって帰宅する度にプログラムし直さなければならない事態になっても私は知らない。
そういったことは、IFTTT チームが悪いのではない。彼らが成し遂げたのはただ、電子メールからあなたの現在位置のインターネットデータまでさまざまの入力を受け入れて、それをもとにさまざまの自動化されたアクションを呼び出すことのできる、組み合わせの能力のみだ。問題があるのは、データを IFTTT の中へ持ち込むことのできる標準規格がまだ存在しないことで、そのため彼らはどんな機器にでも対応できるように独自の解決法を編み出さなければならなかったのだ。
ミルク配達自動化問題 — 私はもう何年も前から International Consumer Electronics Showに参加して TidBITS に報告記事を書き続けているので信頼して頂けると思うが、Automatic Milk Problem (AMP、ミルク配達自動化問題) は歴然たる問題であり、空飛ぶ自動車が毎度約束されるけれども決して実現しないテクノロジーであるのと同等のレベルのことと言える。
約束されるのは、いつの日か「賢い冷蔵庫」が完成して、ミルクが減ってきたことを感知して自動的にメッセージを発し、あなたの自宅にミルクが配達されるようになるだろうというものだ。(現状で最も AMP に近いのは Amazon を購読するやり方だが、それはスケジュールに従って配達されるだけに過ぎず、実際にミルクが減ったから配達されるということにはならない。)理論的には、そのためのきちんとした統合さえあればこの問題はもう何年も前に解決されているはずだ。けれども実際問題としては、それに対応する特殊な冷蔵庫を購入するにはキッチン全体より高くつくし、メーカーの認可を受けたミルク販売業者が配達しているのは San Francisco 市内の五ブロック平方の範囲内のみというのが現状だ。リンゴも減ってきたって? そっちはもっと無理だ。
その代わりに私たちが必要としているのは、今まで通り頭の悪い冷蔵庫と、安価なセンサーだ。ミルクの1ガロン容器は、満杯のときと空のときでは重さが違う(リンゴ専用の野菜室も、空のときと数センチブッシェルのリンゴが入っているときでは重さが違う)ので、本当に必要なのはたくさんの重量センサーだ。ミルク用に一つ、リンゴ用に一つ、他にもあなたが自動的に補給させたいものに一つずつだ。それらのセンサーを全部一つの半導体機器に繋いで、そこから他のデバイスへ接続させる。この機器は硬貨ほどの大きさで十分だろう。(ここの話はすべて、俗説を叩く人たちの話をもとに私が推測したことだ。)そしておそらく、十分な数が製造されるようになれば硬貨一枚程度の価格となるだろう。(これも私の推測に過ぎない。)
この Automatic Milk Problem は、未だに満足できる解決をみていない。その理由は、どの会社もオールインワンでミルクの問題を解決する製品を売ろうとするからだ。私たちが必要としているのは、メッセージを IFTTT のようなサービスに送ることができる、ごくちっぽけなデバイスなのだ。そして、その会社がそのメッセージを数十社の配達業者に中継するための channel を書くだけでよい。もしもそれがあなたのお住まいの地域で働かないなら、その代わりにあなたの帰宅時にミルクを買うリマインダーを電子メールで送るようにすればよいではないか。重量センサーから出されるメッセージは、何らかの規格を使っている限り、どんなものでもよいはずだ。
(電子メールというのは素晴らしい標準規格だが、あらかじめインターネットに接続されているデバイスでなければ使えない。そうでないデバイスについては、おそらく何らかの 低電力 Bluetooth ネットワークを使って中心的なデバイスに接続し、そのデバイスが信号を電子メールに翻訳するようにすればよい。これもまた、低電力 Bluetooth が非常に興味深いものである根拠の一つだ。この問題に対しても非常に多くの解決法を作り出してくれるからだ。)
いったんこの基盤構造が築かれて、何らかの自動化メッセージングシステムの標準規格が出来れば、もはやこれはミルクだけの話に止まらない。自動車が送ったメッセージによってあなたの目覚まし時計がいつもより 10 分早く鳴り、通勤の途中でガソリン補給ができるようになったり、さらには前夜にあなたにテキストメッセージが届いて早めに寝るよう促されたり、といったことを想像してみよう。携帯電話からは、他のどのデバイスを夜のうちに充電しておく必要があるかの知らせが届く。タブレット機からは、あなたが差し込み忘れたケーブルを今日は持って行くようにとリマインダーが出たり、そのケーブルがまだベッドの脇に置きっぱなしになっていると知らされたりする。
このようなことが可能になるためには、そうしたすべてのデバイスが相互にやり取りできしかもあなた自身のコントロール下にあるようにできる、IFTTT のような(また、同じ標準規格に従う限りにおいて、 数多くの現行および将来の競合相手たちのような)システムこそが肝要だ。そうなれば、新たな自動化方法やリマインダーが欲しければ、ただ recipe を一つ追加するだけでよい。リマインダーが多過ぎて困れば、いくつかをオフにするだけでよい。数限りない小売業者たちが、あなたに自社の製品を買わせようと、競って自動化の処理を提供するようになるだろう。そもそも電子メールのメーリングリストの目的はそのようなものだったのだから。けれども IFTTT のタイプのシステムでは、あなたにコントロールを任せるところにその主眼があり、あなたを膨大な数の宣伝用メッセージやリマインダーの受動的な受け手に貶めようとはしない。
そして同じくらい明白なのは、自動化の進んだ生活に慣れる必要もあるということだ。いつもより早く目覚まし時計が鳴ればデバイスから説明を受けていない人は混乱してしまうかもしれないし、電子機器に子供扱いされることにムッとしてしまう人もいるかもしれない。人によっては、自動化による便利さよりも自らの自主性が失われることの方が大きいと感じるかもしれないし、一方では多くのロボットを支配するのが嬉しい人もいるかもしれない。IFTTT はあなたにコントロールを手渡すけれども、それに伴って複雑さが増すことは万人の好みに合うとは言えないかもしれない。あなたがどのようなシステムをセットアップするにしても、やはりそれは何百もの会社が競ってあなたに通知やイベントを送り付けようとする既存のパラダイムと共存して行かざるを得ない。このシステムにある意味で過剰な情報が組み込まれていることは否定しようがないけれども、全体的に見て、私としてはこのようなシステム、つまり、企業の宣伝部局でなくあなた自身がイベントやアクションをコントロールできるシステムの方を、信頼したいという気持ちがずっと強い。
その一方で… — いろいろ非現実的な理論を述べ立ててきたが、だからと言って IFTTT が現時点で出来ることの価値を見下そうとしている訳ではない。もしもあなたがご自分のインターネット習慣を自動化したいという強い欲求を持っているなら、あるいは、歩いて部屋に入ればすぐ自動的に部屋が明るくなるという考え方そのものが単純に気に入ったなら、IFTTT を使ってあなたに出来ることが現在既にかなりたくさんあるし、それは私が今までにデモを見たことのあるどの「スマートホーム」製品よりずっと安い価格で手に入る。それに何より、インターネット上にあるものをあなたのレーダーが捉える方式に一歩進んだコントロールが可能だという事実自体、決して小さなことではない。
まずはゆっくり、少しずつ始めてみることをお勧めする。まずは単純に、他の人たちが IFTTT を使って何をしているのかを眺めてみることだ。そうすれば、あなたが今度「こんなことが起こった場合に、あんなことが起こればいいのになあ」という問題に出くわして、うずうずした気持ちになった際に、かゆい所に手が届く素晴らしいツールが使えるようになっていることだろう。