IFTTTとArduinoで作る侵入アラーム [1]IFTTTのレシピを作る



IFTTTは、TwitterやInstagramなど色々なWebサービスを連携できるWebサービスです。

そのIFTTTに、Arduino などから簡単にアクセスできる機能が追加されました。HTTP get でセンサーのデータなどを送ることができます。

今回は「Arduinoにつないだ距離センサーの値が一定以上になったら、Twitterに写真付きツイートをする」というデモを作ります。


こちらのエントリーを参考にさせていただきました。(というかほぼそのまま)
SWITCH SCIENCE MAGAZINE IFTTTにMaker Channelができました



目次
[1]IFTTTのレシピを作る
[2]Arduino の準備
[3]ArduinoからIFTTTにリクエストを送る



IFTTTのレシピを作る

IFTTT を利用するには、まず使いたいWebサービスを認証します。これらをIFTTTでは「チャンネル」と呼びます。
次に、動作のきっかけとなる「トリガー」と、その結果引き起こされる「アクション」にそれぞれチャンネルを設定します。

今回は、トリガーにMakeChannel、アクションにTwitterを設定します。


■チャンネルの設定
まず、IFTTT にアクセスし、アカウントを作ってログインします。



上部メニューの [Channels] をクリックし、検索窓にTwitterと入力しTwitterアイコンをクリック。


デカデカと表示されている[Connect]ボタンをクリックして、別ウィンドウでTwitterの連携アプリの認証を行います。元のウィンドウに戻ると接続が完了しています。



次は、Maker Channel の認証です。先ほどと同様にChannelsから検索窓に「Maker」と入れると、アイコン(赤青黒のM)が表示されるので、クリックします。


[Connect]ボタンをクリックすると認証が完了します。ここで、このチャンネルにアクセスするために必要なシークレットキーが発行されます。あとでArduinoからアクセスする時に使います。



■レシピの作成
認証したチャンネルを使ってレシピを作ります。

上部メニューの [My Recipes] をクリックし、自分のレシピのページへ移動。[Create a Recipe]をクリックして新しいレシピを作ります。



IFTTTは「If This then That」の略で、Thisはトリガーとなるチャンネル、Thatはアクションを起こすチャンネルを設定します。
まず[this]をクリックして、トリガーを設定します。


チャンネルを選択する画面で、検索窓に「Maker」と入力し、Maker アイコンを選択します。



次に選択したチャンネルが受け付けるイベントを選択します。Maker Channel ができるのは、リクエストを受け付ける事だけです。



イベントに名前をつけます。この名前は後でArduinoのコードに書き込み、getリクエストに含めます。今回は物の接近を検知するので「ObjectDitection」としました。入力したら[Create Trigger]をクリック。



次はthatのアクションを起こすサービスを設定します。[That]をクリック。



アクションはTwitterの自分のアカウントにDMを送ります。トリガーと同じように検索窓に「Twitter」と入力し、アイコンをクリック。



Twitterチャンネルは、アクションでできる事が6つあります。今回は写真付きツイートを行うので「Post a tweet with image」を選択します。



Tweet textにはツイートする文面を設定します。{{EventName}}となっている箇所に、先ほど設定したイベントネーム「ObjectDitection」が入ります。入力フィールドをクリックして表示されるビーカーアイコンをクリックすると、発生時間やArduinoから送られてきたデータを追加する事ができます。ここでは、発生時間とセンサーの距離を追加しました。

Image URLには添付する画像のURLを指定します。今回はストックフォトサービスぱくたそ(https://www.pakutaso.com/)の写真を使わせていただきました。


設定ができたら[Create Action]をクリック。




最後にこのレシピに名前をつけて完了です。[Create Recipe]をクリックしてレシピを作成してください。



ここまでの手順をまとめます
・IFTTTにログインし、Maker と Twitter を認証する
・トリガー(this)にMakerを設定する
・アクションに(that)にTwitterを設定する

次はArduinoをネットにつなぎます。
[2]Arduino の準備