Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

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 つのバッチ内で変わることがあります。

チャネル データに対する反応を定義

  1. [Apps][React] を選択します。

  2. [New React] をクリックします。

  3. 以下を選択します。

    • Condition Type

    • Test Frequency

    • Action

    • Options

  4. [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 AnalysisThingHTTP をトリガーしたり、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] チェック ボックスをオンにすると、電子メールでアラートを受け取るようにできます。