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.
Wiederveröffentlichen
Die Aktion erneut veröffentlichen (republish
) veröffentlicht eine MQTT Nachricht erneut in einem anderen Thema. MQTT
Voraussetzungen
Diese Regelaktion hat die folgenden Anforderungen:
-
Eine IAM Rolle, die die Ausführung des
iot:Publish
Vorgangs übernehmen AWS IoT kann. Weitere Informationen finden Sie unter Gewähren Sie einer AWS IoT Regel den Zugriff, den sie benötigt.In der AWS IoT Konsole können Sie eine Rolle auswählen oder erstellen, um die Ausführung dieser Regelaktion AWS IoT zu ermöglichen.
Parameter
Wenn Sie eine AWS IoT Regel mit dieser Aktion erstellen, müssen Sie die folgenden Informationen angeben:
headers
-
MQTTHeader-Informationen der Version 5.0.
Weitere Informationen finden Sie unter RepublishActionund MqttHeadersin der AWS APIReferenz.
topic
-
Das MQTT Thema, zu dem die Nachricht erneut veröffentlicht werden soll.
Um in einem reservierten Thema, das mit
$
beginnt, erneut zu veröffentlichen, verwenden Sie stattdessen$$
. Um zum Beispiel das Thema Geräteschatten$aws/things/MyThing/shadow/update
neu zu veröffentlichen, geben Sie das Thema als$$aws/things/MyThing/shadow/update
an.Anmerkung
Das erneute Veröffentlichen zu reservierten Jobthemen wird nicht unterstützt.
AWS IoT Device Defender Reservierte Themen unterstützen das HTTP Veröffentlichen nicht.
Unterstützt Ersatzvorlagen: Ja
qos
-
(Optional) Das QoS (Quality of Service)-Niveau, das verwendet werden soll, wenn Nachrichten erneut veröffentlicht werden. Zulässige Werte:
0
,1
. Der Standardwert ist0
. Weitere Informationen zu MQTT QoS finden Sie unterMQTT.Unterstützt Ersatzvorlagen: Nein
roleArn
-
Die IAM Rolle, die es ermöglicht AWS IoT , zu dem MQTT Thema zu veröffentlichen. Weitere Informationen finden Sie unter Voraussetzungen.
Unterstützt Ersatzvorlagen: Nein
Beispiele
Das folgende JSON Beispiel definiert eine Aktion zum erneuten Veröffentlichen in einer AWS IoT Regel.
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "republish": { "topic": "another/topic", "qos": 1, "roleArn": "arn:aws:iam::123456789012:role/aws_iot_republish" } } ] } }
Das folgende JSON Beispiel definiert eine Aktion zum erneuten Veröffentlichen mit Ersatzvorlagen in einer Regel. AWS IoT
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "republish": { "topic": "${topic()}/republish", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_republish" } } ] } }
Das folgende JSON Beispiel definiert eine Aktion zum erneuten Veröffentlichen headers
in einer Regel. AWS IoT
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "republish": { "topic": "${topic()}/republish", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_republish", "headers": { "payloadFormatIndicator": "UTF8_DATA", "contentType": "rule/contentType", "correlationData": "cnVsZSBjb3JyZWxhdGlvbiBkYXRh", "userProperties": [ { "key": "ruleKey1", "value": "ruleValue1" }, { "key": "ruleKey2", "value": "ruleValue2" } ] } } } ] } }
Anmerkung
Die ursprüngliche Quell-IP wird bei der Aktion zur erneuten Veröffentlichung nicht weitergegeben.