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.
Puede retransmitir mensajes MQTT y otros datos entre dispositivos de cliente y AWS IoT Core. Los dispositivos de cliente se conectan al componente agente de MQTT que se ejecuta en el dispositivo principal. De forma predeterminada, los dispositivos principales no transmiten mensajes o datos MQTT entre los dispositivos de cliente y AWS IoT Core. De forma predeterminada, los dispositivos de cliente solo pueden comunicarse entre sí a través de MQTT.
Para retransmitir mensajes MQTT entre los dispositivos de cliente y AWS IoT Core, configure el componente puente de MQTT para que haga lo siguiente:
-
Retransmitir mensajes desde los dispositivos de cliente a AWS IoT Core.
-
Retransmitir mensajes desde AWS IoT Core a los dispositivos de cliente.
nota
El puente de MQTT usa QoS 1 para publicar y suscribir en AWS IoT Core, incluso cuando un dispositivo de cliente usa QoS 0 para publicar y suscribirse al agente MQTT local. Como resultado, es posible que observe una latencia adicional al retransmitir mensajes MQTT desde los dispositivos de cliente del agente MQTT local a AWS IoT Core. Para obtener más información acerca de la configuración de MQTT en los dispositivos principales, consulte Configure los MQTT tiempos de espera y los ajustes de la memoria caché.
Configuración e implementación del componente puente de MQTT
El componente puente de MQTT utiliza una lista de asignaciones de temas, cada una de las cuales especifica un origen y un destino del mensaje. Para retransmitir mensajes entre los dispositivos de cliente y AWS IoT Core, implemente el componente puente de MQTT y especifique cada tema de origen y destino en la configuración del componente.
Para implementar el componente puente MQTT en un dispositivo principal o en un grupo de dispositivos principales, cree una implementación que incluya el componente aws.greengrass.clientdevices.mqtt.Bridge
. Especifique las asignaciones de temas, mqttTopicMapping
, en la configuración del componente puente de MQTT en la implementación.
El siguiente ejemplo define una implementación que configura el componente puente de MQTT para retransmitir mensajes sobre temas clients/+/hello/world
que coinciden con el filtro de temas desde los dispositivos de cliente a AWS IoT Core. La actualización de configuración merge
requiere un objeto JSON serializado. Para obtener más información, consulte Actualización de las configuraciones de los componentes.
{
"mqttTopicMapping": {
"HelloWorldIotCore": {
"topic": "clients/+/hello/world",
"source": "LocalMqtt",
"target": "IotCore"
}
}
}
Retransmisión de mensajes MQTT
Para retransmitir mensajes MQTT entre dispositivos de cliente y AWS IoT Core, configure e implemente el componente puente de MQTT y especifique los temas a retransmitir.
ejemplo Ejemplo: retransmitir mensajes sobre un tema desde los dispositivos de cliente a AWS IoT Core
El siguiente ejemplo define una implementación que configura el componente puente de MQTT para retransmitir mensajes sobre temas clients/+/hello/world/event
que coinciden con el filtro de temas desde los dispositivos de cliente a AWS IoT Core.
{
"mqttTopicMapping": {
"HelloWorldEvent": {
"topic": "clients/+/hello/world/event",
"source": "LocalMqtt",
"target": "IotCore"
}
}
}
ejemplo Ejemplo: retransmitir mensajes sobre un tema desde AWS IoT Core a los dispositivos de cliente
El siguiente ejemplo define una implementación que configura el componente puente de MQTT para retransmitir mensajes sobre temas clients/+/hello/world/event/response
que coinciden con el filtro de temas desde AWS IoT Core a los dispositivos de cliente.
{
"mqttTopicMapping": {
"HelloWorldEventConfirmation": {
"topic": "clients/+/hello/world/event/response",
"source": "IotCore",
"target": "LocalMqtt"
}
}
}