Main Content

Diese Seite wurde mithilfe maschineller Übersetzung übersetzt. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Reaktions-App

React funktioniert mit den Apps ThingHTTP, ThingTweet und MATLAB® Analysis, um Aktionen auszuführen, wenn Kanaldaten eine bestimmte Bedingung erfüllen. Beispielsweise können Sie eine mobile App Ihren Breiten- und Längengrad an einen ThingSpeak™- Kanal melden lassen. Wenn sich Ihr Standort in einer bestimmten Entfernung von Ihrem Haus befindet, lassen Sie ThingHTTP die Beleuchtung Ihres Wohnzimmers einschalten.

Hinweis

Wenn Sie die React- App verwenden und Test Frequency auf On Data Insertion eingestellt ist, wenn Bulk-Write JSON Data verwenden, wird Ihr React wird einmal pro Massenaktualisierungsanforderung ausgelöst. Es wird ausgelöst, wenn Condition mit ConditionType übereinstimmt, auch wenn Condition mehr als einmal übereinstimmt.

Wenn Sie Ihren React so einstellen, dass er auf einem bestimmten Test Frequency mit einem bestimmten Condition Type läuft, achten Sie darauf, wie Ihr React wird ausgelöst. Die Daten werden nun im Laufe der Zeit gesammelt und als Stapel aktualisiert, und der Condition Type , der den React auslöst, kann innerhalb eines einzelnen Datenstapels variieren.

Definieren Sie Reaktionen auf Kanaldaten

  1. Wählen Sie Apps > React.

  2. Klicken Sie auf New React.

  3. Wählen:

    • Condition Type

    • Test Frequency

    • Action

    • Options

  4. Klicken Sie auf Save React.

Bedingungstypen

ThingSpeak- Kanäle unterstützen numerische Sensordaten, Text, Zeichenfolgen, Statusaktualisierungen und geografische Standortinformationen. Mit diesen Bedingungstypen können Sie Bedingungen festlegen, die auf Basis Ihrer Kanaldaten Reaktionen auslösen.

Zeichenfolge

Diese Bedingung testet eine Textzeichenfolge mit ASCII-Zeichen in einem ThingSpeak- Kanalfeld. Beispiel: „Wenn Kanal 1, Feld 1 gleich Blau ist, dann stellen Sie mein Licht auf Blau ein.“

Überprüfen Sie die Daten beim Testen auf Zeichenfolgen anhand dieser Einschränkungen:

  • enthält

  • beginnt mit

  • endet mit

  • ist gleich

  • ist ungleich zu

Status

Diese Bedingung testet einen ThingSpeak- Status in einem Kanal. Das Statusfeld ähnelt dem Text in einem Tweet. Sie können den Status nach einem Wort durchsuchen und eine ThingHTTP-Anfrage senden, wenn die Testbedingung erfüllt ist.

Überprüfen Sie die Daten mit diesen Einschränkungen, wenn Sie den Kanalstatus ThingSpeak testen:

  • enthält

  • beginnt mit

  • endet mit

  • ist gleich

  • ist ungleich zu

Numerisch

Wenn Sie Sensordaten oder numerische Daten in den Feldern eines ThingSpeak- Kanals haben, verwenden Sie die numerische Bedingung. Wenn Ihr Stromverbrauch beispielsweise über 300 Watt liegt, verwenden Sie eine numerische Bedingung, um diesen Tweet mit der ThingTweet -App zu posten:

„Ich verbrauche zu viel Strom“

Außerdem können Sie mit ThingHTTP einen Steuerbefehl an einen anderen Dienst oder ein Gerät senden, das HTTP-Anfragen akzeptiert.

Überprüfen Sie die Daten mit diesen Einschränkungen, wenn Sie auf Zahlen in einem ThingSpeak- Kanalfeld testen:

  • ist größer als

  • größer oder gleich ist

  • ist weniger als

  • kleiner oder gleich ist

  • ist gleich

  • ist ungleich zu

Geografischer Standort

Diese Bedingung überprüft die Standortdaten in einem ThingSpeak- Kanal. Wenn Sie beispielsweise über eine mobile App verfügen, die Ihren Breiten- und Längengrad an einen ThingSpeak- Kanal meldet, können Sie die Beleuchtung Ihres Wohnzimmers einschalten, wenn sich Ihr Standort in einer bestimmten Entfernung von Ihrem Haus befindet.

Überprüfen Sie die Daten mit diesen Einschränkungen, wenn Sie Standortinformationen auf einem ThingSpeak- Kanal testen:

  • ist drinnen

  • ist weiter als

Keine Datenprüfung

Diese Bedingung prüft, ob der ThingSpeak- Kanal Daten im angegebenen Intervall empfängt. Wenn innerhalb des angegebenen Zeitraums keine Datenaktualisierungen erfolgen, wird die in Ihrer React-App ausgewählte Aktion ausgelöst. Wenn Ihr Gerät beispielsweise durch einen Stromausfall unterbrochen wird und Ihr Kanal nicht aktualisiert wird, können Sie eine Aktion auslösen. Geben Sie an, wie lange Ihr Kanal keine neuen Daten erhält, bevor die Aktion ausgelöst wird.

Testhäufigkeit

Wählen Sie die Häufigkeit aus, mit der Sie den angegebenen Zustand testen können.

  • On Data Insertion: Testen Sie jedes Mal, wenn Daten eingefügt werden. Sie können nicht mehr als einen React mit On Data Insertion für genau die gleichen Bedingungen konfigurieren.

  • Every 10 minutes: Testen Sie alle 10 Minuten auf der Uhr. Beispielsweise wird eine Reaktion, die um 10:08 Uhr erstellt wurde, um 10:10 Uhr und danach alle 10 Minuten ausgelöst.

  • Every 30 minutes: Testen Sie alle 30 Minuten auf der Uhr.

  • Every 60 minutes: Testen Sie stündlich, rund um die Uhr.

Aktion

Sie können einen MATLAB Analysis, ThingHTTP auslösen oder einen Tweet mit der ThingTweet- App senden.

Ersatzschlüssel

Mithilfe von Ersatzschlüsseln können Sie Daten an Ihre Apps übergeben. Die folgende Tabelle fasst die Standard- und benutzerdefinierten Ersatzschlüssel zusammen, die Sie verwenden können. Einige Schlüssel sind spezifisch für eine bestimmte Art von Anfrage, wie in der letzten Spalte angegeben.

SchlüsselBeschreibungBeispielBenutzen mit
%%YOUR_CUSTOM_LABEL%%ThingHTTP ersetzt diesen benutzerdefinierten Ersatzwert durch Daten in der Triggeranforderung mit der Bezeichnung „YOUR_CUSTOM_LABEL“.field1=%%YOUR_CUSTOM_LABEL%% POST-Daten: YOUR_CUSTOM_LABEL=1234.ERGEBNIS: field1=1234.Jede Anfrage
%%channel_CHANNEL_ID_field_FIELD_NUMBER%%Der letzte Wert des angegebenen Kanals und Felds. Ersetzungsanfragen an private Kanäle, die nicht demselben Benutzer gehören wie die ThingHTTP-Anfrage, geben leere Werte zurück.The latest value is %%channel_12_field_1%%.ERGEBNIS: The latest value is „2,5“.Jede Anfrage
%%datetime%%Das vollständige Datum und die vollständige Uhrzeit der Ausführung von TimeControl oder React.The date and time the event occurred is %%DatumUhrzeit%%.ERGEBNIS: The date and time the event occurred is 24.09.2014 17:32 Uhr.TimeControl oder React
%%day%%Der Name des Wochentags, an dem TimeControl ausgeführt wurde.The day the event occurred is %%day%%.ERGEBNIS: The day the event occurred is „Mittwoch“.TimeControl
%%day_index%% Der nullbasierte Index des Wochentags, der am Sonntag beginnt.The number of days used this week is %%day_index%%.ERGEBNIS: The number of days used this week is 3.TimeControl
%%hour%%Die Stunde des Tages, zu der TimeControl ausgeführt wurde.The hour that the event occurred is %%Stunde%%.ERGEBNIS: The hour that the event occurred is 5.TimeControl
%%minute%%Die Minute der Stunde, in der TimeControl ausgeführt wurde.The minute the event occurred is %%Minute%%.ERGEBNIS: The minute the event occurred is „30“.TimeControl
%%trigger%%Der Wert, der React ausgelöst hat.It is way too hot in here at %%trigger%% C.ERGEBNIS: It is way too hot in here at 40 C.Reagieren
%%channel_id%%Die Kanal-ID, die React ausgelöst hat.The channel that tweets is %%channel_id%%.ERGEBNIS: The channel that tweets is „1256“.Reagieren

Optionen

  • Run action only the first time the condition is met: Lösen Sie die Aktion aus, wenn die Bedingung zuvor falsch war und derzeit wahr ist.

  • Run action each time condition is met: Lösen Sie die Aktion jedes Mal aus, wenn die Bedingung wahr ist.

Reagieren Sie auf die App mit MATLAB- Analysecodefehlern

Wenn Sie MATLAB Analysis-Code haben, der ein React verwendet, stoppt React die Ausführung, wenn im MATLAB Analysis-Code mehrere aufeinanderfolgende Fehler auftreten. Sie können wählen, ob Sie eine Benachrichtigung per E-Mail erhalten möchten, indem Sie in der Notify me via email if this MATLAB Analysis fails when triggered by TimeControl or ReactMATLAB aktivieren.