#pragma once #include "esp_err.h" #include #include "platform_client.h" #include "cJSON.h" esp_err_t call_client_save_bind_voice(const cJSON *data); esp_err_t platform_request(const char *method,const char *path,const char *body,const char *request_id,char **out); esp_err_t call_client_boot(void); const char *call_client_start_error(void); const platform_volc_credential_t *call_client_credential(void); const char *call_client_rtc_app_id(void); void call_client_engine_ready(bool ready); bool call_client_is_engine_ready(void); esp_err_t call_client_begin(void); bool call_client_audio_allowed(void); const char *call_client_bot_id(void); const char *call_client_params(void); int call_client_poll(void); // Compatibility hooks. Direct chat receives transcripts through provider callbacks; // these functions never upload text or perform HTTP in an SDK/audio callback. void call_client_observe(const char *type); esp_err_t call_client_turn(const char *speaker,const char *id,const char *text); void call_client_stop_result(bool started,int result); void call_client_finish(bool failed); bool call_client_busy(void); // Atomically exclude new conversations while a disruptive command executes. bool call_client_enter_maintenance(void); void call_client_leave_maintenance(void); bool call_client_standby(void); // Called before startup, or while the caller owns the maintenance exclusion. esp_err_t call_client_set_standby(bool standby);