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 の準備