Пространство имён 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