From: Wonnam Jang Date: Wed, 4 Jul 2018 09:50:02 +0000 (+0900) Subject: start recording when wait_timer for widget client is timed out X-Git-Tag: submit/tizen/20180809.012922^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ff5e1589632ce92dae37aa62f0ec6d6060f6b48a;p=platform%2Fcore%2Fuifw%2Fvoice-control.git start recording when wait_timer for widget client is timed out Change-Id: I4b6ed1d3ec72d86ea100442b392d978945b98486 Signed-off-by: Wonnam Jang --- diff --git a/server/vcd_server.c b/server/vcd_server.c index d5bf69b..1ebdb5b 100644 --- a/server/vcd_server.c +++ b/server/vcd_server.c @@ -53,6 +53,7 @@ typedef enum { } vcd_send_event_type_e; static int __vcd_server_launch_manager_app(); +static int __start_internal_recognition(); /* * VC Server Internal Functions @@ -1688,6 +1689,7 @@ static int __reset_waiting_for_widget_recording(void) return 0; } +#if 0 static Eina_Bool __send_waiting_timeout_error_to_manager(void* data) { intptr_t ppid = (intptr_t)data; @@ -1698,6 +1700,21 @@ static Eina_Bool __send_waiting_timeout_error_to_manager(void* data) vcdc_send_error_signal_to_manager(vcd_client_manager_get_pid(), VCD_ERROR_OPERATION_FAILED, "voice_engine.error.proc_fail"); return EINA_FALSE; } +#else +static Eina_Bool __send_waiting_timeout_start_recording(void* data) +{ + intptr_t ppid = (intptr_t)data; + int pid = (int)ppid; + SLOG(LOG_ERROR, TAG_VCD, "Widget client didn't send to start recording, pid(%d)", pid); + + int ret = __start_internal_recognition(); + if (0 != ret) { + SLOG(LOG_ERROR, TAG_VCD, "[Server ERROR] Fail to start recongition : %d", ret); + return ret; + } + return EINA_FALSE; +} +#endif static int __set_waiting_for_widget_recording(int pid) { @@ -1706,7 +1723,7 @@ static int __set_waiting_for_widget_recording(int pid) // Check if the app included widget client is terminated or not. If it is terminated, vcd_server_widget_finalize() function will be called // In that function, it will start recording intptr_t ppid = (intptr_t)pid; - g_check_widget_client_timer = ecore_timer_add(2.0, __send_waiting_timeout_error_to_manager, (void*)ppid); + g_check_widget_client_timer = ecore_timer_add(2.0, __send_waiting_timeout_start_recording, (void*)ppid); // Set flag to wait for recording from widget client vcd_client_widget_set_waiting_for_recording(pid, true);