Spec-Zone.ru › Qt

Пространство имён QMqtt

Содержит различные идентификаторы, используемые в модуле Qt MQTT. Подробнее...

Заголовок: #include <QMqtt>
qmake: QT += mqtt
С момента: Qt 5.12

Типы

Перечисление СтатусСообщения { Неизвестно, Опубликовано, Подтверждено, Получено, Освобождено, Завершено }
Перечисление ИндикаторФорматаЗагрузки { НеУказано, UTF8Кодированно }
Перечисление КодПричина { Успех, ПодпискаQoSУровень0, ПодпискаQoSУровень1, ПодпискаQoSУровень2, ОтсутствиеПодписчика, …, ПодпискиСПодстановочнымиЗнакамиНеПоддерживаются }

Подробное описание

Документация по типам

[since 5.12] перечисление QMqtt::СтатусСообщения

Этот тип перечисления определяет доступные состояния сообщения. В зависимости от QoS и роли клиента ожидаются различные статусы сообщений.

Константа Значение Описание
QMqtt::MessageStatus::Unknown 0 Статус сообщения неизвестен.
QMqtt::MessageStatus::Published 1 Клиент получил сообщение для одной из своих подписок. Это относится к уровням QoS 1 и 2.
QMqtt::MessageStatus::Acknowledged 2 Сообщение было подтверждено. Это относится к QoS 1 и указывает на то, что обработка сообщения со стороны клиента завершена.
QMqtt::MessageStatus::Received 3 Сообщение получено. Это относится к QoS 2.
QMqtt::MessageStatus::Released 4 Сообщение было освобождено. Это относится к QoS 2. Для издателя обработка сообщения завершена.
QMqtt::MessageStatus::Completed 5 Сообщение обработано. Это относится к QoS 2 и указывает на то, что обработка сообщения со стороны клиента завершена.

Это перечисление было введено или изменено в Qt 5.12.

[since 5.12] перечисление QMqtt::ИндикаторФорматаЗагрузки

Формат загрузки предоставляет информацию о содержимом сообщения. Это может помочь другим клиентам быстрее обработать сообщение.

Константа Значение Описание
QMqtt::PayloadFormatIndicator::Unspecified 0 Формат не указан.
QMqtt::PayloadFormatIndicator::UTF8Encoded 1 Загрузка сообщения отформатирована как UTF-8 кодированные символьные данные.

Это перечисление было введено или изменено в Qt 5.12.

[since 5.12] перечисление QMqtt::КодПричина

Этот тип перечисления определяет доступные коды ошибок.

Константа Значение Описание
QMqtt::ReasonCode::Success 0 Указанное действие выполнено успешно.
QMqtt::ReasonCode::SubscriptionQoSLevel0 0 Создана подписка с уровнем QoS 0.
QMqtt::ReasonCode::SubscriptionQoSLevel1 0x01 Создана подписка с уровнем QoS 1.
QMqtt::ReasonCode::SubscriptionQoSLevel2 0x02 Создана подписка с уровнем QoS 2.
QMqtt::ReasonCode::NoMatchingSubscriber 0x10 Сообщение принято сервером, но подписчиков для его получения нет. Брокер может вернуть этот код вместо Success.
QMqtt::ReasonCode::NoSubscriptionExisted (since Qt 5.15) 0x11 Клиент не использует соответствующий фильтр тем.
QMqtt::ReasonCode::ContinueAuthentication (since Qt 5.15) 0x18 Продолжить аутентификацию на следующем этапе.
QMqtt::ReasonCode::ReAuthenticate (since Qt 5.15) 0x19 Инициализировать повторную аутентификацию.
QMqtt::ReasonCode::UnspecifiedError 0x80 Произошла неопределенная ошибка.
QMqtt::ReasonCode::MalformedPacket 0x81 Переданный на сервер пакет некорректен.
QMqtt::ReasonCode::ProtocolError 0x82 Произошла ошибка протокола. В большинстве случаев это приведет к отключению клиента сервером.
QMqtt::ReasonCode::ImplementationSpecificError 0x83 Пакет валиден, но получатель его отклонил.
QMqtt::ReasonCode::UnsupportedProtocolVersion 0x84 Запрошенная версия протокола не поддерживается сервером.
QMqtt::ReasonCode::InvalidClientId 0x85 Неверный идентификатор клиента.
QMqtt::ReasonCode::InvalidUserNameOrPassword 0x86 Неверные имя пользователя или пароль.
QMqtt::ReasonCode::NotAuthorized 0x87 Клиент не имеет авторизации для указанного действия.
QMqtt::ReasonCode::ServerNotAvailable 0x88 Сервер недоступен.
QMqtt::ReasonCode::ServerBusy 0x89 Сервер недоступен. Пожалуйста, попробуйте позже.
QMqtt::ReasonCode::ClientBanned 0x8A Клиент заблокирован на сервере.
QMqtt::ReasonCode::InvalidAuthenticationMethod 0x8C Неверный метод аутентификации.
QMqtt::ReasonCode::InvalidTopicFilter 0x8F Неверный фильтр темы.
QMqtt::ReasonCode::InvalidTopicName 0x90 Неверное имя темы.
QMqtt::ReasonCode::MessageIdInUse 0x91 Идентификатор сообщения, используемый в предыдущем пакете, уже используется.
QMqtt::ReasonCode::MessageIdNotFound 0x92 Идентификатор сообщения, используемый в предыдущем пакете, не найден.
QMqtt::ReasonCode::PacketTooLarge 0x95 Полученный пакет слишком большой. См. также QMqttServerConnectionProperties::maximumPacketSize().
QMqtt::ReasonCode::QuotaExceeded 0x97 Превышен административный лимит.
QMqtt::ReasonCode::InvalidPayloadFormat 0x99 Неверный формат полезной нагрузки. См. также QMqttPublishProperties::payloadFormatIndicator().
QMqtt::ReasonCode::RetainNotSupported 0x9A Сервер не поддерживает сохраненные сообщения. См. также QMqttServerConnectionProperties::retainAvailable().
QMqtt::ReasonCode::QoSNotSupported 0x9B Запрошенный уровень QoS не поддерживается. См. также QMqttServerConnectionProperties::maximumQoS().
QMqtt::ReasonCode::UseAnotherServer 0x9C Сервер, к которому пытается подключиться клиент, недоступен. См. также QMqttServerConnectionProperties::serverReference().
QMqtt::ReasonCode::ServerMoved 0x9D Сервер, к которому пытается подключиться клиент, переехал на новый адрес. См. также QMqttServerConnectionProperties::serverReference().
QMqtt::ReasonCode::SharedSubscriptionsNotSupported 0x9E Подписки на общие темы не поддерживаются. См. также QMqttServerConnectionProperties::sharedSubscriptionSupported().
QMqtt::ReasonCode::ExceededConnectionRate 0x9F Превышен лимит частоты подключений.
QMqtt::ReasonCode::SubscriptionIdsNotSupported 0xA1 Идентификаторы подписок не поддерживаются. См. также QMqttServerConnectionProperties::subscriptionIdentifierSupported().
QMqtt::ReasonCode::WildCardSubscriptionsNotSupported 0xA2 Подписки с использованием подстановочных символов не поддерживаются сервером. См. также QMqttServerConnectionProperties::wildcardSupported().

Не все значения доступны во всех сценариях использования. Особенно, некоторые серверы отклонят код причины, не подходящий для конкретной команды. См. таблицу ниже, чтобы выделить ожидаемые коды причин для определенных действий.

Код причины Свойства подключения Свойства подписки Свойства сообщения
Успешно X X X
SubscriptionQoSLevel0 X
SubscriptionQoSLevel1 X
SubscriptionQoSLevel2 X
NoMatchingSubscriber X
UnspecifiedError X X X
MalformedPacket X
ProtocolError X
ImplementationSpecificError X X X
UnsupportedProtocolVersion X
InvalidClientId X
InvalidUserNameOrPassword X
NotAuthorized X X X
ServerNotAvailable X
ServerBusy X
ClientBanned X
InvalidAuthenticationMethod X
InvalidTopicFilter X
InvalidTopicName X X
MessageIdInUse X X
MessageIdNotFound X
PacketTooLarge X
QuotaExceeded X X X
InvalidPayloadFormat X X
RetainNotSupported X
QoSNotSupported X
UseAnotherServer X
ServerMoved X
SharedSubscriptionsNotSupported X
ExceededConnectionRate X
SubscriptionIdsNotSupported X
WildCardSubscriptionsNotSupported X

Этот перечисление был введен или изменён в Qt 5.12.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qmqtt.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API