Republish - AWS IoT Core

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.