WebSockets MQTT Subscription Example | Qt MQTT 6.4.1

- Qt 6.4
- Qt MQTT
- Qt MQTT Examples
- WebSockets MQTT Subscription Example
- Qt 6.4.1 Reference Documentation

# WebSockets MQTT Subscription Example

     // Copyright (C) 2017 The Qt Company Ltd.
     // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause

     #ifndef CLIENTSUBSCRIPTION_H
     #define CLIENTSUBSCRIPTION_H

     #include "websocketiodevice.h"

     #include <QtCore/QObject>
     #include <QtMqtt/QMqttClient>
     #include <QtWebSockets/QWebSocket>

     class ClientSubscription : public QObject
     {
         Q_OBJECT
     public:
         ClientSubscription(QObject *parent = nullptr);

         void setUrl(const QUrl &url); // ie ws://broker.hivemq.com:8000/mqtt
         void setTopic(const QString &topic);
         void setVersion(int v);
     signals:
         void messageReceived(QByteArray);
         void errorOccured();

     public slots:
         void connectAndSubscribe();
         void handleMessage(const QByteArray &msgContent);

     private:
         QMqttClient m_client;
         QMqttSubscription *m_subscription;
         QUrl m_url;
         QString m_topic;
         WebSocketIODevice m_device;
         int m_version;
     };

     #endif // CLIENTSUBSCRIPTION_H