Compartir a través de


Establecimiento de varias sesiones para un solo cliente

En esta guía, aprenderá a establecer varias sesiones para un único cliente en un espacio de nombres de Event Grid.

Requisitos previos

Compatibilidad con varias sesiones

Para crear varias sesiones por cliente, proporcione el nombre de autenticación del cliente en la propiedad Username del paquete CONNECT. A continuación, puede proporcionar el identificador de sesión en la propiedad del Identificador de cliente (ClientID) del paquete CONNECT.

  • Si la propiedad Username no se proporciona en el paquete CONNECT, no puede crear varias sesiones para el cliente.
  • El campo ClientID no puede estar vacío.
  • ClientID debe ser único en todos los clientes de un espacio de nombres.

Si un cliente intenta asumir la sesión activa de otro cliente mediante la presentación de su nombre de sesión, su solicitud de conexión se rechaza con un error no autorizado. Por ejemplo, si el cliente B intenta conectarse a la sesión 123 que se asigna en ese momento al cliente A, se rechaza la solicitud de conexión del cliente B.

Si un cliente está desconectado sin finalizar su sesión, otros clientes no pueden usar el nombre de la sesión hasta que expire la sesión. Por ejemplo, si el cliente A crea una sesión con el nombre de sesión 123 y el cliente A se desconecta, el cliente B no puede conectarse a la sesión 123 hasta que expire la sesión original.

Configuración de CONNECT en el paquete MQTT CONNECT, incluya el nombre de autenticación de cliente en el campo Nombre de usuario, que significa la identidad del cliente. Este es un ejemplo de metadatos de cliente con el nombre de autenticación del cliente "ipv4=127.0.0.1".

Screenshot showing the client configuration with client authentication name information highlighted.

Ahora, al conectar el cliente al espacio de nombres, puede usar el campo de Identificador del cliente en el paquete MQTT CONNECT como identificador de sesión.

Por ejemplo, en función de la configuración del cliente, puede enviar dos paquetes CONNECT con valores de campo del mismo cliente:

Puede ver una configuración de conexión de ejemplo mediante la aplicación MQTTX.

Primer paquete de conexión:

  • username: “ipv4=127.0.0.1”
  • clientId: “sessionId1”

Screenshot showing the MQTTX application client configuration with first session.

Segundo paquete de conexión:

  • username: “ipv4=127.0.0.1”
  • clientId: “sessionId2”

creenshot showing the MQTTX application client configuration with second session.

Puede usar las mismas credenciales de certificado de cliente para autenticar ambas sesiones.