Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом руководстве вы узнаете, как создать несколько сеансов для одного клиента в пространстве имен Event Grid.
Требования
- Вы создали пространство имен Event Grid. Используйте это краткое руководство по MQTT: публикация и подписка на тему для создания пространства имен, подресурсов и публикации/подписки на тему.
Поддержка нескольких сеансов
Чтобы создать несколько сеансов для каждого клиента, укажите имя проверки подлинности клиента в свойстве имени пользователя пакета CONNECT. Затем можно указать идентификатор сеанса в свойстве Client Identifier (ClientID) пакета CONNECT.
- Если свойство имени пользователя не указано в пакете CONNECT, невозможно создать несколько сеансов для клиента.
- Поле ClientID не может быть пустым.
- Идентификатор клиента должен быть уникальным для всех клиентов в пространстве имен.
Если клиент пытается перехватить активный сеанс другого клиента, указав его имя, запрос на подключение отклоняется с ошибкой доступа, вызванной отсутствием авторизации. Например, если клиент B пытается подключиться к сеансу 123, назначенному клиенту A, запрос на подключение клиента B отклоняется.
Если клиент отключен без завершения сеанса, другие клиенты не могут использовать имя сеанса до истечения срока действия сеанса. Например, если клиент A создает сеанс с именем сеанса 123, то клиент A отключен, клиент B не может подключиться к сеансу 123 до истечения срока действия исходного сеанса.
Конфигурация CONNECT в пакете CONNECT MQTT включите имя проверки подлинности клиента в поле имени пользователя, которое обозначает идентичность клиента. Ниже приведен пример метаданных клиента с именем проверки подлинности клиента "ipv4=127.0.0.1".
Теперь при подключении клиента к пространству имен можно использовать поле идентификатора клиента в пакете MQTT CONNECT в качестве идентификатора сеанса.
Например, на основе конфигурации клиента можно отправить два пакета CONNECT со значениями полей из одного клиента:
Пример настройки подключения можно просмотреть с помощью приложения MQTTX.
Первый пакет подключения:
- имя пользователя: "ipv4=127.0.0.1"
- clientId: “sessionId1”
Второй пакет подключения:
- имя пользователя: "ipv4=127.0.0.1"
- clientId: "sessionId2"
Для проверки подлинности обоих сеансов можно использовать одни и те же учетные данные сертификата клиента.