

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á.

# Ponte MQTT
<a name="mqtt-bridge-component"></a>

O componente de ponte MQTT (`aws.greengrass.clientdevices.mqtt.Bridge`) retransmite mensagens MQTT entre dispositivos cliente, publicação/assinatura local do Greengrass e. AWS IoT Core Você pode usar esse componente para agir em mensagens MQTT de dispositivos cliente em componentes personalizados e sincronizar dispositivos cliente com a Nuvem AWS.

**nota**  <a name="client-device-component-context"></a>
Os dispositivos clientes são dispositivos IoT locais que se conectam a um dispositivo central do Greengrass para enviar mensagens MQTT e dados para processamento. Para obter mais informações, consulte [Interagir com dispositivos de IoT locais](interact-with-local-iot-devices.md).

Você pode usar esse componente para retransmitir mensagens entre os seguintes agentes de mensagens:
+ MQTT local: o agente MQTT local manipula mensagens entre dispositivos cliente e um dispositivo principal.
+ Local publish/subscribe — O agente de mensagens local do Greengrass manipula mensagens entre componentes em um dispositivo principal. Para obter mais informações sobre como interagir com essas mensagens nos componentes do Greengrass, consulte [Publicar/assinar mensagens locais](ipc-publish-subscribe.md).
+ AWS IoT Core — O corretor AWS IoT Core MQTT lida com mensagens entre dispositivos Nuvem AWS e destinos de IoT. Para obter mais informações sobre como interagir com essas mensagens nos componentes do Greengrass, consulte [Publique/assine mensagens MQTT AWS IoT Core](ipc-iot-core-mqtt.md).
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).

**Topics**
+ [Versões](#mqtt-bridge-component-versions)
+ [Tipo](#mqtt-bridge-component-type)
+ [Sistema operacional](#mqtt-bridge-component-os-support)
+ [Requisitos](#mqtt-bridge-component-requirements)
+ [Dependências](#mqtt-bridge-component-dependencies)
+ [Configuração](#mqtt-bridge-component-configuration)
+ [Arquivo de log local](#mqtt-bridge-component-log-file)
+ [Changelog](#mqtt-bridge-component-changelog)

## Versões
<a name="mqtt-bridge-component-versions"></a>

Esse componente tem as seguintes versões:
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Tipo
<a name="mqtt-bridge-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Este componente é um componente de plug-in (`aws.greengrass.plugin`). O [Greengrass nucleus](greengrass-nucleus-component.md) executa esse componente na mesma Java Virtual Machine (JVM) do núcleo. O núcleo é reiniciado quando você altera a versão desse componente no dispositivo principal.

<a name="public-component-type-plugin-para2"></a>Esse componente usa o mesmo arquivo de log do Greengrass nucleus. Para obter mais informações, consulte [Monitore AWS IoT Greengrass logs](monitor-logs.md).

<a name="public-component-type-more-information"></a>Para obter mais informações, consulte [Tipos de componente](develop-greengrass-components.md#component-types).

## Sistema operacional
<a name="mqtt-bridge-component-os-support"></a>

Esse componente pode ser instalado em dispositivos principais que executam os seguintes sistemas operacionais:
+ Linux
+ Windows

## Requisitos
<a name="mqtt-bridge-component-requirements"></a>

Esse componente tem os seguintes requisitos:
+ Se você configurar o componente intermediário MQTT do dispositivo principal para usar uma porta diferente da porta padrão 8883, deverá usar a ponte MQTT v2.1.0 ou posterior. Configure-o para se conectar na porta em que o agente opera.
+ O componente de ponte MQTT pode ser executado em uma VPC.

## Dependências
<a name="mqtt-bridge-component-dependencies"></a>

Quando você implanta um componente, AWS IoT Greengrass também implanta versões compatíveis de suas dependências. Isso significa que é preciso atender aos requisitos do componente e de todas as dependências dele para implantá-lo com êxito. Nesta seção, há uma lista de todas as dependências das [versões lançadas](#mqtt-bridge-component-changelog) desse componente e as restrições de versão semântica que definem as versões dos componentes para cada dependência. Também é possível visualizar as dependências de cada versão do componente no [console do AWS IoT Greengrass](https://console.aws.amazon.com//greengrass). Na página de detalhes do componente, procure a lista de **dependências**.

------
#### [ 2.3.2 ]

A tabela a seguir lista as dependências da versão 2.3.2 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Rígido | 

------
#### [ 2.3.0 and 2.3.1 ]

A seguinte tabela lista as dependências das versões 2.3.0 e 2.3.1 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 2.2.5 and 2.2.6 ]

A seguinte tabela lista as dependências das versões 2.2.5 e 2.2.6 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 2.2.3 and 2.2.4 ]

A tabela a seguir lista as dependências das versões 2.2.3 e 2.2.4 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.2.0 <2.4.0 | Rígido | 

------
#### [ 2.2.0 – 2.2.2 ]

A tabela a seguir lista as dependências das versões 2.2.0 e 2.2.2 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.2.0 <2.3.0 | Rígido | 

------
#### [ 2.1.1 ]

A tabela a seguir lista as dependências da versão 2.1.1 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.0.0 <2.2.0 | Rígido | 

------
#### [ 2.0.0 to 2.1.0 ]

A tabela a seguir lista as dependências das versões 2.0.0 a 2.1.0 desse componente.


| Dependência | Versões compatíveis | Tipo de dependência | 
| --- | --- | --- | 
| [Autenticação do dispositivo cliente](client-device-auth-component.md) | >=2.0.0 <2.1.0 | Rígido | 

------

Para obter mais informações sobre as dependências dos componentes, consulte [referência de fórmula do componente](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuração
<a name="mqtt-bridge-component-configuration"></a>

Esse componente fornece os seguintes parâmetros de configuração que podem ser personalizados ao implantar o componente.

------
#### [ 2.3.0 – 2.3.2 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Os mapeamentos do tópico que você deseja interligar. Esse componente assina mensagens no tópico de origem e publica as mensagens recebidas no tópico de destino. Cada mapeamento de tópicos define o tópico, o tipo de origem e o tipo de destino.  
Esse objeto contém as informações a seguir:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>O nome desse mapeamento de tópicos. *topicMappingNameKey*Substitua por um nome que ajude a identificar esse mapeamento de tópicos.  
Esse objeto contém as informações a seguir:    
`topic`  
O tópico ou filtro de tópicos para fazer a ponte entre os agentes de origem e de destino.  
Você pode usar os curingas de tópico `+` e `#` do MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte [MQTT topics](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) no *Guia do desenvolvedor do AWS IoT Core *.  
Para usar os curingas de tópico do MQTT com o agente de origem `Pubsub`, você deve usar a versão v2.6.0 ou posterior do [componente de núcleo do Greengrass](greengrass-nucleus-component.md).  
`targetTopicPrefix`  
O prefixo a ser adicionado ao tópico de destino quando esse componente retransmitir a mensagem.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
O agente de mensagens de origem. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
O agente de mensagens de destino. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.

mqtt5 RouteOptions  
(Opcional) Fornece opções para configurar mapeamentos de tópicos a fim de conectar mensagens do tópico de origem ao tópico de destino.  
Esse objeto contém as informações a seguir:    
*mqtt5RouteOptionsNameKey*  
O nome das opções de rotas para um mapeamento de tópicos. *mqtt5RouteOptionsNameKey*Substitua pela correspondência *topicMappingNameKey* definida no `mqttTopicMapping` campo.  
Esse objeto contém as informações a seguir:    
noLocal  
(Opcional) Com essa opção habilitada, a ponte não encaminha mensagens sobre um tópico publicado pela própria ponte. Use isso para evitar loops, da seguinte forma:  

```
{
    "mqtt5RouteOptions": {
        "toIoTCore": {
            "noLocal": true
        }
    },
    "mqttTopicMapping": {
        "toIoTCore": {
            "topic": "device",
            "source": "LocalMqtt",
            "target": "IotCore"
        },
        "toLocal": {
            "topic": "device",
            "source": "IotCore",
            "target": "LocalMqtt"
        }
    }
}
```
`noLocal` é compatível apenas com rotas em que `source` é `LocalMqtt`.  
Padrão: False  
retainAsPublished  
(Opcional) Quando habilitadas, as mensagens encaminhadas pela ponte têm o mesmo sinalizador `retain` que as mensagens publicadas no agente para essa rota.  
`retainAsPublished` é compatível apenas com rotas em que `source` é `LocalMqtt`.  
Padrão: False

mqtt  
(Opcional) Configurações do protocolo MQTT para comunicação com o agente local.    
version  
(Opcional) A versão do protocolo MQTT usada pela ponte para se comunicar com o agente local. Deve ser igual à versão do MQTT selecionada na configuração do núcleo.   
Escolha uma das seguintes opções:   
+ `mqtt3`
+ `mqtt5`
É necessário implantar um agente MQTT quando o campo `source` ou `target` do objeto `mqttTopicMapping` estiver definido como `LocalMqtt`. Se você escolher a opção`mqtt5`, deverá usar o [Agente MQTT 5 (EMQX)](mqtt-broker-emqx-component.md).  
Padrão: `mqtt3`  
ackTimeoutSeconds  
(Opcional) Intervalo para aguardar os pacotes PUBACK, SUBACK ou UNSUBACK antes de ocorrer uma falha na operação.  
Padrão: 60  
connAckTimeoutSenhora  
(Opcional) Intervalo para aguardar um pacote CONNACK antes de encerrar a conexão.  
Padrão: 20000 (20 segundos)  
pingTimeoutMs  
(Opcional) A quantidade de tempo em milissegundos que o cliente espera para receber uma mensagem PINGACK do agente local. Se a espera exceder o tempo limite, a ponte fecha e reabre a conexão MQTT. Esse valor deve ser menor que `keepAliveTimeoutSeconds`.  
Padrão: 30000 (30 segundos)  
keepAliveTimeoutSegundos  
(Opcional) A quantidade de tempo em segundos entre cada mensagem PING que a ponte envia para manter a conexão MQTT ativa. Este valor deve ser maior que `pingTimeoutMs`.  
Padrão: 60  
maxReconnectDelaySenhora  
(Opcional) A quantidade máxima de tempo em segundos para o MQTT reconectar.  
Padrão: 30000 (30 segundos)  
minReconnectDelaySenhora  
(Opcional) A quantidade mínima de tempo em segundos para o MQTT reconectar.  
receiveMaximum  
(Opcional) O número máximo de pacotes QoS1 não reconhecidos que a ponte pode enviar.  
Padrão: 100  
maximumPacketSize  
O número máximo de bytes que o cliente aceitará para um pacote MQTT.  
Padrão: nulo (sem limite)  
sessionExpiryInterval  
(Opcional) A quantidade de tempo em segundos que você pode solicitar para que uma sessão dure entre a ponte e o agente local.  
Padrão: 4294967295 (a sessão nunca expira)

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) O URI do agente MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente do padrão 8883. Use o seguinte formato e *port* substitua pela porta em que o corretor MQTT opera:`ssl://localhost:port`.  
Padrão: `ssl://localhost:8883`

startupTimeoutSeconds  
(Opcional) O tempo máximo em segundos para o componente iniciar. O estado do componente muda para `BROKEN` se ele exceder esse tempo limite.  
Padrão: `120`

**Example Exemplo: atualização da mesclagem de configuração**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
O exemplo de arquivo de configuração a seguir especifica:  
+ Retransmita mensagens de dispositivos clientes para AWS IoT Core tópicos que correspondam ao filtro de `clients/+/hello/world` tópicos.
+ Retransmita mensagens de dispositivos cliente para locais publish/subscribe sobre tópicos que correspondam ao filtro de tópicos e adicione o `events/input/` prefixo ao `clients/+/detections` tópico de destino. O tópico de destino resultante corresponde ao filtro de tópicos `events/input/clients/+/detections`.
+ Retransmita mensagens de dispositivos cliente para AWS IoT Core tópicos que correspondam ao filtro de tópicos e adicione o `$aws/rules/StatusUpdateRule/` prefixo ao `clients/+/status` tópico de destino. Este exemplo retransmite essas mensagens diretamente para uma [regra do AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) chamada `StatusUpdateRule` para reduzir custos usando o [Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

**Example Exemplo: configurar o MQTT 5**  
O exemplo de configuração atualiza o seguinte:  
+ Permite que a ponte use o protocolo MQTT 5 com o agente local.
+ Configura a configuração de retenção de MQTT como publicada para o mapeamento de tópicos `ClientDeviceHelloWorld`.

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  },
  "mqtt5RouteOptions": {
    "ClientDeviceHelloWorld": {
      "retainAsPublished": true
    }
  },
  "mqtt": {
    "version": "mqtt5"
  }
}
```

------
#### [ 2.2.6 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Os mapeamentos do tópico que você deseja interligar. Esse componente assina mensagens no tópico de origem e publica as mensagens recebidas no tópico de destino. Cada mapeamento de tópicos define o tópico, o tipo de origem e o tipo de destino.  
Esse objeto contém as informações a seguir:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>O nome desse mapeamento de tópicos. *topicMappingNameKey*Substitua por um nome que ajude a identificar esse mapeamento de tópicos.  
Esse objeto contém as informações a seguir:    
`topic`  
O tópico ou filtro de tópicos para fazer a ponte entre os agentes de origem e de destino.  
Você pode usar os curingas de tópico `+` e `#` do MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte [MQTT topics](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) no *Guia do desenvolvedor do AWS IoT Core *.  
Para usar os curingas de tópico do MQTT com o agente de origem `Pubsub`, você deve usar a versão v2.6.0 ou posterior do [componente de núcleo do Greengrass](greengrass-nucleus-component.md).  
`targetTopicPrefix`  
O prefixo a ser adicionado ao tópico de destino quando esse componente retransmitir a mensagem.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
O agente de mensagens de origem. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
O agente de mensagens de destino. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) O URI do agente MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente do padrão 8883. Use o seguinte formato e *port* substitua pela porta em que o corretor MQTT opera:`ssl://localhost:port`.  
Padrão: `ssl://localhost:8883`

startupTimeoutSeconds  
(Opcional) O tempo máximo em segundos para o componente iniciar. O estado do componente muda para `BROKEN` se ele exceder esse tempo limite.  
Padrão: `120`

**Example Exemplo: atualização da mesclagem de configuração**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
O exemplo de arquivo de configuração a seguir especifica:  
+ Retransmita mensagens de dispositivos clientes para AWS IoT Core tópicos que correspondam ao filtro de `clients/+/hello/world` tópicos.
+ Retransmita mensagens de dispositivos cliente para locais publish/subscribe sobre tópicos que correspondam ao filtro de tópicos e adicione o `events/input/` prefixo ao `clients/+/detections` tópico de destino. O tópico de destino resultante corresponde ao filtro de tópicos `events/input/clients/+/detections`.
+ Retransmita mensagens de dispositivos cliente para AWS IoT Core tópicos que correspondam ao filtro de tópicos e adicione o `$aws/rules/StatusUpdateRule/` prefixo ao `clients/+/status` tópico de destino. Este exemplo retransmite essas mensagens diretamente para uma [regra do AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) chamada `StatusUpdateRule` para reduzir custos usando o [Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.2.0 - 2.2.5 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Os mapeamentos do tópico que você deseja interligar. Esse componente assina mensagens no tópico de origem e publica as mensagens recebidas no tópico de destino. Cada mapeamento de tópicos define o tópico, o tipo de origem e o tipo de destino.  
Esse objeto contém as informações a seguir:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>O nome desse mapeamento de tópicos. *topicMappingNameKey*Substitua por um nome que ajude a identificar esse mapeamento de tópicos.  
Esse objeto contém as informações a seguir:    
`topic`  
O tópico ou filtro de tópicos para fazer a ponte entre os agentes de origem e de destino.  
Você pode usar os curingas de tópico `+` e `#` do MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte [MQTT topics](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) no *Guia do desenvolvedor do AWS IoT Core *.  
Para usar os curingas de tópico do MQTT com o agente de origem `Pubsub`, você deve usar a versão v2.6.0 ou posterior do [componente de núcleo do Greengrass](greengrass-nucleus-component.md).  
`targetTopicPrefix`  
O prefixo a ser adicionado ao tópico de destino quando esse componente retransmitir a mensagem.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
O agente de mensagens de origem. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
O agente de mensagens de destino. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) O URI do agente MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente do padrão 8883. Use o seguinte formato e *port* substitua pela porta em que o corretor MQTT opera:`ssl://localhost:port`.  
Padrão: `ssl://localhost:8883`

**Example Exemplo: atualização da mesclagem de configuração**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
O exemplo de arquivo de configuração a seguir especifica:  
+ Retransmita mensagens de dispositivos clientes para AWS IoT Core tópicos que correspondam ao filtro de `clients/+/hello/world` tópicos.
+ Retransmita mensagens de dispositivos cliente para locais publish/subscribe sobre tópicos que correspondam ao filtro de tópicos e adicione o `events/input/` prefixo ao `clients/+/detections` tópico de destino. O tópico de destino resultante corresponde ao filtro de tópicos `events/input/clients/+/detections`.
+ Retransmita mensagens de dispositivos cliente para AWS IoT Core tópicos que correspondam ao filtro de tópicos e adicione o `$aws/rules/StatusUpdateRule/` prefixo ao `clients/+/status` tópico de destino. Este exemplo retransmite essas mensagens diretamente para uma [regra do AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) chamada `StatusUpdateRule` para reduzir custos usando o [Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.1.x ]

`mqttTopicMapping`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping"></a>
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Os mapeamentos do tópico que você deseja interligar. Esse componente assina mensagens no tópico de origem e publica as mensagens recebidas no tópico de destino. Cada mapeamento de tópicos define o tópico, o tipo de origem e o tipo de destino.  
Esse objeto contém as informações a seguir:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>O nome desse mapeamento de tópicos. *topicMappingNameKey*Substitua por um nome que ajude a identificar esse mapeamento de tópicos.  
Esse objeto contém as informações a seguir:    
`topic`  
O tópico ou filtro de tópicos para fazer a ponte entre os agentes de origem e de destino.  
Se você especificar o agente de origem `LocalMqtt` ou `IotCore`, poderá usar os curingas de tópico `+` e `#` do MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte [MQTT topics](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) no *Guia do desenvolvedor do AWS IoT Core *.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
O agente de mensagens de origem. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
O agente de mensagens de destino. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Opcional) O URI do agente MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente do padrão 8883. Use o seguinte formato e *port* substitua pela porta em que o corretor MQTT opera:`ssl://localhost:port`.  
Padrão: `ssl://localhost:8883`

**Example Exemplo: atualização da mesclagem de configuração**  <a name="mqtt-bridge-component-configuration-example-no-prefix"></a>
O exemplo de atualização de configuração a seguir especifica a retransmissão de mensagens de dispositivos cliente para AWS IoT Core tópicos no `clients/MyClientDevice1/hello/world` e. `clients/MyClientDevice2/hello/world`  

```
{
  "mqttTopicMapping": {
    "ClientDevice1HelloWorld": {
      "topic": "clients/MyClientDevice1/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDevice2HelloWorld": {
      "topic": "clients/MyClientDevice2/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.0.x ]

`mqttTopicMapping`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping"></a>
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Os mapeamentos do tópico que você deseja interligar. Esse componente assina mensagens no tópico de origem e publica as mensagens recebidas no tópico de destino. Cada mapeamento de tópicos define o tópico, o tipo de origem e o tipo de destino.  
Esse objeto contém as informações a seguir:    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>O nome desse mapeamento de tópicos. *topicMappingNameKey*Substitua por um nome que ajude a identificar esse mapeamento de tópicos.  
Esse objeto contém as informações a seguir:    
`topic`  
O tópico ou filtro de tópicos para fazer a ponte entre os agentes de origem e de destino.  
Se você especificar o agente de origem `LocalMqtt` ou `IotCore`, poderá usar os curingas de tópico `+` e `#` do MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte [MQTT topics](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) no *Guia do desenvolvedor do AWS IoT Core *.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
O agente de mensagens de origem. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
O agente de mensagens de destino. Escolha uma das seguintes opções:  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`: o agente MQTT local em que os dispositivos cliente se comunicam.
+ `Pubsub`— O agente de publish/subscribe mensagens local do Greengrass.
+ `IotCore`— O agente de mensagens AWS IoT Core MQTT.
**nota**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
A ponte MQTT usa QoS 1 para publicar e assinar AWS IoT Core, mesmo quando um dispositivo cliente usa QoS 0 para publicar e assinar o broker MQTT local. Como resultado, você pode observar latência adicional ao retransmitir mensagens MQTT de dispositivos clientes no agente MQTT local para o. AWS IoT Core Para obter mais informações sobre a configuração do MQTT em dispositivos principais, consulte [Definir os tempos limite do MQTT e as configurações de cache](configure-greengrass-core-v2.md#configure-mqtt).
`source` e `target` devem ser diferentes.

**Example Exemplo: atualização da mesclagem de configuração**  <a name="mqtt-bridge-component-configuration-example-no-prefix"></a>
O exemplo de atualização de configuração a seguir especifica a retransmissão de mensagens de dispositivos cliente para AWS IoT Core tópicos no `clients/MyClientDevice1/hello/world` e. `clients/MyClientDevice2/hello/world`  

```
{
  "mqttTopicMapping": {
    "ClientDevice1HelloWorld": {
      "topic": "clients/MyClientDevice1/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDevice2HelloWorld": {
      "topic": "clients/MyClientDevice2/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------

## Arquivo de log local
<a name="mqtt-bridge-component-log-file"></a>

Esse componente usa o mesmo arquivo de log do componente de [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\greengrass.log
```

------

**Para ver os logs desse componente**
+ Execute o comando a seguir no dispositivo principal para visualizar o arquivo de log desse componente em tempo real. Substitua `/greengrass/v2` ou *C:\$1greengrass\$1v2* pelo caminho para a pasta AWS IoT Greengrass raiz.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## Changelog
<a name="mqtt-bridge-component-changelog"></a>

A tabela a seguir descreve as alterações em cada versão do componente.


|  **Versão**  |  **Alterações**  | 
| --- | --- | 
|  2.3.2  |  Versão atualizada para [autenticação de dispositivo cliente](client-device-auth-component.md) versão 2.5.0.  | 
| 2.3.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
| 2.3.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.6  |  <a name="changelog-mqtt-bridge-2.2.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.5  |  Versão atualizada para [autenticação de dispositivo cliente](client-device-auth-component.md) versão 2.4.0.  | 
|  2.2.4  |  Versão atualizada para [autenticação de dispositivo cliente](client-device-auth-component.md) do Greengrass versão 2.3.0.  | 
|  2.2.3  |  Esta versão contém correções de bugs e melhorias.  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.0  |  <a name="changelog-mqtt-bridge-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.0.1  |  Esta versão inclui correções de erros e melhorias.  | 
|  2.0.0  |  Versão inicial.  | 