#pragma once #include #include #include #include #include #include #include typedef websocketpp::server WsServer; using websocketpp::lib::placeholders::_1; using websocketpp::lib::placeholders::_2; using websocketpp::lib::bind; typedef WsServer::message_ptr message_ptr; class WebsocketServer { public: WebsocketServer(std::string server,uint32_t port); friend void on_new_connection(WebsocketServer* s, websocketpp::connection_hdl hdl); friend void on_message(WebsocketServer* s, websocketpp::connection_hdl hdl, message_ptr msg); friend void on_connection_close(WebsocketServer* s, websocketpp::connection_hdl hdl); int SendData(uint32_t,const char *data,int len,websocketpp::frame::opcode::value); int SendDataAllClient(const char *data,int len,websocketpp::frame::opcode::value); private: std::string m_url; // 地址 uint32_t m_port; // url WsServer *m_server; std::thread *m_thread; std::mutex m_mutex; std::map m_clients; };