Spec-Zone.ru › Qt

Класс QMqttClient

Класс QMqttClient представляет центральный доступ к общению с MQTT-брокером. Подробнее...

Заголовок: #include <QMqttClient>
qmake: QT += mqtt
Наследует: QObject
  • Список всех членов, включая унаследованные

Общие типы

перечисление ClientError { NoError, InvalidProtocolVersion, IdRejected, ServerUnavailable, BadUsernameOrPassword, …, Mqtt5SpecificError }
перечисление ClientState { Отключено, Подключение, Подключено }
перечисление ProtocolVersion { MQTT_3_1, MQTT_3_1_1, MQTT_5_0 }
перечисление TransportType { IODevice, AbstractSocket, SecureSocket }

Свойства

  • autoKeepAlive : bool
  • cleanSession : bool
  • clientId : QString
  • error : ClientError
  • hostname : QString
  • keepAlive : quint16
  • password : QString
  • port : quint16
  • protocolVersion : ProtocolVersion
  • state : ClientState
  • username : QString
  • willMessage : QByteArray
  • willQoS : quint8
  • willRetain : bool
  • willTopic : QString

Открытые функции

virtual ~QMqttClient() override
void authenticate(const QMqttAuthenticationProperties &prop)
bool autoKeepAlive() const
bool cleanSession() const
QString clientId() const
void connectToHost()
void connectToHostEncrypted(const QSslConfiguration &conf)
QMqttConnectionProperties connectionProperties() const
void disconnectFromHost()
QMqttClient::ClientError error() const
QString hostname() const
quint16 keepAlive() const
QMqttLastWillProperties lastWillProperties() const
QString password() const
quint16 port() const
QMqttClient::ProtocolVersion protocolVersion() const
qint32 publish(const QMqttTopicName &topic, const QByteArray &message = QByteArray(), quint8 qos = 0, bool retain = false)
qint32 publish(const QMqttTopicName &topic, const QMqttPublishProperties &properties, const QByteArray &message = QByteArray(), quint8 qos = 0, bool retain = false)
bool requestPing()
QMqttServerConnectionProperties serverConnectionProperties() const
void setConnectionProperties(const QMqttConnectionProperties &prop)
void setLastWillProperties(const QMqttLastWillProperties &prop)
void setTransport(QIODevice *device, QMqttClient::TransportType transport)
QMqttClient::ClientState state() const
QMqttSubscription * subscribe(const QMqttTopicFilter &topic, quint8 qos = 0)
QMqttSubscription * subscribe(const QMqttTopicFilter &topic, const QMqttSubscriptionProperties &properties, quint8 qos = 0)
QIODevice * transport() const
void unsubscribe(const QMqttTopicFilter &topic)
void unsubscribe(const QMqttTopicFilter &topic, const QMqttUnsubscriptionProperties &properties)
QString username() const
QByteArray willMessage() const
quint8 willQoS() const
bool willRetain() const
QString willTopic() const

Открытые слоты

void установитьАвтоматическоеПоддержаниеСоединения(bool autoKeepAlive)
void установитьЧистуюСессию(bool cleanSession)
void установитьИдентификаторКлиента(const QString &clientId)
void установитьОшибка(QMqttClient::ClientError error)
void установитьИмяХоста(const QString &hostname)
void установитьПоддержаниеСоединения(quint16 keepAlive)
void установитьПароль(const QString &password)
void установитьПорт(quint16 port)
void установитьВерсиюПротокола(QMqttClient::ProtocolVersion protocolVersion)
void установитьСостояние(QMqttClient::ClientState state)
void установитьИмяПользователя(const QString &username)
void установитьСообщениеWill(const QByteArray &willMessage)
void установитьQoSДляWill(quint8 willQoS)
void установитьСохранениеWill(bool willRetain)
void установитьТемаWill(const QString &willTopic)

Сигналы

void аутентификацияЗавершена(const QMqttAuthenticationProperties &p)
void запросНаАутентификацию(const QMqttAuthenticationProperties &p)
void изменилосьАвтоматическоеПоддержаниеСоединения(bool autoKeepAlive)
void восстановленаСессияБрокера()
void изменилосьЧистаяСессия(bool cleanSession)
void изменилсяИдентификаторКлиента(QString clientId)
void подключено()
void отключено()
void измениласьОшибка(QMqttClient::ClientError error)
void изменилосьИмяХоста(QString hostname)
void изменилосьПоддержаниеСоединения(quint16 keepAlive)
void полученоСообщение(const QByteArray &message, const QMqttTopicName &topic = QMqttTopicName())
void отправленоСообщение(qint32 id)
void изменилосьСостояниеСообщения(qint32 id, QMqtt::MessageStatus s, const QMqttMessageStatusProperties &properties)
void изменилсяПароль(QString password)
void полученОтветPing()
void изменилсяПорт(quint16 port)
void измениласьВерсияПротокола(QMqttClient::ProtocolVersion protocolVersion)
void изменилосьСостояние(QMqttClient::ClientState state)
void изменилосьИмяПользователя(QString username)
void изменилосьСообщениеWill(QByteArray willMessage)
void изменилсяQoSДляWill(quint8 willQoS)
void изменилосьСохранениеWill(bool willRetain)
void измениласьТемаWill(QString willTopic)

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

Клиент MQTT — это программа или устройство, которое использует MQTT для создания сетевого подключения к серверу MQTT, также называемому брокером. Запрос на подключение должен содержать уникальный идентификатор клиента. По желанию, он может содержать тему Will, сообщение Will, имя пользователя и пароль.

После создания подключения клиент может отправлять сообщения, которые могут быть интересны другим клиентам, подписываться на получение уведомлений о темах, отписываться для удаления запроса на уведомления и отключаться от брокера.

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

перечисление QMqttClient::ClientError

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

Константа Значение Описание
QMqttClient::NoError 0 Ошибка не произошла.
QMqttClient::InvalidProtocolVersion 1 Брокер не принимает подключение с указанной версией протокола.
QMqttClient::IdRejected 2 Идентификатор клиента имеет неправильный формат. Это может быть связано с его длиной.
QMqttClient::ServerUnavailable 3 Сетевое соединение установлено, но служба недоступна на стороне брокера.
QMqttClient::BadUsernameOrPassword 4 Данные в имени пользователя или пароле имеют неправильный формат.
QMqttClient::NotAuthorized 5 Клиент не авторизован для подключения.
QMqttClient::TransportInvalid 256 Ошибка возникла в подлежащем транспорте. Например, соединение могло быть прервано неожиданно.
QMqttClient::ProtocolViolation 257 Клиент обнаружил нарушение протокола и, следовательно, закрыл соединение.
QMqttClient::UnknownError 258 Произошла неизвестная ошибка.
QMqttClient::Mqtt5SpecificError 259 Ошибка связана с протоколом MQTT уровня 5. Код причины может предоставить более подробную информацию.

перечисление QMqttClient::ClientState

Это перечисление определяет состояния, в которые может переходить клиент.

Постоянная Значение Описание
QMqttClient::Disconnected 0 Клиент отключен от брокера.
QMqttClient::Connecting 1 Запрос на подключение был отправлен, но брокер еще не одобрил соединение.
QMqttClient::Connected 2 Клиент подключен к брокеру.

enum QMqttClient::ProtocolVersion

Этот перечисление определяет версию протокола MQTT, используемую при общении с брокером.

Постоянная Значение Описание
QMqttClient::MQTT_3_1 3 MQTT Стандарт 3.1
QMqttClient::MQTT_3_1_1 4 MQTT Стандарт 3.1.1, публично известный как версия 4
QMqttClient::MQTT_5_0 5 MQTT Стандарт 5.0

enum QMqttClient::TransportType

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

Постоянная Значение Описание
QMqttClient::IODevice 0 Транспорт использует класс, базирующийся на QIODevice.
QMqttClient::AbstractSocket 1 Транспорт использует класс, базирующийся на QAbstractSocket.
QMqttClient::SecureSocket 2 Транспорт использует класс, базирующийся на QSslSocket.

Свойства

[since 5.14] autoKeepAlive : bool

Это свойство определяет, будет ли клиент автоматически управлять сообщениями keep alive на сервер.

Если это свойство установлено в true, то клиент будет автоматически отправлять сообщение ping на сервер с интервалом keepAlive.

В противном случае пользователь должен будет вручную вызывать requestPing в течение указанного интервала соединения. Если ping не был отправлен в течение интервала, сервер разорвет соединение.

Значение этого свойства по умолчанию — true.

Это свойство было добавлено в Qt 5.14.

Функции доступа:

bool autoKeepAlive() const
void setAutoKeepAlive(bool autoKeepAlive)

Сигнал уведомления:

void autoKeepAliveChanged(bool autoKeepAlive)

См. также keepAlive(), requestPing(), serverConnectionProperties(), и pingResponseReceived().

cleanSession : bool

Это свойство хранит состояние после подключения к брокеру.

Функции доступа:

bool cleanSession() const
void setCleanSession(bool cleanSession)

Сигнал уведомления:

void cleanSessionChanged(bool cleanSession)

clientId : QString

Это свойство хранит идентификатор клиента.

Каждый клиент должен иметь уникальный ID, чтобы иметь возможность подключаться к MQTT-брокеру. Если ID клиента не указан пользователем, он будет сгенерирован автоматически при установлении соединения.

Функции доступа:

QString clientId() const
void setClientId(const QString &clientId)

Сигнал уведомления:

void clientIdChanged(QString clientId)

error : ClientError

Указывает текущую ошибку клиента.

Функции доступа:

QMqttClient::ClientError error() const
void setError(QMqttClient::ClientError error)

Сигнал уведомления:

void errorChanged(QMqttClient::ClientError error)

hostname : QString

Это свойство хранит имя хоста MQTT-брокера для подключения.

Если транспорт не указан через setTransport(), клиент сам создаст сокетное соединение с указанным именем хоста.

Функции доступа:

QString hostname() const
void setHostname(const QString &hostname)

Сигнал уведомления:

void hostnameChanged(QString hostname)

keepAlive : quint16

Это свойство хранит интервал, с которым отправляются регулярные сообщения ping на брокер.

После установления соединения с брокером клиент должен отправлять частые обновления, чтобы подтвердить свою доступность. Интервал между этими обновлениями задается этим свойством.

Интервал указывается в секундах.

Если брокер не отвечает в течение льготного периода, соединение будет закрыто.

Функции доступа:

quint16 keepAlive() const
void setKeepAlive(quint16 keepAlive)

Сигнал уведомления:

void keepAliveChanged(quint16 keepAlive)

См. также autoKeepAlive(), requestPing(), и pingResponseReceived().

password : QString

Это свойство хранит пароль для подключения к брокеру.

Функции доступа:

QString password() const
void setPassword(const QString &password)

Сигнал уведомления:

void passwordChanged(QString password)

port : quint16

Это свойство хранит порт для подключения к MQTT-брокеру.

Если транспорт не указан через setTransport(), клиент создаст сокетное соединение с хостом, используя этот номер порта.

Функции доступа:

quint16 port() const
void setPort(quint16 port)

Сигнал уведомления:

void portChanged(quint16 port)

protocolVersion : ProtocolVersion

Это свойство хранит версию стандарта MQTT, используемую для соединений.

Указывает версию стандарта, используемую клиентом для подключения к брокеру. Допустимые значения:

  • 3: версия стандарта MQTT 3.1.
  • 4: версия стандарта MQTT 3.1.1, часто называемая MQTT 4.

Функции доступа:

QMqttClient::ProtocolVersion protocolVersion() const
void setProtocolVersion(QMqttClient::ProtocolVersion protocolVersion)

Сигнал уведомления:

void protocolVersionChanged(QMqttClient::ProtocolVersion protocolVersion)

state : ClientState

Это свойство хранит текущее состояние клиента.

Функции доступа:

QMqttClient::ClientState state() const
void setState(QMqttClient::ClientState state)

Сигнал уведомления:

void stateChanged(QMqttClient::ClientState state)

username : QString

Это свойство хранит имя пользователя для подключения к брокеру.

Функции доступа:

QString username() const
void setUsername(const QString &username)

Сигнал уведомления:

void usernameChanged(QString username)

willMessage : QByteArray

Это свойство содержит полезную нагрузку сообщения Will.

Функции доступа:

QByteArray willMessage() const
void setWillMessage(const QByteArray &willMessage)

Сигнал уведомления:

void willMessageChanged(QByteArray willMessage)

willQoS : quint8

Это свойство содержит уровень QoS для отправки и хранения сообщения Will.

Функции доступа:

quint8 willQoS() const
void setWillQoS(quint8 willQoS)

Сигнал уведомления:

void willQoSChanged(quint8 willQoS)

willRetain : bool

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

Функции доступа:

bool willRetain() const
void setWillRetain(bool willRetain)

Сигнал уведомления:

void willRetainChanged(bool willRetain)

willTopic : QString

Это свойство содержит тему Will.

Функции доступа:

QString willTopic() const
void setWillTopic(const QString &willTopic)

Сигнал уведомления:

void willTopicChanged(QString willTopic)

Документация по функциям-членам

[signal, since 5.12] void QMqttClient::authenticationFinished(const QMqttAuthenticationProperties &p)

Этот сигнал испускается после завершения расширенной аутентификации. p указывает доступные подробности процесса аутентификации.

После успешной аутентификации испускается QMqttClient::connected.

Примечание: Расширенная аутентификация является частью стандарта MQTT 5.0 и может использоваться только в том случае, если клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также authenticationRequested() и authenticate().

[signal, since 5.12] void QMqttClient::authenticationRequested(const QMqttAuthenticationProperties &p)

Этот сигнал испускается после того, как клиент вызвал QMqttClient::connectToHost или QMqttClient::connectToHostEncrypted и перед установлением соединения. При расширенной аутентификации брокер может запросить дополнительную информацию, которую необходимо предоставить, вызвав QMqttClient::authenticate. p указывает свойства, предоставленные брокером.

Примечание: Расширенная аутентификация является частью стандарта MQTT 5.0 и может использоваться только в том случае, если клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также authenticationFinished() и authenticate().

[signal] void QMqttClient::brokerSessionRestored()

Этот сигнал испускается после того, как клиент успешно подключился к брокерам с свойством cleanSession, установленным в false, и брокер восстановил сеанс.

Сессии могут быть восстановлены, если клиент ранее подключался с тем же clientId.

[signal] void QMqttClient::connected()

Этот сигнал испускается при установлении соединения.

[signal] void QMqttClient::disconnected()

Этот сигнал испускается при закрытии соединения. Соединение может быть закрыто при вызове disconnectFromHost() или при отключении брокера.

[signal] void QMqttClient::messageReceived(const QByteArray &message, const QMqttTopicName &topic = QMqttTopicName())

Этот сигнал испускается при получении нового сообщения. Категория сообщения задаётся параметром topic, а содержимое — message.

[signal] void QMqttClient::messageSent(qint32 id)

Указывает, что сообщение, отправленное функцией publish(), было получено брокером. Параметр id совпадает с возвращаемым значением publish() для отслеживания состояния сообщения.

[signal, since 5.12] void QMqttClient::messageStatusChanged(qint32 id, QMqtt::MessageStatus s, const QMqttMessageStatusProperties &properties)

Этот сигнал испускается при изменении состояния сообщения, идентифицированного значением id. s определяет новое состояние сообщения, а properties — дополнительные свойства, предоставленные сервером.

Эта функция была добавлена в Qt 5.12.

[signal] void QMqttClient::pingResponseReceived()

Этот сигнал испускается после того, как брокер отвечает на вызов requestPing() или сообщение ping keepAlive(), и соединение по-прежнему валидно.

[override virtual] QMqttClient::~QMqttClient()

Удаляет клиент MQTT. Если клиент MQTT ещё не отключён от брокера MQTT, он будет отключён автоматически.

[since 5.12] void QMqttClient::authenticate(const QMqttAuthenticationProperties &prop)

Отправляет запрос на аутентификацию на брокер. prop указывает необходимую информацию для выполнения запроса на аутентификацию.

Эта функция должна вызываться только после испускания сигнала QMqttClient::authenticationRequested.

Примечание: Расширенная аутентификация является частью стандарта MQTT 5.0 и может использоваться только в том случае, если клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также authenticationRequested() и authenticationFinished().

[invokable] void QMqttClient::connectToHost()

Инициализирует подключение к MQTT-брокерам.

Примечание: Эту функцию можно вызвать через систему метаобъектов и из QML. См. Q_INVOKABLE.

[since 5.14] void QMqttClient::connectToHostEncrypted(const QSslConfiguration &conf)

Инициализирует зашифрованное подключение к MQTT-брокерам.

conf указывает конфигурацию SSL, которая будет использоваться для подключения.

Эта функция была добавлена в Qt 5.14.

[since 5.12] QMqttConnectionProperties QMqttClient::connectionProperties() const

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

Примечание: QMqttConnectionProperties может быть использовано только тогда, когда клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также setConnectionProperties().

[invokable] void QMqttClient::disconnectFromHost()

Отключается от брокера MQTT.

Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

[since 5.12] QMqttLastWillProperties QMqttClient::lastWillProperties() const

Возвращает свойства последнего сообщения.

Примечание: QMqttLastWillProperties может быть использовано только тогда, когда клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также setLastWillProperties().

[invokable] qint32 QMqttClient::publish(const QMqttTopicName &topic, const QByteArray &message = QByteArray(), quint8 qos = 0, bool retain = false)

Опубликовывает message на брокер с заданной topic. qos определяет уровень QoS, необходимый для передачи сообщения.

Если retain установлено в true, сообщение останется на брокере для подключения других клиентов и получения сообщения.

Возвращает идентификатор, используемый для внутреннего определения сообщения.

Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

[invokable, since 5.12] qint32 QMqttClient::publish(const QMqttTopicName &topic, const QMqttPublishProperties &properties, const QByteArray &message = QByteArray(), quint8 qos = 0, bool retain = false)

Опубликовывает message на брокер с указанными properties и topic. qos определяет уровень QoS, необходимый для передачи сообщения.

Если retain установлено в true, сообщение останется на брокере для подключения других клиентов и получения сообщения.

Возвращает идентификатор, используемый для внутреннего определения сообщения.

Примечание: properties будут переданы на брокер только тогда, когда клиент укажет MQTT_5_0 в качестве ProtocolVersion.

Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

Эта функция была добавлена в Qt 5.12.

bool QMqttClient::requestPing()

Отправляет сообщение ping на брокер и ожидает ответ.

Если соединение активно и autoKeepAlive установлено в true, вызов этой функции завершится ошибкой, так как клиент отвечает за управление этим процессом.

Использование requestPing() вручную требует вызова каждый раз в течение интервала keepAlive, пока соединение активно.

Для проверки успешности ping, подключитесь к сигналу pingResponseReceived().

Возвращает true если запрос ping был отправлен.

См. также pingResponseReceived(), autoKeepAlive(), и keepAlive().

[since 5.12] QMqttServerConnectionProperties QMqttClient::serverConnectionProperties() const

Возвращает QMqttServerConnectionProperties, возвращенные брокером после попытки подключения.

Это можно использовать для проверки того, что свойства подключения со стороны клиента, установленные с помощью QMqttClient::setConnectionProperties, были приняты брокером. Также в случае неудачной попытки подключения, это можно использовать для диагностики подключения.

Примечание: QMqttServerConnectionProperties может быть использовано только тогда, когда клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также connectionProperties().

[since 5.12] void QMqttClient::setConnectionProperties(const QMqttConnectionProperties &prop)

Устанавливает свойства подключения в prop. QMqttConnectionProperties могут быть использованы для запроса у сервера использования набора определённых функций. После запроса соединения ответ сервера можно получить, вызвав QMqttClient::serverConnectionProperties.

Примечание: Свойства соединения могут быть установлены только если MQTT клиент находится в состоянии Disconnected.

Примечание: QMqttConnectionProperties может быть использовано только тогда, когда клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также connectionProperties().

[since 5.12] void QMqttClient::setLastWillProperties(const QMqttLastWillProperties &prop)

Устанавливает свойства последнего сообщения в prop. QMqttLastWillProperties позволяет установить дополнительные возможности для сообщения последнего сообщения, хранящегося на брокере.

Примечание: Свойства соединения могут быть установлены только если MQTT клиент находится в состоянии Disconnected.

Примечание: QMqttLastWillProperties может быть использовано только тогда, когда клиент указывает MQTT_5_0 в качестве ProtocolVersion.

Эта функция была добавлена в Qt 5.12.

См. также lastWillProperties().

void QMqttClient::setTransport(QIODevice *device, QMqttClient::TransportType transport)

Устанавливает транспорт в device. Транспорт может быть либо типа сокета, либо производным от QIODevice, и задаётся параметром transport.

Примечание: Транспорт может быть изменён только если MQTT клиент находится в состоянии Disconnected.

Примечание: Установка пользовательского транспорта для клиента не перекладывает ответственность за управление соединением. Транспорт должен быть открыт для транспортов на основе QIODevice или подключён для транспортов типа сокета перед вызовом QMqttClient::connectToHost().

См. также transport().

QMqttSubscription *QMqttClient::subscribe(const QMqttTopicFilter &topic, quint8 qos = 0)

Добавляет новую подписку для получения уведомлений по topic. Параметр qos определяет уровень, на котором получаются сообщения о безопасности. Подробнее о доступных уровнях QoS см. Уровни качества обслуживания.

Функция возвращает указатель на QMqttSubscription. Если тема подписывается дважды, возвращаемое значение указывает на тот же экземпляр подписки. MQTT клиент является владельцем подписки.

[since 5.12] QMqttSubscription *QMqttClient::subscribe(const QMqttTopicFilter &topic, const QMqttSubscriptionProperties &properties, quint8 qos = 0)

Добавляет новую подписку для получения уведомлений по topic. Параметр properties определяет дополнительные свойства подписки, которые должны быть проверены брокером. Параметр qos определяет уровень, на котором получаются сообщения о безопасности. Подробнее о доступных уровнях QoS см. Уровни качества обслуживания.

Функция возвращает указатель на QMqttSubscription. Если тема подписывается дважды, возвращаемое значение указывает на тот же экземпляр подписки. MQTT клиент является владельцем подписки.

Примечание: properties будут переданы на брокер только тогда, когда клиент укажет MQTT_5_0 в качестве ProtocolVersion.

END_OF_DOCUMENT_MARKER

Эта функция была представлена в Qt 5.12.

QIODevice *QMqttClient::transport() const

Возвращает транспорт, используемый для связи с брокером.

См. также setTransport().

void QMqttClient::unsubscribe(const QMqttTopicFilter &topic)

Отписывается от topic. Никакие уведомления не будут отправлены по подпискам, сделанным с помощью вызова subscribe().

Примечание: Если клиент отключается от брокера без отписки, брокер сохранит все сообщения и опубликует их при следующей попытке подключения.

[since 5.12] void QMqttClient::unsubscribe(const QMqttTopicFilter &topic, const QMqttUnsubscriptionProperties &properties)

Отписывается от topic. Никакие уведомления не будут отправлены по подпискам, сделанным с помощью вызова subscribe(). properties указывает дополнительные пользовательские свойства, которые должны быть переданы брокерам.

Примечание: properties будут переданы брокерам только тогда, когда клиент укажет MQTT_5_0 в качестве ProtocolVersion.

Примечание: Если клиент отключается от брокера без отписки, брокер сохранит все сообщения и опубликует их при следующей попытке подключения.

Эта функция была представлена в Qt 5.12.

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

Spec-Zone.ru

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