#topicpath ** IFTTT [#h27794e5] *** IFTTT に関する基礎知識 [#h3efc064] + IFTTTとは~ "IF This Then That" の略で、IoT を簡単に実現するための枠組み(フレームワーク)である。~ ~ + IFTTT 用語 -- アプレット~ 以前はレシピと呼ばれた。プログラムのこと。IF This THEN That の This と That を指定したもの。~ ~ -- サービス~ 以前はチャンネルと呼ばれた。This と That は、インターネット上のサービスを経由する。そのサービスのこと。~ サービス一覧は[[こちら>https://ifttt.com/services]]で参照できる~ // 単にIFTTT が利用できるだけでなく、各 IFTTT ユーザーが IFTTT のサイトに登録して初めてチャンネルとなる。~ ~ -- トリガー~ This にあたるもの。サービスごとにどのようなトリガーが実現可能かが決まっている。~ ~ -- アクション~ That にあたるもの。これもサービスごとに提供されているものが決まっている。~ ~ + IFTTT を使えるようにする。~ ++ [[IFTTTのサインアップサイト>https://ifttt.com/join]]に登録する。 ++ 各チャンネルの使い方を勉強する。~ ~ *** webhooks サービス [#ma07c03f] + 考え方~ ++ トリガー~ 特定の URL にアクセスし、HTTP の POST を使って、json ( Javascript Object Notation) ~ データを送信することで、トリガーとして機能する。~ ~ より正確には、[[IFTTTのサイト>http://ifttt.com/]] にsign in (ログイン)し、My apletts からServicesタブ~ を選択。その後、検索まどに webhooks を入力して、これを選択し、"Connect" ボタンを押す。~ 右上の Documentation をクリックすると情報が得られるのでこれを参照するとよい。~ そこに書いてあることは、次の~2点である。~ ~ +++ アクセス先~ https://maker.ifttt.com/trigger/{event}/with/key/hogehoge {event}は、後ほど命名するアプレットごとの名称であり、~ hogehoge の部分は、ユーザーごとに割り当てられた文字列であって、あらかじめ表示されている。~ hogehoge の部分は、webhooks に "Connect" するごとに変化する文字列であるので注意する。~ ~ +++ 送信データの形式~ { "value1" : " ", "value2" : " ", "value3" : " " } 空欄のところに文字列を入れる。これがアクションに転送される。~ optional とあるので、必須ではない。~ ~ ++ アクション~ IFTTT から、特定の URL に GET または POST でデータを送信してくれる。~ ということは、IFTTT から http でアクセスできるような準備が必要になる(?)。~ ~ 以下では、webhooks サービスのトリガーの使い方についてまとめていく。~ ~ + 手順1-準備- ++ Services から webhooks を選択する。~ ~ ++ Connect をクリックする。~ ブラウザを閉じても"Connect" の状態は維持される。~ ~ ++ 右上のDocumentationをクリックして、上述の hogehoge の部分を確かめる。~ ~ + 手順2-アプレット作成- ++ My Apletts をクリックし、New Applet をクリックする。~ ~ ++ +this の部分をクリックし、webhooks を選択する。~ ~ ++ "Receive a web request" をクリックする。~ ~ ++ "Event Name" の入力を促される。アプレット間で重ならないように名前を考案して入力する。~ ~ ++ That の部分は適宜設定して終了する。~ ~ + テスト webhooks のページで Documentation を再びクリックする。{event} の部分をクリックして編集し、~ 上の Event Name を入力する。ページ下の "Test it" をクリックすると、That 部分が正しく動くか確認する~ ことができる。~ ~