Nova publicação - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Nova publicação

Use a ação (republish) publicar novamente publica novamente uma mensagem do MQTT para outro tópico do MQTT.

Requisitos

Esta ação de regra tem os seguintes requisitos:

  • Uma função do IAM que AWS IoT você pode assumir para realizar a iot:Publish operação. Para ter mais informações, consulte Conceder a uma AWS IoT regra o acesso que ela exige.

    No AWS IoT console, você pode escolher ou criar uma função para permitir AWS IoT a execução dessa ação de regra.

Parâmetros

Ao criar uma AWS IoT regra com essa ação, você deve especificar as seguintes informações:

headers

Informações de cabeçalho do MQTT versão 5.0.

Para obter mais informações, consulte RepublishActione MqttHeadersna Referência AWS da API.

topic

O tópico MQTT no qual publicar a mensagem novamente.

Para publicar novamente em um tópico reservado, que começa com $, use $$ em vez disso. Por exemplo, para publicar novamente em um tópico de sombra do dispositivo $aws/things/MyThing/shadow/update, especifique o tópico como $$aws/things/MyThing/shadow/update.

nota

A nova publicação em tópicos de trabalho reservados não é compatível.

AWS IoT Device Defender tópicos de reserva não oferecem suporte à publicação HTTP.

Compatível com modelos de substituição: Sim

qos

(Opcional) O nível Quality of Service (QoS - Qualidade de serviço) a ser usado ao republicar mensagens. Valores válidos: 0, 1. O valor padrão é 0. Para obter mais informações sobre QoS MQTT, consulte MQTT.

Compatível com modelos de substituição: Não

roleArn

A função do IAM que permite AWS IoT publicar no tópico do MQTT. Para ter mais informações, consulte Requisitos.

Compatível com modelos de substituição: Não

Exemplos

O exemplo de JSON a seguir define uma ação de republicação em uma AWS IoT regra.

{ "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" } } ] } }

O exemplo de JSON a seguir define uma ação de republicação com modelos de substituição em uma regra. 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" } } ] } }

O exemplo JSON a seguir define uma ação de nova publicação em uma headers regra 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

O IP de origem original não será transmitido pela ação Publicar novamente.