diff --git a/CMakeLists.txt b/CMakeLists.txt index a7b1b2f..2dd6dd2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,9 +27,10 @@ set(dependencies freertos esp_system # esp_http_client -# esp_websocket_client + esp_websocket_client cpputils espchrono + tcp_transport ) idf_component_register( diff --git a/src/wrappers/websocket_client.h b/src/wrappers/websocket_client.h index 1bf46b0..5dcfa05 100644 --- a/src/wrappers/websocket_client.h +++ b/src/wrappers/websocket_client.h @@ -6,6 +6,7 @@ // espressif includes #include +#include namespace espcpputils { class websocket_client @@ -44,6 +45,21 @@ public: esp_err_t register_events(esp_websocket_event_id_t event, esp_event_handler_t event_handler, void *event_handler_arg) { return esp_websocket_register_events(handle, event, event_handler, event_handler_arg); } + static std::string opcodeToString(ws_transport_opcodes op_code) + { + switch (op_code) + { + case WS_TRANSPORT_OPCODES_CONT: return "CONT"; + case WS_TRANSPORT_OPCODES_TEXT: return "TEXT"; + case WS_TRANSPORT_OPCODES_BINARY: return "BINARY"; + case WS_TRANSPORT_OPCODES_CLOSE: return "CLOSE"; + case WS_TRANSPORT_OPCODES_PING: return "PING"; + case WS_TRANSPORT_OPCODES_PONG: return "PONG"; + case WS_TRANSPORT_OPCODES_FIN: return "FIN"; + default: return "unknown opcode(" + std::to_string(op_code) + ')'; + } + } + private: esp_websocket_client_handle_t handle; };