Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Republish
L'action republish (republish
) republie un message MQTT dans un autre sujet MQTT.
Prérequis
Cette action réglementaire est assortie des exigences suivantes :
-
Rôle IAM qui AWS IoT peut assumer la réalisation de l'
iot:Publish
opération. Pour plus d’informations, consultez Accorder à une AWS IoT règle l'accès dont elle a besoin.Dans la AWS IoT console, vous pouvez choisir ou créer un rôle pour autoriser l'exécution AWS IoT de cette action de règle.
Paramètres
Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :
headers
-
Informations sur les en-têtes MQTT version 5.0.
Pour plus d'informations, consultez RepublishActionet MqttHeadersdans le Guide de référence des AWS API.
topic
-
Rubrique MQTT dans laquelle republier le message.
Pour republier dans un sujet réservé, qui commence par
$
, utilisez$$
plutôt. Par exemple, si vous republiez sur un device shadow une rubrique du type$aws/things/MyThing/shadow/update
, spécifiez la rubrique comme$$aws/things/MyThing/shadow/update
.Note
La republication vers des thèmes de la tâche réservés n'est pas prise en charge.
AWS IoT Device Defender les rubriques réservées ne prennent pas en charge la publication HTTP.
Prend en charge les modèles de substitution : Oui
qos
-
(facultatif) Le niveau de qualité de service (QoS) à utiliser pour republier des messages. Valeurs valides :
0
,1
. La valeur par défaut est0
. Pour plus d'informations sur MQTT QoS, consultez MQTT.Prend en charge les modèles de substitution : Non
roleArn
-
Rôle IAM qui permet de AWS IoT publier sur le sujet MQTT. Pour plus d’informations, consultez Prérequis.
Prend en charge les modèles de substitution : Non
Exemples
L'exemple JSON suivant définit une action de republication dans une AWS IoT règle.
{ "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" } } ] } }
L'exemple JSON suivant définit une action de republication avec des modèles de substitution dans une AWS IoT règle.
{ "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'exemple JSON suivant montre comment définir une action headers
dans une AWS IoT
règle :
{ "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" } ] } } } ] } }
Note
L'adresse IP source d'origine ne sera pas transmise par le biais de Republier l’action.