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.
Puente MQTT
El componente puente MQTT (aws.greengrass.clientdevices.mqtt.Bridge
) transmite mensajes MQTT entre los dispositivos cliente, la publicación/suscripción local de Greengrass y. AWS IoT Core Puede utilizar este componente para actuar sobre los mensajes MQTT de los dispositivos cliente en componentes personalizados y sincronizar los dispositivos cliente con los. Nube de AWS
Los dispositivos cliente son dispositivos IoT locales que se conectan a un dispositivo central de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte Interactúa con dispositivos IoT locales.
Puede usar este componente para retransmitir mensajes entre los siguientes agentes de mensajes:
-
MQTT local: el intermediario MQTT local gestiona los mensajes entre los dispositivos cliente y un dispositivo principal.
-
Publicación/suscripción local: el agente de mensajes local de Greengrass gestiona los mensajes entre los componentes de un dispositivo central. Para obtener más información sobre cómo interactuar con estos mensajes en los componentes de Greengrass, consulte. Publicar/suscribir mensajes locales
-
AWS IoT Core — El broker AWS IoT Core MQTT gestiona los mensajes entre dispositivos y Nube de AWS destinos de IoT. Para obtener más información sobre cómo interactuar con estos mensajes en los componentes de Greengrass, consulte. Publicar/suscribir mensajes MQTT AWS IoT Core
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
Versiones
Este componente tiene las siguientes versiones:
Tipo
Este componente es un componente de complemento ()aws.greengrass.plugin
. El núcleo de Greengrass ejecuta este componente en la misma máquina virtual Java (JVM) que el núcleo. El núcleo se reinicia al cambiar la versión de este componente en el dispositivo principal.
Este componente utiliza el mismo archivo de registro que el núcleo de Greengrass. Para obtener más información, consulte Supervisar AWS IoT Greengrass registros.
Para obtener más información, consulte Tipos de componentes.
Sistema operativo
Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
Requisitos
Este componente tiene los siguientes requisitos:
-
Si configura el componente intermediario MQTT del dispositivo principal para que utilice un puerto que no sea el puerto 8883 predeterminado, debe usar MQTT bridge v2.1.0 o posterior. Configúrelo para que se conecte al puerto en el que opera el intermediario.
-
Se admite la ejecución del componente puente MQTT en una VPC.
Dependencias
Al implementar un componente, AWS IoT Greengrass también despliega versiones compatibles de sus dependencias. Esto significa que debe cumplir los requisitos del componente y de todas sus dependencias para poder implementarlo correctamente. En esta sección se enumeran las dependencias de las versiones publicadas de este componente y las restricciones de las versiones semánticas que definen las versiones de los componentes para cada dependencia. También puede ver las dependencias de cada versión del componente en la consola.AWS IoT Greengrass En la página de detalles del componente, busque la lista de dependencias.
- 2.3.2
-
La siguiente tabla muestra las dependencias de la versión 2.3.2 de este componente.
- 2.3.0 and 2.3.1
-
La siguiente tabla muestra las dependencias de las versiones 2.3.0 y 2.3.1 de este componente.
- 2.2.5 and 2.2.6
-
La siguiente tabla muestra las dependencias de las versiones 2.2.5 y 2.2.6 de este componente.
- 2.2.3 and 2.2.4
-
La siguiente tabla muestra las dependencias de las versiones 2.2.3 y 2.2.4 de este componente.
- 2.2.0 – 2.2.2
-
La siguiente tabla muestra las dependencias de las versiones 2.2.0 a 2.2.2 de este componente.
- 2.1.1
-
La siguiente tabla muestra las dependencias de la versión 2.1.1 de este componente.
- 2.0.0 to 2.1.0
-
La siguiente tabla muestra las dependencias de las versiones 2.0.0 a 2.1.0 de este componente.
Para obtener más información sobre las dependencias de los componentes, consulta la referencia de recetas de componentes.
Configuración
Este componente proporciona los siguientes parámetros de configuración que puede personalizar al implementar el componente.
- 2.3.0 – 2.3.2
-
mqttTopicMapping
-
Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada mapeo de temas define el tema, el tipo de fuente y el tipo de destino.
Este objeto contiene la siguiente información:
topicMappingNameKey
-
El nombre de este mapeo de temas. Sustituya topicMappingNameKey
por un nombre que le ayude a identificar este mapeo de temas.
Este objeto contiene la siguiente información:
topic
-
El tema o filtro de temas que sirve de puente entre los corredores de origen y de destino.
Puede utilizar los caracteres comodín de temas +
y de #
MQTT para transmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte los temas de MQTT en la AWS IoT Core Guía para desarrolladores.
targetTopicPrefix
-
El prefijo que se añade al tema de destino cuando este componente transmite el mensaje.
source
-
El intermediario de mensajes de origen. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
target
-
El intermediario de mensajes de destino. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
- mqtt5 RouteOptions
-
(Opcional) Proporciona opciones para configurar las asignaciones de temas para unir los mensajes del tema de origen al tema de destino.
Este objeto contiene la siguiente información:
mqtt5 RouteOptionsNameKey
-
El nombre de las opciones de ruta para el mapeo de un tema. Sustituya mqtt5 RouteOptionsNameKey
por la topicMappingNameclave
correspondiente definida en el mqttTopicMapping
campo.
Este objeto contiene la siguiente información:
- No es local
-
(Opcional) Cuando está activado, el puente no reenvía los mensajes sobre un tema que haya publicado el propio puente. Utilice esta opción para evitar los bucles, de la siguiente manera:
{
"mqtt5RouteOptions": {
"toIoTCore": {
"noLocal": true
}
},
"mqttTopicMapping": {
"toIoTCore": {
"topic": "device",
"source": "LocalMqtt",
"target": "IotCore"
},
"toLocal": {
"topic": "device",
"source": "IotCore",
"target": "LocalMqtt"
}
}
}
noLocal
solo se admite en las rutas en las que source
estáLocalMqtt
.
Predeterminado: false
- retainAsPublished
-
(Opcional) Cuando está habilitada, los mensajes reenviados por el puente tienen la misma retain
marca que los mensajes publicados en el intermediario para esa ruta.
retainAsPublished
solo se admite en las rutas en las que source
estáLocalMqtt
.
Predeterminado: false
- mqtt
-
(Opcional) Configuración del protocolo MQTT para comunicarse con el intermediario local.
- versión
-
(Opcional) La versión del protocolo MQTT utilizada por el puente para comunicarse con el intermediario local. Debe ser la misma que la versión de MQTT seleccionada en la configuración del núcleo.
Elija una de las siguientes opciones:
Debe implementar un agente MQTT cuando el target
campo source
o del mqttTopicMapping
objeto esté establecido en. LocalMqtt
Si elige mqtt5
esta opción, debe usar laBróker MQTT 5 (EMQX).
Valor predeterminado: mqtt3
- ackTimeoutSeconds
-
(Opcional) Intervalo de tiempo para esperar a que lleguen los paquetes PUBACK, SUBACK o UNSUBACK antes de que se produzca un error en la operación.
Predeterminado: 60
- connAckTimeoutSra
-
(Opcional) Intervalo de tiempo para esperar un paquete CONNACK antes de cerrar la conexión.
Predeterminado: 20000 (20 segundos)
- pingTimeoutMs
-
(Opcional) El tiempo en milisegundos que el puente espera a recibir un mensaje PINGACK del intermediario local. Si la espera supera el tiempo de espera, el puente se cierra y vuelve a abrir la conexión MQTT. Este valor debe ser inferior a. keepAliveTimeoutSeconds
Predeterminado: 30000 (30 segundos)
- keepAliveTimeoutSegundos
-
(Opcional) El tiempo en segundos que transcurre entre cada mensaje PING que envía el puente para mantener activa la conexión MQTT. Este valor debe ser superior a. pingTimeoutMs
Predeterminado: 60
- maxReconnectDelaySrta.
-
(Opcional) El tiempo máximo en segundos que tarda MQTT en volver a conectarse.
Predeterminado: 30000 (30 segundos)
- minReconnectDelaySrta.
-
(Opcional) El tiempo mínimo en segundos para que MQTT se vuelva a conectar.
- Reciba el máximo
-
(Opcional) El número máximo de paquetes QoS1 no confirmados que el puente puede enviar.
Predeterminado: 100
- maximumPacketSize
-
El número máximo de bytes que el cliente aceptará para un paquete MQTT.
Predeterminado: nulo (sin límite)
- sessionExpiryInterval
-
(Opcional) La cantidad de tiempo en segundos que puede solicitar para que dure una sesión entre el puente y el intermediario local.
Predeterminado: 4294967295 (la sesión nunca caduca)
brokerUri
-
(Opcional) El URI del broker MQTT local. Debe especificar este parámetro si configura el broker MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustituya el puerto por el puerto
en el que opera el corredor MQTT:. ssl://localhost:port
Valor predeterminado: ssl://localhost:8883
- startupTimeoutSeconds
-
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a BROKEN
si supera este tiempo de espera.
Valor predeterminado: 120
ejemplo Ejemplo: actualización de la combinación de configuraciones
El siguiente ejemplo de actualización de configuración especifica lo siguiente:
-
Transmita mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de clients/+/hello/world
temas.
-
Transmita los mensajes desde los dispositivos cliente a los usuarios locales, publique o suscriba los temas que coincidan con el filtro de temas y añada el events/input/
prefijo al clients/+/detections
tema de destino. El tema de destino resultante coincide con el filtro de temas. events/input/clients/+/detections
-
Transmita los mensajes de los dispositivos cliente a los AWS IoT Core temas que coincidan con el clients/+/status
filtro de temas y añada el $aws/rules/StatusUpdateRule/
prefijo al tema de destino. En este ejemplo, se transmiten estos mensajes directamente a una AWS IoT regla denominada StatusUpdateRule
reducción de costes mediante 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"
}
}
}
ejemplo Ejemplo: configurar MQTT 5
El siguiente ejemplo de configuración actualiza lo siguiente:
{
"mqttTopicMapping": {
"ClientDeviceHelloWorld": {
"topic": "clients/+/hello/world",
"source": "LocalMqtt",
"target": "IotCore"
}
},
"mqtt5RouteOptions": {
"ClientDeviceHelloWorld": {
"retainAsPublished": true
}
},
"mqtt": {
"version": "mqtt5"
}
}
- 2.2.6
-
mqttTopicMapping
-
Los mapeos de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada mapeo de temas define el tema, el tipo de fuente y el tipo de destino.
Este objeto contiene la siguiente información:
topicMappingNameKey
-
El nombre de este mapeo de temas. Sustituya topicMappingNameKey
por un nombre que le ayude a identificar este mapeo de temas.
Este objeto contiene la siguiente información:
topic
-
El tema o filtro de temas que sirve de puente entre los corredores de origen y de destino.
Puede utilizar los caracteres comodín de temas +
y de #
MQTT para transmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte los temas de MQTT en la AWS IoT Core Guía para desarrolladores.
targetTopicPrefix
-
El prefijo que se añade al tema de destino cuando este componente transmite el mensaje.
source
-
El intermediario de mensajes de origen. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
target
-
El intermediario de mensajes de destino. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
brokerUri
-
(Opcional) El URI del broker MQTT local. Debe especificar este parámetro si configura el broker MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustituya el puerto por el puerto
en el que opera el corredor MQTT:. ssl://localhost:port
Valor predeterminado: ssl://localhost:8883
- startupTimeoutSeconds
-
(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a BROKEN
si supera este tiempo de espera.
Valor predeterminado: 120
ejemplo Ejemplo: actualización de la combinación de configuraciones
El siguiente ejemplo de actualización de configuración especifica lo siguiente:
-
Transmita mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de clients/+/hello/world
temas.
-
Transmita los mensajes desde los dispositivos cliente a los usuarios locales, publique o suscriba los temas que coincidan con el filtro de temas y añada el events/input/
prefijo al clients/+/detections
tema de destino. El tema de destino resultante coincide con el filtro de temas. events/input/clients/+/detections
-
Transmita los mensajes de los dispositivos cliente a los AWS IoT Core temas que coincidan con el clients/+/status
filtro de temas y añada el $aws/rules/StatusUpdateRule/
prefijo al tema de destino. En este ejemplo, se transmiten estos mensajes directamente a una AWS IoT regla denominada StatusUpdateRule
reducción de costes mediante 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
-
Los mapeos de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada mapeo de temas define el tema, el tipo de fuente y el tipo de destino.
Este objeto contiene la siguiente información:
topicMappingNameKey
-
El nombre de este mapeo de temas. Sustituya topicMappingNameKey
por un nombre que le ayude a identificar este mapeo de temas.
Este objeto contiene la siguiente información:
topic
-
El tema o filtro de temas que sirve de puente entre los corredores de origen y de destino.
Puede utilizar los caracteres comodín de temas +
y de #
MQTT para transmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte los temas de MQTT en la AWS IoT Core Guía para desarrolladores.
targetTopicPrefix
-
El prefijo que se añade al tema de destino cuando este componente transmite el mensaje.
source
-
El intermediario de mensajes de origen. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
target
-
El intermediario de mensajes de destino. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
brokerUri
-
(Opcional) El URI del broker MQTT local. Debe especificar este parámetro si configura el broker MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustituya el puerto por el puerto
en el que opera el corredor MQTT:. ssl://localhost:port
Valor predeterminado: ssl://localhost:8883
ejemplo Ejemplo: actualización de combinación de configuraciones
El siguiente ejemplo de actualización de configuración especifica lo siguiente:
-
Transmita mensajes desde los dispositivos cliente a AWS IoT Core temas que coincidan con el filtro de clients/+/hello/world
temas.
-
Transmita los mensajes desde los dispositivos cliente a los usuarios locales, publique o suscriba los temas que coincidan con el filtro de temas y añada el events/input/
prefijo al clients/+/detections
tema de destino. El tema de destino resultante coincide con el filtro de temas. events/input/clients/+/detections
-
Transmita los mensajes de los dispositivos cliente a los AWS IoT Core temas que coincidan con el clients/+/status
filtro de temas y añada el $aws/rules/StatusUpdateRule/
prefijo al tema de destino. En este ejemplo, se transmiten estos mensajes directamente a una AWS IoT regla denominada StatusUpdateRule
reducción de costes mediante 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
-
Los mapeos de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada mapeo de temas define el tema, el tipo de fuente y el tipo de destino.
Este objeto contiene la siguiente información:
topicMappingNameKey
-
El nombre de este mapeo de temas. Sustituya topicMappingNameKey
por un nombre que le ayude a identificar este mapeo de temas.
Este objeto contiene la siguiente información:
topic
-
El tema o filtro de temas que sirve de puente entre los corredores de origen y de destino.
Si especifica el intermediario LocalMqtt
o el intermediario IotCore
fuente, puede utilizar los caracteres comodín de temas +
y #
MQTT para retransmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte los temas de MQTT en la AWS IoT Core Guía para desarrolladores.
source
-
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
target
-
El intermediario de mensajes de destino. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
brokerUri
-
(Opcional) El URI del broker MQTT local. Debe especificar este parámetro si configura el broker MQTT para que utilice un puerto diferente al puerto predeterminado 8883. Utilice el siguiente formato y sustituya el puerto por el puerto
en el que opera el corredor MQTT:. ssl://localhost:port
Valor predeterminado: ssl://localhost:8883
ejemplo Ejemplo: actualización de combinación de configuraciones
El siguiente ejemplo de actualización de configuración especifica la retransmisión de mensajes desde los dispositivos cliente AWS IoT Core a los clients/MyClientDevice2/hello/world
temas clients/MyClientDevice1/hello/world
y.
{
"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
-
Las asignaciones de temas que desea unir. Este componente se suscribe a los mensajes del tema de origen y publica los mensajes que recibe en el tema de destino. Cada mapeo de temas define el tema, el tipo de fuente y el tipo de destino.
Este objeto contiene la siguiente información:
topicMappingNameKey
-
El nombre de este mapeo de temas. Sustituya topicMappingNameKey
por un nombre que le ayude a identificar este mapeo de temas.
Este objeto contiene la siguiente información:
topic
-
El tema o filtro de temas que sirve de puente entre los corredores de origen y de destino.
Si especifica el intermediario LocalMqtt
o el intermediario IotCore
fuente, puede utilizar los caracteres comodín de temas +
y #
MQTT para retransmitir mensajes sobre todos los temas que coincidan con un filtro de temas. Para obtener más información, consulte los temas de MQTT en la AWS IoT Core Guía para desarrolladores.
source
-
El agente de mensajes de origen. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
target
-
El intermediario de mensajes de destino. Puede elegir entre las siguientes opciones:
-
LocalMqtt
— El intermediario MQTT local donde se comunican los dispositivos cliente.
-
Pubsub
— El intermediario local de mensajes de publicación/suscripción de Greengrass.
-
IotCore
— El intermediario de mensajes AWS IoT Core MQTT.
El puente MQTT usa QoS 1 para publicar y AWS IoT Core suscribirse, incluso cuando un dispositivo cliente usa QoS 0 para publicar y suscribirse al broker MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos cliente del broker MQTT local. AWS IoT Core Para obtener más información sobre la configuración de MQTT en los dispositivos principales, consulte. Configure los tiempos de espera y los ajustes de caché de MQTT
source
y target
debe ser diferente.
ejemplo Ejemplo: actualización de combinación de configuraciones
El siguiente ejemplo de actualización de configuración especifica la retransmisión de mensajes desde los dispositivos cliente AWS IoT Core a los clients/MyClientDevice2/hello/world
temas clients/MyClientDevice1/hello/world
y.
{
"mqttTopicMapping": {
"ClientDevice1HelloWorld": {
"topic": "clients/MyClientDevice1/hello/world",
"source": "LocalMqtt",
"target": "IotCore"
},
"ClientDevice2HelloWorld": {
"topic": "clients/MyClientDevice2/hello/world",
"source": "LocalMqtt",
"target": "IotCore"
}
}
}
Archivo de registro local
Este componente utiliza el mismo archivo de registro que el componente núcleo de Greengrass.
- Linux
-
/greengrass/v2
/logs/greengrass.log
- Windows
-
C:\greengrass\v2
\logs\greengrass.log
Para ver los registros de este componente
Registros de cambios
En la siguiente tabla se describen los cambios en cada versión del componente.
Versión
|
Cambios
|
2.3.2
|
Versión actualizada para la versión 2.5.0 de autenticación de dispositivos cliente.
|
2.3.1 |
- Mejoras y correcciones de errores
-
Soluciona un problema por el que el cliente MQTT local entra en un bucle de desconexión.
|
2.3.0 |
- Nuevas características
-
Añade compatibilidad con MQTT5 para conectar fuentes MQTT locales AWS IoT Core y entre ellas.
|
2.2.6
|
- Nuevas características
-
Añade una nueva opción de configuración. startupTimeoutSeconds
|
2.2.5
|
Versión actualizada para la versión 2.4.0 de autenticación de dispositivos cliente.
|
2.2.4
|
Versión actualizada para la versión 2.3.0 de autenticación de dispositivos cliente de Greengrass.
|
2.2.3
|
Esta versión contiene correcciones de errores y mejoras.
|
2.2.2
|
- Mejoras y correcciones de errores
-
|
2.2.1
|
- Mejoras y correcciones de errores
-
Corrige problemas que podían provocar que MQTT Bridge no pudiera suscribirse a los temas de MQTT.
|
2.2.0
|
- Nuevas características
-
-
Añade compatibilidad con los caracteres comodín (# y+ ) de los temas MQTT cuando se especifica la publicación o suscripción local como agente de mensajes de origen.
Esta función requiere la versión 2.6.0 o posterior del componente núcleo de Greengrass.
-
Añade la targetTopicPrefix opción, que puede especificar, para configurar el puente MQTT de forma que añada un prefijo al tema de destino cuando retransmita un mensaje.
|
2.1.1
|
- Mejoras y correcciones de errores
-
-
Soluciona problemas relacionados con la forma en que este componente gestiona las actualizaciones de restablecimiento de la configuración.
-
Reduce la frecuencia con la que el cliente MQTT se desconecta cuando los certificados rotan.
|
2.1.0
|
|
2.0.1
|
Esta versión incluye correcciones de errores y mejoras.
|
2.0.0
|
Versión inicial.
|