new client connection logic

- esp32 requests for image when ready to receive
- server serves initial image on request
This commit is contained in:
2026-02-16 21:56:28 +09:00
parent 5c16e6deb7
commit 5ae0c64ba9
4 changed files with 39 additions and 11 deletions

View File

@@ -157,11 +157,14 @@ static void ws_event_handler(void *arg, esp_event_base_t event_base,
case WEBSOCKET_EVENT_CONNECTED:
ESP_LOGI(TAG, "Audio WS connected");
s_state = AUDIO_CONNECTED;
s_img_pending = false;
esp_websocket_client_send_text(s_client, "{\"type\":\"request_image\"}", 23, pdMS_TO_TICKS(1000));
break;
case WEBSOCKET_EVENT_DISCONNECTED:
ESP_LOGW(TAG, "Audio WS disconnected");
s_playing = false;
s_img_pending = false;
flush_queue();
s_state = AUDIO_IDLE;
break;
@@ -275,9 +278,11 @@ const lv_img_dsc_t *audio_client_get_status_image(bool *updated)
{
if (updated) {
*updated = s_img_updated;
if (s_img_updated) {
s_img_updated = false;
}
}
return &s_img_dsc;
}
void audio_client_ack_status_image(void)
{
s_img_updated = false;
}