websocketclient.h 683 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #ifndef WEBSOCKETCLIENT_H
  2. #define WEBSOCKETCLIENT_H
  3. #include <QObject>
  4. #include <QUrl>
  5. #include <QWebSocket>
  6. class WebSocketClient : public QObject
  7. {
  8. Q_OBJECT
  9. public:
  10. WebSocketClient(const QUrl &url, QObject *parent = nullptr);
  11. static WebSocketClient *getInstance();
  12. void sendTextMessage(const QString &message);
  13. private slots:
  14. void onConnected();
  15. void onDisconnected();
  16. void onError(QAbstractSocket::SocketError error);
  17. void onTextMessageReceived(const QString &message);
  18. void retryConnect();
  19. private:
  20. QTimer *retryTimer;
  21. QWebSocket *socket;
  22. QUrl m_url;
  23. private:
  24. void connectToServer();
  25. };
  26. #endif // WEBSOCKETCLIENT_H