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
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 o. Nuvem AWS
Os dispositivos cliente são dispositivos IoT locais que se conectam a um dispositivo central do Greengrass para enviar mensagens e dados MQTT para processamento. Para ter mais informações, consulte Interaja com dispositivos IoT locais.
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.
-
Publicação/assinatura local — 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. Publique/assine mensagens locais
-
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. Publicar/assinar mensagens AWS IoT Core MQTT
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
Versões
Esse componente tem as seguintes versões:
Tipo
Este componente é um componente de plug-in (aws.greengrass.plugin
). O núcleo do Greengrass executa esse componente na mesma Java Virtual Machine (JVM) do núcleo. O núcleo reinicia quando você altera a versão desse componente no dispositivo principal.
Esse componente usa o mesmo arquivo de log do núcleo do Greengrass. Para ter mais informações, consulte Monitore AWS IoT Greengrass os registros.
Para ter mais informações, consulte Tipos de componentes.
Sistema operacional
Esse componente pode ser instalado em dispositivos principais que executam os seguintes sistemas operacionais:
Requisitos
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 broker opera.
-
O componente de ponte MQTT tem suporte para ser executado em uma VPC.
Dependências
Quando você implanta um componente, AWS IoT Greengrass também implanta versões compatíveis de suas dependências. Isso significa que você deve atender aos requisitos do componente e de todas as suas dependências para implantá-lo com êxito. Esta seção lista as dependências das versões lançadas desse componente e as restrições de versão semântica que definem as versões dos componentes para cada dependência. Você também pode visualizar as dependências de cada versão do componente no AWS IoT Greengrass console. 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.
- 2.3.0 and 2.3.1
-
A tabela a seguir lista as dependências das versões 2.3.0 e 2.3.1 desse componente.
- 2.2.5 and 2.2.6
-
A tabela a seguir lista as dependências das versões 2.2.5 e 2.2.6 desse componente.
- 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.
- 2.2.0 – 2.2.2
-
A tabela a seguir lista as dependências das versões 2.2.0 a 2.2.2 desse componente.
- 2.1.1
-
A tabela a seguir lista as dependências da versão 2.1.1 desse componente.
- 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.
Para obter mais informações sobre dependências de componentes, consulte a referência da receita do componente.
Configuração
Esse componente fornece os seguintes parâmetros de configuração que você pode personalizar ao implantar o componente.
- 2.3.0 – 2.3.2
-
mqttTopicMapping
-
Os mapeamentos de tópicos que você deseja unir. 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 seguintes informações:
topicMappingNameKey
-
O nome desse mapeamento de tópicos. Substitua topicMappingNameKey
por um nome que ajude a identificar esse mapeamento de tópicos.
Esse objeto contém as seguintes informações:
topic
-
O tópico ou filtro de tópicos para fazer a ponte entre os corretores de origem e de destino.
Você pode usar os curingas de tópico +
e #
MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte os tópicos do MQTT no Guia do AWS IoT Core desenvolvedor.
targetTopicPrefix
-
O prefixo a ser adicionado ao tópico de destino quando esse componente retransmite a mensagem.
source
-
O agente de mensagens de origem. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
target
-
O agente de mensagens de destino. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
- mqtt5 RouteOptions
-
(Opcional) Fornece opções para configurar mapeamentos de tópicos para conectar mensagens do tópico de origem ao tópico de destino.
Esse objeto contém as seguintes informações:
mqtt5 RouteOptionsNameKey
-
O nome das opções de rota para um mapeamento de tópicos. Substitua mqtt5 RouteOptionsNameKey
pela topicMappingNamechave
correspondente definida no mqttTopicMapping
campo.
Esse objeto contém as seguintes informações:
- Sem local
-
(Opcional) Quando ativada, 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
só é compatível com rotas em source
que LocalMqtt
o.
Padrão: False
- retainAsPublished
-
(Opcional) Quando ativadas, as mensagens encaminhadas pela ponte têm o mesmo retain
sinalizador das mensagens publicadas no agente para essa rota.
retainAsPublished
só é compatível com rotas em source
que LocalMqtt
o.
Padrão: False
- mqtt
-
(Opcional) Configurações do protocolo MQTT para comunicação com o corretor local.
- versão
-
(Opcional) A versão do protocolo MQTT usada pela ponte para se comunicar com o corretor local. Deve ser igual à versão do MQTT selecionada na configuração do núcleo.
Escolha uma das seguintes opções:
Você deve implantar um agente MQTT quando o target
campo source
ou do mqttTopicMapping
objeto estiver definido como. LocalMqtt
Se você escolher a mqtt5
opção, deverá usar Corretora MQTT 5 (EMQX) o.
Padrão: mqtt3
- ackTimeoutSeconds
-
(Opcional) Intervalo de tempo para aguardar os pacotes PUBACK, SUBACK ou UNSUBACK antes de falhar na operação.
Padrão: 60
- connAckTimeoutSrta
-
(Opcional) Intervalo de tempo para esperar por um pacote CONNACK antes de desligar a conexão.
Padrão: 20000 (20 segundos)
- pingTimeoutMs
-
(Opcional) A quantidade de tempo em milissegundos que a ponte espera para receber uma mensagem PINGACK do agente local. Se a espera exceder o tempo limite, a ponte será fechada e reabrirá a conexão MQTT. Esse valor deve ser menor quekeepAliveTimeoutSeconds
.
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. Esse valor deve ser maior quepingTimeoutMs
.
Padrão: 60
- maxReconnectDelaySrta
-
(Opcional) O tempo máximo em segundos para o MQTT se reconectar.
Padrão: 30000 (30 segundos)
- minReconnectDelaySrta
-
(Opcional) O tempo mínimo em segundos para o MQTT se reconectar.
- Receba o máximo
-
(Opcional) O número máximo de pacotes de 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 a corretora local.
Padrão: 4294967295 (a sessão nunca expira)
brokerUri
-
(Opcional) O URI do broker MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente da porta padrão 8883. Use o seguinte formato e substitua a porta 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
exemplo Exemplo: atualização da mesclagem de configurações
O exemplo de atualização de configuração a seguir especifica o seguinte:
-
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 publicação/assinatura local em 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 events/input/clients/+/detections
tópicos.
-
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 AWS IoT regra chamada StatusUpdateRule
para reduzir custos usando o Basic Ingest.
{
"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"
}
}
}
exemplo Exemplo: Configurando o MQTT 5
O exemplo de configuração a seguir atualiza o seguinte:
{
"mqttTopicMapping": {
"ClientDeviceHelloWorld": {
"topic": "clients/+/hello/world",
"source": "LocalMqtt",
"target": "IotCore"
}
},
"mqtt5RouteOptions": {
"ClientDeviceHelloWorld": {
"retainAsPublished": true
}
},
"mqtt": {
"version": "mqtt5"
}
}
- 2.2.6
-
mqttTopicMapping
-
Os mapeamentos de tópicos que você deseja unir. 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 seguintes informações:
topicMappingNameKey
-
O nome desse mapeamento de tópicos. Substitua topicMappingNameKey
por um nome que ajude a identificar esse mapeamento de tópicos.
Esse objeto contém as seguintes informações:
topic
-
O tópico ou filtro de tópicos para fazer a ponte entre os corretores de origem e de destino.
Você pode usar os curingas de tópico +
e #
MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte os tópicos do MQTT no Guia do AWS IoT Core desenvolvedor.
targetTopicPrefix
-
O prefixo a ser adicionado ao tópico de destino quando esse componente retransmite a mensagem.
source
-
O agente de mensagens de origem. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
target
-
O agente de mensagens de destino. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
brokerUri
-
(Opcional) O URI do broker MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente da porta padrão 8883. Use o seguinte formato e substitua a porta 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
exemplo Exemplo: atualização da mesclagem de configurações
O exemplo de atualização de configuração a seguir especifica o seguinte:
-
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 publicação/assinatura local em 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 events/input/clients/+/detections
tópicos.
-
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 AWS IoT regra chamada StatusUpdateRule
para reduzir custos usando o Basic Ingest.
{
"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
-
Os mapeamentos de tópicos que você deseja unir. 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 seguintes informações:
topicMappingNameKey
-
O nome desse mapeamento de tópicos. Substitua topicMappingNameKey
por um nome que ajude a identificar esse mapeamento de tópicos.
Esse objeto contém as seguintes informações:
topic
-
O tópico ou filtro de tópicos para fazer a ponte entre os corretores de origem e de destino.
Você pode usar os curingas de tópico +
e #
MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte os tópicos do MQTT no Guia do AWS IoT Core desenvolvedor.
targetTopicPrefix
-
O prefixo a ser adicionado ao tópico de destino quando esse componente retransmite a mensagem.
source
-
O agente de mensagens de origem. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
target
-
O agente de mensagens de destino. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
brokerUri
-
(Opcional) O URI do broker MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente da porta padrão 8883. Use o seguinte formato e substitua a porta pela porta
em que o corretor MQTT opera:ssl://localhost:port
.
Padrão: ssl://localhost:8883
exemplo Exemplo: atualização da mesclagem de configurações
O exemplo de atualização de configuração a seguir especifica o seguinte:
-
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 publicação/assinatura local em 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 events/input/clients/+/detections
tópicos.
-
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 AWS IoT regra chamada StatusUpdateRule
para reduzir custos usando o Basic Ingest.
{
"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
-
Os mapeamentos de tópicos que você deseja unir. 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 seguintes informações:
topicMappingNameKey
-
O nome desse mapeamento de tópicos. Substitua topicMappingNameKey
por um nome que ajude a identificar esse mapeamento de tópicos.
Esse objeto contém as seguintes informações:
topic
-
O tópico ou filtro de tópicos para fazer a ponte entre os corretores de origem e de destino.
Se você especificar o corretor de IotCore
origem LocalMqtt
ou de origem, poderá usar os curingas de tópico +
e #
MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte os tópicos do MQTT no Guia do AWS IoT Core desenvolvedor.
source
-
O agente de mensagens de origem. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
target
-
O agente de mensagens de destino. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
brokerUri
-
(Opcional) O URI do broker MQTT local. Você deve especificar esse parâmetro se configurar o agente MQTT para usar uma porta diferente da porta padrão 8883. Use o seguinte formato e substitua a porta pela porta
em que o corretor MQTT opera:ssl://localhost:port
.
Padrão: ssl://localhost:8883
exemplo Exemplo: atualização da mesclagem de configurações
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
-
Os mapeamentos de tópicos que você deseja unir. 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 seguintes informações:
topicMappingNameKey
-
O nome desse mapeamento de tópicos. Substitua topicMappingNameKey
por um nome que ajude a identificar esse mapeamento de tópicos.
Esse objeto contém as seguintes informações:
topic
-
O tópico ou filtro de tópicos para fazer a ponte entre os corretores de origem e de destino.
Se você especificar o corretor de IotCore
origem LocalMqtt
ou de origem, poderá usar os curingas de tópico +
e #
MQTT para retransmitir mensagens em todos os tópicos que correspondam a um filtro de tópico. Para obter mais informações, consulte os tópicos do MQTT no Guia do AWS IoT Core desenvolvedor.
source
-
O agente de mensagens de origem. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
target
-
O agente de mensagens de destino. Escolha uma das seguintes opções:
-
LocalMqtt
— O agente MQTT local onde os dispositivos do cliente se comunicam.
-
Pubsub
— O agente local de publicação/assinatura de mensagens do Greengrass.
-
IotCore
— O agente de mensagens AWS IoT Core MQTT.
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 nos dispositivos principais, consulteDefinir MQTT tempos limite e configurações de cache.
source
e target
deve ser diferente.
exemplo Exemplo: atualização da mesclagem de configurações
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
Esse componente usa o mesmo arquivo de log do componente do núcleo do Greengrass.
- Linux
-
/greengrass/v2
/logs/greengrass.log
- Windows
-
C:\greengrass\v2
\logs\greengrass.log
Para ver os registros desse componente
Changelog
A tabela a seguir descreve as alterações em cada versão do componente.
Version (Versão)
|
Alterações
|
2.3.2
|
Versão atualizada para a versão 2.5.0 da autenticação do dispositivo cliente.
|
2.3.1 |
- Correções de erros e melhorias
-
Corrige um problema em que o cliente MQTT local entra em um loop de desconexão.
|
2.3.0 |
- Novos atributos
-
Adiciona suporte ao MQTT5 para fazer a ponte entre fontes MQTT locais AWS IoT Core e fontes MQTT.
|
2.2.6
|
- Novos atributos
-
Adiciona uma nova opção startupTimeoutSeconds de configuração.
|
2.2.5
|
Versão atualizada para a versão 2.4.0 da autenticação do dispositivo cliente.
|
2.2.4
|
Versão atualizada para a versão 2.3.0 de autenticação de dispositivo cliente Greengrass.
|
2.2.3
|
Esta versão contém correções de erros e melhorias.
|
2.2.2
|
- Correções de erros e melhorias
-
|
2.2.1
|
- Correções de erros e melhorias
-
Corrige problemas que podem resultar na falha da assinatura do MQTT bridge nos tópicos do MQTT.
|
2.2.0
|
|
2.1.1
|
- Correções de erros e melhorias
-
|
2.1.0
|
|
2.0.1
|
Esta versão inclui correções de erros e melhorias.
|
2.0.0
|
Versão inicial.
|