Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Republish
L’operazione di ripubblicazione (republish
) ripubblica un messaggio MQTT in un altro argomento MQTT.
Requisiti
Questa operazione della regola presenta i seguenti requisiti:
-
Un ruolo IAM che AWS IoT può assumere per eseguire l'operazione.
iot:Publish
Per ulteriori informazioni, consulta Concedere a qualsiasi AWS IoT regola l'accesso richiesto.Nella AWS IoT console, puoi scegliere o creare un ruolo che consenta di AWS IoT eseguire questa azione relativa alla regola.
Parametri
Quando si crea una AWS IoT regola con questa azione, è necessario specificare le seguenti informazioni:
headers
-
Informazioni sulle intestazioni MQTT versione 5.0.
Per ulteriori informazioni, consulta RepublishActione MqttHeadersnell'AWS API Reference.
topic
-
Argomento MQTT in cui ripubblicare il messaggio.
Per ripubblicare in un argomento riservato, che inizia con
$
, usa$$
. Ad esempio, se stai ripubblicando in un argomento Device Shadow$aws/things/MyThing/shadow/update
, specifica l'argomento come$$aws/things/MyThing/shadow/update
.Nota
La ripubblicazione in Argomenti di processi riservati non è supportata.
AWS IoT Device Defender gli argomenti di riserva non supportano la pubblicazione HTTP.
Supporta modelli di sostituzione: sì
qos
-
(Facoltativo) Il livello di qualità del servizio (QoS) da usare per la ripubblicazione dei messaggi. Valori validi:
0
,1
. Il valore predefinito è0
. Per ulteriori informazioni su QoS MQTT, consulta MQTT.Supporta modelli di sostituzione: no
roleArn
-
Il ruolo IAM che AWS IoT consente la pubblicazione sull'argomento MQTT. Per ulteriori informazioni, consulta Requisiti.
Supporta modelli di sostituzione: no
Esempi
Il seguente esempio JSON definisce un'azione di ripubblicazione in una regola. AWS IoT
{ "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" } } ] } }
Il seguente esempio JSON definisce un'azione di ripubblicazione con modelli di sostituzione in una regola. 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" } } ] } }
L'esempio JSON seguente illustra come definire un'operazione di ripubblicazione con headers
in una regola 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" } ] } } } ] } }
Nota
L'IP di origine originale non verrà passato tramite l'operazione Republish.