Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Republish
La acción volver a publicar (republish
) vuelve a publicar un MQTT mensaje en otro tema. MQTT
Requisitos
Esta regla tiene los siguientes requisitos:
-
Un IAM rol que se AWS IoT puede asumir para realizar la
iot:Publish
operación. Para obtener más información, consulte Otorgar a una AWS IoT regla el acceso que requiere.En la AWS IoT consola, puede elegir o crear un rol que permita AWS IoT realizar esta acción de regla.
Parámetros
Al crear una AWS IoT regla con esta acción, debe especificar la siguiente información:
headers
-
MQTTLa versión 5.0 contiene información sobre los encabezados.
Para obtener más información, consulte RepublishActiony MqttHeadersen la AWS APIReferencia.
topic
-
El MQTT tema en el que se va a volver a publicar el mensaje.
Para volver a publicar en un tema reservado, que comience por
$
, utilice$$
en su lugar. Por ejemplo, para volver a publicar en el tema sombra del dispositivo$aws/things/MyThing/shadow/update
, especifique el tema como$$aws/things/MyThing/shadow/update
.nota
No se permite volver a publicar en temas de trabajo reservados.
AWS IoT Device Defender los temas de reserva no admiten la HTTP publicación.
Admite plantillas de sustitución: Sí
qos
-
(Opcional) El nivel de calidad de servicio (QoS) que se utiliza para volver a publicar mensajes. Valores válidos:
0
,1
. El valor predeterminado es0
. Para obtener más información acerca de la MQTT QoS, consulte. MQTTAdmite plantillas de sustitución: No
roleArn
-
El IAM rol que permite AWS IoT publicar en el MQTT tema. Para obtener más información, consulte Requisitos.
Admite plantillas de sustitución: No
Ejemplos
El siguiente JSON ejemplo define una acción de republicación en una AWS IoT regla.
{ "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" } } ] } }
En el siguiente JSON ejemplo, se define una acción de republicación con plantillas de sustitución en una AWS IoT regla.
{ "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" } } ] } }
En el siguiente JSON ejemplo, se define una acción de republicación dentro de una headers
AWS IoT regla.
{ "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
La IP de origen original no se transferirá a través de la acción Republicar.