MQTT en el servicio Azure Web PubSub (versión preliminar)

Nota:

La compatibilidad con MQTT en Azure Web PubSub está en fase de versión preliminar.

Información general

MQTT es un protocolo ligero de mensajería pub/sub diseñado para dispositivos con recursos restringidos. El servicio Azure Web PubSub ahora admite MQTT a través del transporte de WebSocket, lo que permite la comunicación cruzada entre clientes web MQTT y otros clientes de Web PubSub

Esta nueva funcionalidad aborda dos casos de uso clave:

  1. Aplicaciones en tiempo real con protocolos mixtos: puede permitir que los clientes usen distintos protocolos para intercambiar datos en tiempo real a través del servicio Azure Web PubSub.

  2. Compatibilidad con más lenguajes de programación: puede usar cualquier biblioteca MQTT para conectarse con el servicio, lo que permite la integración con aplicaciones escritas en lenguajes como C++, más allá de los SDK disponibles en C#, JavaScript, Python y Java.

Es importante tener en cuenta que esta compatibilidad con MQTT es una adaptación ligera del protocolo MQTT y se extiende solo a las características que ya admite Azure Web PubSub. Algunas características de MQTT que no se admiten incluyen:

  • Suscripción con caracteres comodín
  • Mensajes retenidos
  • Suscripciones compartidas
  • Alias de tema

Para obtener una lista completa de las características de MQTT admitidas, lea este artículo de documentación.

Para obtener una solución de agente MQTT más completa en Azure, se recomienda explorar Azure Event Grid.

Patrones de intercambio de datos en tiempo real habilitados por la compatibilidad con MQTT

  • Pub/Sub entre clientes web MQTT y clientes nativos Web PubSub
  • Difusión de mensajes a clientes web MQTT
  • Recibir notificaciones para eventos de duración del cliente web MQTT

Cómo se adapta MQTT al sistema de Web PubSub

Nota:

En esta sección se asume que tiene conocimientos básicos sobre los protocolos MQTT y Azure Web PubSub.

El servicio Azure Web PubSub ahora reconoce los mensajes MQTT y los traduce a sus protocolos nativos. En la siguiente tabla se muestran asignaciones de términos similares o equivalentes entre MQTT y Web PubSub. Le ayuda a comprender cómo adaptamos los conceptos de MQTT a los que se encuentran en Web PubSub. Es esencial si quiere usar la API de REST del plano de datos o los controladores de eventos de cliente para interactuar con clientes web MQTT.

Términos de MQTT Términos correspondientes de Web PubSub Relación
Servidor o MQTT broker Servicio Web PubSub El servicio Web PubSub funciona como agentes MQTT para atender conexiones MQTT. Tenga en cuenta que normalmente usamos el término servidor para hacer referencia al servidor ascendente en lugar de a los agentes MQTT de los documentos.
Sesión Connection Conexión en Web PubSub es un concepto lógico que representa una relación de estado entre el cliente y el servicio, y una conexión corresponde a una sesión. Normalmente, estas dos palabras son intercambiables.
Suscribirse a un tema Unirse a un grupo Estas dos acciones tienen el mismo efecto: el cliente recibirá mensajes de ese tema o grupo. El nombre del tema es el nombre del grupo.
Publicar un mensaje en un tema Enviar un mensaje a un grupo Estas dos acciones tienen el mismo efecto: el cliente que se suscriba a ese tema o pertenezca a ese grupo recibirá el mensaje
Id. de cliente Id. de conexión Id. de conexión identifica una conexión a Web PubSub. Usamos id. de cliente como id. de conexión de las conexiones MQTT en Web PubSub.

Paso siguiente