FlashAir IoT HubとIFTTTの連携2(アクション編)

最終更新: 2018/10

概要

このチュートリアルではFlashAir IoT HubのIFTTT連携機能について説明します。
IFTTTの基本的な使用方法、IFTTT連携についてはトリガー編をご覧ください。


FlashAirの設定

事前に ご利用の流れを参考にFlashAirからFlashAir IoT Hubに接続出来る様に準備してください。

FlashAirのGPIO機能を有効にする際は、FlashAirの /SD_WLAN/CONFIGを編集し、 IFMODE=1を追加してください。

FlashAirがオンライン状態になる事を確認してからチュートリアルを読み進めると良いでしょう。

GPIO出力

では、FlashAir IoT HubのGPIO機能を使って、IFTTT連携でLチカ(LEDの点滅を操作)してみましょう。

FlashAirのGPIO機能を使うため、FlashAirのプロトタイピングボードであるAirio RPを使います。

Airio RPについては FlashAirプロトタイピングボード「Airio RP」を参照ください。

GPIO機能の詳細についてはこちらをご参照ください。

Webhookを作る

FlashAir IoT Hub上でWebhookの設定を行います。

FlashAir IoT Hubのアクション > GPIO出力の所にある「WebHookを設定」をクリックしましょう。

「IFTTT連携を有効にする」をクリックします。

ページに表示された値をメモしてください。Webhookを作る際に使います。

Appletを作る

次にIFTTTの My Applets のページでFlashAir IoT Hubにグラフを表示するAppletを作りましょう。

My Appletsページ

「New Applet」をクリックし、「this」の部分をクリック。

thisを選択

「Webhooks」を検索して、アイコンをクリック。

Webhooksを選択

「Recieve a web request」をクリック。

triggerを選択

Webhookを識別するEvent Nameを入力して「Create trigger」をクリック。

triggerを作成

次に「that」の部分をクリック。

thatを選択

「Webhooks」を検索して、アイコンをクリック。

Emailを選択

表示されたダイアログにこちらで作成した値を入力し、「Create action」をクリックします。

action選択
  • URL
    枠内の値をコピー&ペーストして入力してください。
  • Method
    POST
  • ContentType
    application/json
  • Body
    枠内の値をコピー&ペーストして入力してください。

「Finish」をクリックすると、IFTTTの設定は完了です。

Appletの確認画面
Applet設定完了

FlashAir起動

FlashAirをAirio RPに刺し、電源に繋がっているMicro USBケーブルを挿して起動してください。

起動後、Airio RPのLEDが消灯するのを確認したら、準備完了です。

実機の写真

IFTTT連携する

作成したAppletからFlashAir IoT Hub上にグラフを表示してみましょう。

IFTTTにログインし、 Webhooks のページを開き、「Documentation」をクリックする。

Webhooks

{event}にApplet作成時に入力したEvent Name(例:flashair)を入力し「Test It」をクリックします。

実行結果

準備が整いましたので、実行してみましょう。

「Test It」を押下するとAirio RPのLEDが点灯するのがご確認頂けるかと思います。

Lチカ

Body部分の"data":2から1に変更してから再度Appletを実行するとLEDが消灯します。

スクリプト実行

次に、FlashAir内のLuaスクリプトをIFTTTから呼び出して実行してみましょう。 FlashAir IoT HubとIFTTTで設定を行います。

Webhookを作る

FlashAir IoT Hub上でWebhookの設定を行います。

FlashAir IoT Hubのアクション > スクリプト実行の所にある「WebHookを設定」をクリックします。

既にIFTTT連携が有効になっている場合はaction fieldに入力する内容が入力された状態で表示されます。IFTTT連携を有効にしていない場合は「IFTTT連携を有効にする」をクリックしてください。
ページに表示された値をメモしてください。Webhookを作る際に使います。

Appletを作る

こちらと同様にAppletを作成します。

Complete action fieldsには上記で作成した値を入力してください。

body内の/echo.luaは計測値を表示するスクリプトです。詳細はこちらを参照してください。

実行結果

では、実際に計測値が送信されているか確認してみましょう。

こちらと同様に作成したAppletを呼び出して見ましょう。

処理待ちのジョブにスクリプト実行のタスクが表示されます。ステータスが未実行のまま変化しない場合はFlashAirがオンライン状態になっているか確認してください。ステータスが実行済みになったらトリガー > 計測値のグラフを表示してみましょう。

「Test It」を押下する度にグラフが表示されます。

Bodyの赤字部分をご使用の環境に合わせて変更することにより、さまざまな形に応用することが可能です。

まとめ

FlashAir IoT HubとIFTTTを使って、IFTTTからFlashAir上のデータをWebサービスと連携して呼び出す事が出来ました。
今回はIFTTTを用いて外部からFlashAir IoT Hubを更新しましたが、Webhookを設定可能なWebサービスであれば連携することが可能です。

外部からFlashAir内のluaスクリプトを操作・計測値をグラフを表示、雨が降ったらAirio RPがLチカしてお知らせ!等いろいろな使い方を試してみてはいかがでしょうか?