mirror of
https://github.com/espressif/esp-protocols.git
synced 2025-07-27 17:27:27 +02:00
feat(websocket): add unregister event to websocket client
This commit is contained in:
@ -1373,3 +1373,13 @@ esp_err_t esp_websocket_register_events(esp_websocket_client_handle_t client,
|
|||||||
}
|
}
|
||||||
return esp_event_handler_register_with(client->event_handle, WEBSOCKET_EVENTS, event, event_handler, event_handler_arg);
|
return esp_event_handler_register_with(client->event_handle, WEBSOCKET_EVENTS, event, event_handler, event_handler_arg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
esp_err_t esp_websocket_unregister_events(esp_websocket_client_handle_t client,
|
||||||
|
esp_websocket_event_id_t event,
|
||||||
|
esp_event_handler_t event_handler)
|
||||||
|
{
|
||||||
|
if (client == NULL) {
|
||||||
|
return ESP_ERR_INVALID_ARG;
|
||||||
|
}
|
||||||
|
return esp_event_handler_unregister_with(client->event_handle, WEBSOCKET_EVENTS, event, event_handler);
|
||||||
|
}
|
||||||
|
@ -227,6 +227,7 @@ static void websocket_app_start(void)
|
|||||||
xSemaphoreTake(shutdown_sema, portMAX_DELAY);
|
xSemaphoreTake(shutdown_sema, portMAX_DELAY);
|
||||||
esp_websocket_client_close(client, portMAX_DELAY);
|
esp_websocket_client_close(client, portMAX_DELAY);
|
||||||
ESP_LOGI(TAG, "Websocket Stopped");
|
ESP_LOGI(TAG, "Websocket Stopped");
|
||||||
|
esp_websocket_unregister_events(client, WEBSOCKET_EVENT_ANY, websocket_event_handler);
|
||||||
esp_websocket_client_destroy(client);
|
esp_websocket_client_destroy(client);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -460,6 +460,18 @@ esp_err_t esp_websocket_register_events(esp_websocket_client_handle_t client,
|
|||||||
esp_event_handler_t event_handler,
|
esp_event_handler_t event_handler,
|
||||||
void *event_handler_arg);
|
void *event_handler_arg);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Unegister the Websocket Events
|
||||||
|
*
|
||||||
|
* @param client The client handle
|
||||||
|
* @param event The event id
|
||||||
|
* @param event_handler The callback function
|
||||||
|
* @return esp_err_t
|
||||||
|
*/
|
||||||
|
esp_err_t esp_websocket_unregister_events(esp_websocket_client_handle_t client,
|
||||||
|
esp_websocket_event_id_t event,
|
||||||
|
esp_event_handler_t event_handler);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user