2015/12/25にIDCFチャンネルのトリガー機能が強化され、他チャンネルのトリガーと同様に、アクションに対してトリガー実行結果の値を引き渡すことができるようになりました。
例えばヤフー天気チャンネルのトリガーであれば下図のように「天候の状態」や「最高気温」などをアクションに対して引き渡すことができます。
それに対し、IDCFチャンネルのトリガーは何も渡すことができず、自作デバイスでセンシングした情報をアクションで活用するのが難しい状況でした。
ただ今回の機能強化によって、他チャンネルのトリガーと同様に、アクションに対してトリガー実行結果の値を引き渡すことができるようになったので、その使い方を紹介します。
組み合わせの設定について
IDCFチャンネルのトリガーでは、テキスト情報を格納するtext1、text2、text3。URLを格納するurl1、url2、url3という6つの値をアクションに引き渡すことが可能です。
自作デバイス側のプログラムについて
IDCFのトリガーにPOSTリクエストを送信する際に、ボディにtext1〜text3、url1〜url3という変数名を指定して値をいれてください。指定されなかった変数には空文字が代入されて、アクション側に引き渡されます。
POST /data/{トリガーのuuid} HTTP/1.1
Host: {IDCFのIPアドレス}
meshblu_auth_uuid: {トリガーのuuid}
meshblu_auth_token: {トリガーのtoken}
Content-Type: application/x-www-form-urlencoded
text1=hello&url1=https://www.yahoo.co.jp
サンプル
このようにアクション側でトリガーの実行結果を扱うことができます。
最後に
この新機能も活用したmyThingsハンズオン向け資料を公開しました。ぜひこちらも参考にして頂ければと思います。
また、こういった新機能リリースのお知らせは内容にあわせて、Facebookグループやブログでお知らせしてますので、こちらもあわせて購読頂ければと思います!