Main Content

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

IFTTT からの通知でチャネルアクティビティに反応する

この例Reactアプリを使用して、 ThingHTTPの IFTTT への HTTP要求をトリガーする方法を示します。MATLAB®の分析機能を使用すると、 ThingSpeak™データからフィルター処理され、ターゲットを絞った特定のチャネルアクティビティの通知を生成できます。IFTTT は、トリガーアクションに応答して動作するアプレットを作成できる外部 Web サービスです。

チャネル379984 は、家庭の温度値を記録します。この例では、春に庭の準備をしている苗木が損傷しないように、気温が 50 度を下回ったときに通知を受け取ります。

「IFTTT アプレットを作成する」

IFTTT は、別のアクションに応答して動作するアプレットを作成できる Web サービスです。IFTTT Webhookサービスを使用して、アクションをトリガーする Web要求を作成できます。受信アクションはWeb サーバーへの HTTP要求であり、送信アクションはデバイス上の IFTTT アプリでの通知です。

1) IFTTTアカウントをまだお持ちでない場合は作成します。あなたのアカウントにログイン。

2) アプレットを作成します。ユーザーアイコンを選択し、«作成»をクリックします。

3) 入力アクションを選択します。「これ」という単語をクリックします。

4) Webhookサービスを選択します。検索フィールドに「Webhooks」と入力します。「Webhook」カードを選択します。Webhook をトリガーとして選択した後、「Web要求を受信する」カードをクリックして続行します。

5) トリガーフィールドに入力します。イベント名を入力します。この例では、イベント名としてTooColdを使用します。「トリガーの作成」をクリックします。

6) 結果として得られるアクションを選択します。「それ」という単語をクリックします。トリガー ワードthis がWebhookアイコンになりました。

7) 検索バーに「notification」と入力し、«通知»ボックスをクリックします。次に「IFTTT アプリから通知を送信」を選択します。

7) 「アクションの作成」をクリックして、新しいアプレットを完成します。この例では、イベントの名前はTooColdです。IFTTT は、メッセージ内で変数 {{EventName}} が発生するイベントの名前を渡します。材料を使用して、メッセージをトリガーしたイベントに関するデータを渡すこともできます。たとえば、 {{OccurredAt}}を含めると、イベント時間が通知に追加されます。

8) Webhookトリガー情報を取得します。「マイ アプレット」 > 「サービス」を選択し、 Webhooksを検索します。「Webhook」を選択し、「Documentation」ボタンをクリックします。キーと要求を送信するための形式が表示されます。イベント名を入力します。この例のイベント名はTooColdです。

https://maker.ifttt.com/trigger/{event}/with/key/XXXXXXXXXXXXXXXXXXXXXX
https://maker.ifttt.com/trigger/TooCold/with/key/XXXXXXXXXXXXXXXXXXXXXX

「テスト」ボタンを使用するか、ブラウザに URL を貼り付けることで、サービスをテストできます。IFTTT イベント トリガーは常に瞬時に発生するとは限らないことに注意してください。

« ThingHTTPを作成する»

トリガー要求を完了するには、 ThingHTTPを作成します。ThingHTTPアプリを使用すると、API キーを使用して事前定義された HTTP要求と、Web またはデバイスからのGET要求をトリガーできます。この例では、 ThingHTTPを使用して IFTTT でWebhookをトリガーします。

1) [アプリ] > [ThingHTTP] を選択し、[新しいThingHTTP] を選択します。

2) ThingHTTP設定を編集します。

  • «名前» - ThingHTP に名前を付けます。

  • «URL» - Webhookドキュメントから URL を入力します。この例の URL の形式は https://maker.ifttt.com/triigger/TooCold/with/key/xxxxxxxxxxxxxxxxxxxxxx です。

  • ≪メソッド≫ - 「GET」と入力します。

3) IFTTT からメッセージでカスタム値を送信するには、「Body」フィールドにvalue1=YOUR_VALUEを追加します。YOUR_VALUEを送信したい値またはテキストに変更します。

4) ThingHTTPを保存します。

データへの反応を作成する

React を作成して、チャネルデータに基づいてThingHTTPをトリガーします。あなたは、リアクションの作成に使用されたチャネルの作成者である必要があります。チャネル379984のデータを使用する場合は、まずMATLAB解析をセットアップして、データをターゲットチャネルからチャネルに定期的にコピーする必要があります。定期的なスケジュールでチャネルからデータをコピーする方法の詳細については、「collect data in a new channel」、 「TimeControl app」、および「thingSpeakRead」を参照してください。

React アプリは、 ThingSpeakチャネルデータを評価し、他のイベントをトリガーできます。家が寒すぎるときにトリガーされる React アプリのインスタンスを作成します。「アプリ」 > 「React」を選択し、「新しい React」をクリックします。

  • «名前» - React に名前を付けます。

  • «テスト頻度» - «データ挿入時» を選択します。

  • «条件» - «Ifチャネル»リストで温度チャネルを選択します。HomeTemp1チャネル379984 に直接反応することはできませんが、そのチャネルにデータの独自のコピーを作成することはできます。

  • «フィールド» - フィールド 1 を選択し、要件を «未満» に設定し、« »温度レベルを «50» に設定します。

  • 「アクション」 - 「ThingHTTP」を選択し、前に定義したThingHTTPの名前を選択します。

  • ≪オプション≫ - 「条件が満たされるたびにアクションを実行」を選択します。

メッセージをトリガーする

チャネル内の温度が React の設定値に達すると、デバイスの IFTTT アプリで通知を受け取ります。

トラブルシューティング

通知を受け取らない場合は、各コンポーネントを個別にアクティブ化してみてください。

1) ブラウザから IFTTT でWebhookをトリガーします。Webhookドキュメントからアドレスをブラウザーのアドレス ウィンドウにコピーして、イベントを直接トリガーしてみます。成功すると、IFTTT は「TooCold イベントのトリガーに成功しました!」と応答します。

2) REST API 呼び出しを使用してThingHTTPをトリガーします。ThingHTTPを編集して保存すると、呼び出しの形式がヘルプ ペインで利用可能になります。ThingHTTPには一意の API キーがあります。

GET https://api.thingspeak.com/apps/thinghttp/send_request?api_key=XXXXXXXXXXXXXXXX

3) React で指定された条件に適合するデータをチャネルに書き込むことで、React をトリガーします。たとえば、フィールド 1 に 49 度の温度を書き込むことができます。

GET https://api.thingspeak.com/apps/thinghttp/send_request?api_key=XXXXXXXXXXXXXXXX&field1=49

参考

関連するトピック