Ersetzungsvorlagen - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ersetzungsvorlagen

Sie können eine Ersatzvorlage verwenden, um die JSON-Daten zu erweitern, die zurückgegeben werden, wenn eine Regel ausgelöst wird und AWS IoT eine Aktion ausführt. Die Syntax für eine Substitutionsvorlage lautet ${ Ausdruck}, wobei Ausdruck ein beliebiger Ausdruck sein kann, der von INSELECT-Klauseln, AWS IoT WHERE-Klauseln und unterstützt wird. AWS IoT Regelaktionen Dieser Ausdruck kann in ein Aktionsfeld für eine Regel eingefügt werden, sodass Sie eine Aktion dynamisch konfigurieren können. Tatsächlich ersetzt diese Funktion eine Information in einer Aktion. Dazu gehören Funktionen, Operatoren und Informationen aus der ursprünglichen Nachrichtennutzlast.

Wichtig

Da ein Ausdruck in einer Ersatzvorlage separat von dem „SELECT...“-Ausdruck evaluiert wird, können Sie nicht auf ein mit der AS-Klausel erstelltes Alias verweisen. Sie können zu den unterstützten Funktionen und Operatoren nur in der ursprünglichen Nutzlast vorhandene Informationen referenzieren.

Weitere Informationen zu unterstützten Ausdrücken unter AWS IoT SQL-Referenz.

Die folgenden Regelaktionen unterstützen Ersetzungsvorlagen. Jede Aktion unterstützt verschiedene Felder, die ersetzt werden können.

Ersetzungsvorlagen werden in den Aktionsparametern innerhalb einer Regel angezeigt:

{ "sql": "SELECT *, timestamp() AS timestamp FROM 'my/iot/topic'", "ruleDisabled": false, "actions": [{ "republish": { "topic": "${topic()}/republish", "roleArn": "arn:aws:iam::123456789012:role/my-iot-role" } }] }

Wenn diese Regel vom folgenden in my/iot/topic veröffentlichten JSON ausgelöst wird:

{ "deviceid": "iot123", "temp": 54.98, "humidity": 32.43, "coords": { "latitude": 47.615694, "longitude": -122.3359976 } }

Anschließend veröffentlicht diese Regel das folgende JSON-Formatmy/iot/topic/republish, das AWS IoT durch Folgendes ersetzt wird: ${topic()}/republish

{ "deviceid": "iot123", "temp": 54.98, "humidity": 32.43, "coords": { "latitude": 47.615694, "longitude": -122.3359976 }, "timestamp": 1579637878451 }