このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
React アプリ
React は ThingHTTP アプリ、ThingTweet アプリ、および MATLAB® Analysis アプリと連携して、チャネル データが特定の条件を満たしたときにアクションを実行します。たとえば、モバイル アプリによって自分の緯度と経度を ThingSpeak™ チャネルに報告することができます。自分の位置が自宅から特定の距離範囲内に入ったときに、ThingHTTP でリビング ルームの照明をオンにすることができます。
メモ
チャネル フィードの一括更新を使用しているときに、[Test Frequency] が [On Data Insertion] に設定された React
アプリを使用すると、一括更新の要求ごとに React
がトリガーされます。[Condition] が [ConditionType] に一致すると、[Condition] が複数回一致した場合でもトリガーされます。
React
を特定の [Condition Type] と特定の [Test Frequency] で実行されるように設定している場合は、React
がどのようにトリガーされるかに注意してください。データは時間の経過と共に収集され、一括で更新されます。React
をトリガーする [Condition Type] は、データの 1 つのバッチ内で変わることがあります。
チャネル データに対する反応を定義
[Apps] 、 [React] を選択します。
[New React] をクリックします。
以下を選択します。
Condition Type
Test Frequency
Action
Options
[Save React] をクリックします。
Condition Type
ThingSpeak チャネルは数値センサー データ、テキスト、文字列、ステータス更新、および地理的位置情報をサポートしています。これらの [Condition Type] を使用して、チャネルのデータに基づいて反応をトリガーする条件を指定します。
String
この条件は、ThingSpeak チャネル フィールド内の ASCII 文字のテキスト文字列をテストします。たとえば、“チャネル 1、Field 1 が青に等しい場合は、照明を青にセットする” などです。
文字列についてテストするときは以下の制約でデータをチェックします。
contains
starts with
ends with
is equal to
is not equal to
Status
この条件は、チャネルの ThingSpeak ステータスをテストします。ステータス フィールドはツイート内のテキストに似ています。ステータス内で語句を検索し、テスト条件が満たされたときに ThingHTTP 要求を送信することができます。
ThingSpeak チャネルのステータスについてテストするときは、以下の制約でデータをチェックします。
contains
starts with
ends with
is equal to
is not equal to
Numeric
ThingSpeak チャネルのフィールドにセンサー データまたは数値データが含まれる場合は、数値条件を使用します。たとえば、使用電力が 300 ワットを超えている場合に数値条件を使用し、ThingTweet アプリを使用して以下のツイートを投稿します。
“電力の使いすぎです”
また、ThingHTTP を使用して HTTP 要求を受け付ける別のサービスまたはデバイスに制御コマンドを送信することができます。
ThingSpeak チャネル フィールドの数値についてテストするときは、以下の制約でデータをチェックします。
is greater than
is greater than or equal to
is less than
is less than or equal to
is equal to
is not equal to
Geo Location
この条件は ThingSpeak チャネルの位置データをチェックします。たとえば、自分の緯度と経度を ThingSpeak チャネルに報告するモバイル アプリを使っている場合、自分の位置が自宅から一定の距離内に入ったときにリビング ルームの照明をオンにすることができます。
ThingSpeak チャネルの位置情報についてテストするときは、以下の制約でデータをチェックします。
is within
is farther than
No Data Check
この条件は ThingSpeak チャネルが指定の間隔でデータを受信しているかどうかをチェックします。指定した時間範囲内にデータの更新が発生しなかった場合、React アプリで選択されたアクションがトリガーされます。たとえば、停電によってデバイスが停止され、チャネルが更新されていない場合にアクションをトリガーできます。アクションをトリガーするまでの、チャネルが新しいデータを受信しない時間の長さを指定します。
Test Frequency
指定した条件についてテストする頻度を選択します。
On Data Insertion: データが挿入されるたびにテストします。複数の React に対し、まったく同じ条件で
On Data Insertion
を構成することはできません。Every 10 minutes: 時計上の 10 分ごとにテストします。たとえば、10:08 a.m. に作成された React は 10:10 にトリガーされ、その後は 10 分ごとにトリガーされます。
Every 30 minutes: 時計上の 30 分ごとにテストします。
Every 60 minutes: 時計上の 1 時間ごとにテストします。
Action
MATLAB Analysis や ThingHTTP をトリガーしたり、ThingTweet アプリを使用してツイートを送信したりできます。
置き換え
置き換えキーを使用して、React にデータを渡すことができます。次の表は、使用できる置き換えキーをまとめています。
キー | 説明 | 例 |
---|---|---|
%%trigger%% | React はこのキーを、React のアクションをトリガーした値に置き換えます。 | 摂氏 %%trigger%% 度です。ここは暑すぎます。 結果: 摂氏 40 度です。ここは暑すぎます。 |
%%channel_id%% | React のアクションをトリガーしたチャネル ID。 | ツイートするチャネルは %%channel_id%% です。 結果: ツイートするチャネルは 13459 です。 |
%%channel_CHANNEL_ID_field_FIELD_NUMBER%% | 指定されたチャネルとフィールドの最後の値。 | 最新の値は %%channel_12_field_1%% です。 結果: 最新の値は 2.5 です。 |
%%datetime%% | React がトリガーされたときの完全な日付と時刻。 | %%datetime%% にイベントが発生しました。結果: 2017–07–04 4:51 p.m. にイベントが発生しました。 |
Options
Run action only the first time the condition is met: 条件が前回は false で今回 true になった場合にアクションをトリガーします。
Run action each time condition is met: 条件が true になるたびにアクションをトリガーします。
React アプリと MATLAB Analysis コード エラー
React を使用する MATLAB Analysis コードがあるとき、MATLAB Analysis コードでいくつかのエラーが連続する場合には、React の実行が停止します。MATLAB Analysis アプリで [Notify me via email if this MATLAB Analysis fails when triggered by TimeControl or React] チェック ボックスをオンにすると、電子メールでアラートを受け取るようにできます。