Conector MQTT v5
Descripción General
Sección titulada «Descripción General»El conector MQTT v5 habilita la mensajería de publicación/suscripción usando el protocolo MQTT 5.0, añadiendo suscripciones compartidas, propiedades de usuario y expiración de mensajes sobre MQTT v3.
Tipos de Conector:
MqttV5Reader- Suscribirse a tópicos MQTT 5.0MqttV5Writer- Publicar en tópicos MQTT 5.0
Para brokers y clientes MQTT 3.1.1, usa el conector MQTT v3.
Lector MQTT v5
Sección titulada «Lector MQTT v5»Suscribirse a un tópico:
{ "type": "MqttV5Reader", "config": { "endpoint": "mqtt://localhost:1883", "topic": "sensors/temperature", "qos": 1, "clientId": "meddle-v5-reader" }}Con Autenticación y TLS
Sección titulada «Con Autenticación y TLS»{ "type": "MqttV5Reader", "config": { "endpoint": "mqtts://mqtt.example.com:8883", "topic": "factory/sensors/#", "qos": 1, "clientId": "meddle-v5-reader", "username": "mqtt_user", "password": "mqtt_password" }}Suscripción Compartida
Sección titulada «Suscripción Compartida»Distribuye mensajes entre varios lectores usando sharedGroup. El conector se suscribe a $share/<group>/<topic> y el broker balancea la carga de las entregas entre los miembros:
{ "type": "MqttV5Reader", "config": { "endpoint": "mqtt://broker.example.com:1883", "topic": "factory/events", "qos": 1, "clientId": "meddle-v5-reader-1", "sharedGroup": "meddle-workers" }}Escritor MQTT v5
Sección titulada «Escritor MQTT v5»Publicar en un tópico:
{ "type": "MqttV5Writer", "config": { "endpoint": "mqtt://localhost:1883", "topic": "data/output", "qos": 1, "clientId": "meddle-v5-writer" }}Mensaje Retenido con Expiración y Propiedades de Usuario
Sección titulada «Mensaje Retenido con Expiración y Propiedades de Usuario»{ "type": "MqttV5Writer", "config": { "endpoint": "mqtts://mqtt.example.com:8883", "topic": "devices/state", "qos": 1, "clientId": "meddle-v5-writer", "username": "mqtt_user", "password": "mqtt_password", "retain": true, "messageExpiry": 3600, "userProperties": { "source": "meddle", "schema": "v1" } }}Parámetros de Configuración
Sección titulada «Parámetros de Configuración»- endpoint: URL del broker con esquema (
mqtt://host:puertoomqtts://host:puerto) - topic: Tópico para suscribirse o publicar (el Lector admite los comodines
+y#) - qos: Calidad de Servicio:
0,1o2 - clientId: (Opcional) Identificador del cliente
- username: (Opcional) Usuario MQTT
- password: (Opcional) Contraseña MQTT
- sharedGroup: (Lector) Grupo de suscripción compartida para balanceo de carga
- userProperties: Metadatos clave/valor adjuntos a los mensajes
- retain: (Escritor) El broker almacena el último mensaje y lo entrega a los nuevos suscriptores
- messageExpiry: (Escritor) Intervalo de expiración del mensaje en segundos
Niveles de QoS
Sección titulada «Niveles de QoS»- 0: Como máximo una vez (disparar y olvidar)
- 1: Al menos una vez (entrega confirmada)
- 2: Exactamente una vez (entrega asegurada)
Diferencias con MQTT v3
Sección titulada «Diferencias con MQTT v3»- Las suscripciones compartidas (
sharedGroup) permiten que varios suscriptores consuman un único tópico con balanceo de carga del lado del broker. - Las propiedades de usuario transportan metadatos clave/valor arbitrarios por mensaje.
- La expiración de mensajes descarta mensajes no entregados después del intervalo configurado.
- Los códigos de razón en connect, subscribe y publish proporcionan una semántica de errores más rica gestionada por el cliente paho subyacente.
Comodines de Tópico (Solo Lector)
Sección titulada «Comodines de Tópico (Solo Lector)»+- Comodín de un solo nivel (sensors/+/temperature)#- Comodín de múltiples niveles (sensors/#)