#pragma once #include #include #include #include #include class Websocket { public: Websocket(); void StartConnection(std::string url); using MessageCallback_t = std::function; void SetMessageCallback(MessageCallback_t func); void Send(const std::string &str); void Send(const nlohmann::json &j); void Stop(); bool IsOpen() const; private: void OnMessage(const ix::WebSocketMessagePtr &msg); MessageCallback_t m_callback; ix::WebSocket m_websocket; };