INCLUDE(FindPkgConfig)
pkg_check_modules(pkgs REQUIRED
aul buxton2 capi-appfw-app-control capi-appfw-app-manager capi-base-common capi-media-audio-io capi-media-sound-manager ecore-wl2
- capi-system-info cynara-client cynara-session dbus-1 db-util dlog ecore glib-2.0 json-glib-1.0 libgum libtzplatform-config libxml-2.0 sqlite3 vconf gmock bundle rpc-port
+ capi-system-info cynara-client cynara-session db-util dlog ecore glib-2.0 json-glib-1.0 libgum libtzplatform-config libxml-2.0 sqlite3 vconf gmock bundle rpc-port
)
## config ##
INSTALL(FILES ${CMAKE_SOURCE_DIR}/vc-config.xml DESTINATION ${TZ_SYS_RO_SHARE}/voice/vc/1.0)
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/org.tizen.voice.vcserver.service DESTINATION ${TZ_SYS_RO_SHARE}/dbus-1/services)
-
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/vc-server.conf DESTINATION /etc/dbus-1/session.d)
-
## vc_getengine ##
IF("${ARCH}" MATCHES "^arm.*")
INSTALL(PROGRAMS ${CMAKE_SOURCE_DIR}/bin/armv7l/vc_getengine DESTINATION ${TZ_SYS_BIN})
vc.c
vc_data.cpp
vc_client.c
-# vc_dbus.c
vc_tidl.c
vc_proxy.c
../common/vc_cmd_db.c
)
SET(SETTING_SRCS
-# vc_setting_dbus.c
vc_setting_tidl.c
vc_setting_proxy.c
vc_setting.c
vc_mgr_tidl.c
vc_mgr_proxy.c
vc_mgr_stub.c
- vc_mgr_dbus.c
../common/vc_cmd_db.c
../common/vc_command.c
../common/vc_command_util.c
#include "vc_command.h"
#include "vc_config_mgr.h"
#include "vc_data.h"
-// #include "vc_dbus.h"
#include "vc_tidl.h"
#include "vc_info_parser.h"
#include "vc_json_parser.h"
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-#include "vc_command.h"
-#include "vc_dbus.h"
-#include "vc_main.h"
-
-static pthread_mutex_t g_dbus_mutex = PTHREAD_MUTEX_INITIALIZER;
-
-static int g_waiting_time = 3000;
-static int g_waiting_short_time = 200;
-static bool g_is_connection_opened = false;
-
-static Ecore_Fd_Handler* g_fd_handler = NULL;
-
-static DBusConnection* g_conn_sender = NULL;
-static DBusConnection* g_conn_listener = NULL;
-
-extern int __vc_cb_error(int reason, int daemon_pid, char* msg);
-
-extern int __vc_cb_error_to_app(int pid, int reason, char* msg);
-
-extern void __vc_cb_result();
-
-extern int __vc_cb_service_state(int state);
-
-extern int __vc_cb_manager_pid(int manager_pid);
-
-extern int __vc_cb_tts_streaming(int utt_id, vc_feedback_event_e event, char* buffer, int len);
-
-extern int __vc_cb_utterance_status(int utt_id, int utt_status);
-
-//LCOV_EXCL_START
-static Eina_Bool listener_event_callback(void* data, Ecore_Fd_Handler *fd_handler)
-{
- if (NULL == g_conn_listener) return ECORE_CALLBACK_RENEW;
-
- dbus_connection_read_write_dispatch(g_conn_listener, 50);
-
- while (1) {
- DBusMessage* msg = NULL;
- msg = dbus_connection_pop_message(g_conn_listener);
-
- /* loop again if we haven't read a message */
- if (NULL == msg) {
- break;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- char if_name[64] = {0, };
- snprintf(if_name, 64, "%s", VC_CLIENT_SERVICE_INTERFACE);
-
- if (dbus_message_is_method_call(msg, if_name, VCD_METHOD_HELLO)) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@@ Get Hello");
- int pid = 0;
- int response = -1;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (pid > 0) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc get hello : pid(%d) ", pid);
- response = 1;
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc get hello : invalid pid ");
- }
-
- DBusMessage* reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &response, DBUS_TYPE_INVALID);
-
- if (!dbus_connection_send(g_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc get hello : fail to send reply");
- else
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc get hello : result(%d)", response);
-
- dbus_connection_flush(g_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc get hello : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@@");
- } /* VCD_METHOD_HELLO */
-
- else if (dbus_message_is_signal(msg, if_name, VCD_METHOD_SET_SERVICE_STATE)) {
- int state = 0;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &state, DBUS_TYPE_INVALID);
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@ state changed : %d", state);
-
- __vc_cb_service_state(state);
-
- } /* VCD_METHOD_SET_SERVICE_STATE */
-
- else if (dbus_message_is_method_call(msg, if_name, VCD_METHOD_RESULT)) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@@ Get Client Result");
-
- __vc_cb_result();
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@@");
-
- } /* VCD_METHOD_RESULT */
- else if (dbus_message_is_signal(msg, if_name, VCD_METHOD_SEND_MANAGER_PID)) {
- int manager_pid = 0;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &manager_pid, DBUS_TYPE_INVALID);
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@ manager pid is changed : %d", manager_pid);
-
- __vc_cb_manager_pid(manager_pid);
-
- } /* VCD_METHOD_SEND_MANAGER_PID */
-
- else if (dbus_message_is_signal(msg, if_name, VCD_METHOD_ERROR)) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@@ Get Error");
- int reason;
- int daemon_pid;
- char* err_msg;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &reason,
- DBUS_TYPE_INT32, &daemon_pid,
- DBUS_TYPE_STRING, &err_msg,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc Get Error message : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc Get Error message : reason(%d), daemon_pid(%d), msg(%s)", reason, daemon_pid, err_msg);
- __vc_cb_error(reason, daemon_pid, err_msg);
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@@");
- } /* VCD_METHOD_ERROR */
-
- else if (dbus_message_is_signal(msg, if_name, VCD_METHOD_ERROR_TO_APP)) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@@ Get Error and send to client app");
- int pid;
- int reason;
- char* err_msg;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &reason,
- DBUS_TYPE_STRING, &err_msg,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc Get Error message : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc Get Error message : reason(%d), pid(%d), msg(%s)", reason, pid, err_msg);
- __vc_cb_error_to_app(pid, reason, err_msg);
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@@");
- } /* VCD_METHOD_ERROR_TO_APP */
-
- else if (dbus_message_is_method_call(msg, if_name, VCD_METHOD_FEEDBACK_STREAMING)) {
- SLOG(LOG_INFO, TAG_VCC, "@@@ Get TTS feedback streaming");
- int utt_id;
- vc_feedback_event_e event;
- char* buffer = NULL;
- int len;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INT32, &event,
- DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE,
- &buffer, &len,
- DBUS_TYPE_INVALID);
-
- __vc_cb_tts_streaming(utt_id, event, buffer, len);
-
- SLOG(LOG_INFO, TAG_VCC, "@@@");
- } /* VCD_METHOD_FEEDBACK_STREAMING */
-
- else if (dbus_message_is_method_call(msg, if_name, VC_MANAGER_METHOD_UTTERANCE_STATUS)) {
- SLOG(LOG_INFO, TAG_VCC, "@@@ Get TTS utterance status streaming");
- int utt_id;
- int utt_status;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INT32, &utt_status,
- DBUS_TYPE_INVALID);
-
- __vc_cb_utterance_status(utt_id, utt_status);
-
- SLOG(LOG_INFO, TAG_VCC, "@@@");
- } /* VC_MANAGER_METHOD_UTTERANCE_STATUS */
-
- else if (dbus_message_is_signal(msg, "org.freedesktop.DBus", "NameOwnerChanged")) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@@ Owner Changed");
- DBusError err;
- dbus_error_init(&err);
- /* remove a rule for daemon error */
- char rule_err[256] = {0, };
- snprintf(rule_err, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE);
- dbus_bus_remove_match(g_conn_listener, rule_err, &err);
- dbus_connection_flush(g_conn_listener);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "Match Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- __vc_cb_error(VC_ERROR_SERVICE_RESET, -1, "Daemon Reset");
- SLOG(LOG_DEBUG, TAG_VCC, "@@@");
- } /* NameOwnerChanged */
-
- else {
- const char* sender = dbus_message_get_sender(msg);
- const char* destination = dbus_message_get_destination(msg);
- const char* path = dbus_message_get_path(msg);
- const char* interf = dbus_message_get_interface(msg);
- const char* member = dbus_message_get_member(msg);
- int type = dbus_message_get_type(msg);
- SLOG(LOG_ERROR, TAG_VCC, "[INFO] Message is NOT valid, sender(%s), destination(%s), path(%s), interface(%s), member(%s), type(%d)", sender, destination, path, interf, member, type);
- dbus_message_unref(msg);
- break;
- }
-
- /* free the message */
- dbus_message_unref(msg);
- } /* while(1) */
-
- return ECORE_CALLBACK_PASS_ON;
-}
-//LCOV_EXCL_STOP
-
-static void __vc_dbus_connection_free()
-{
- if (NULL != g_conn_listener) {
- dbus_connection_close(g_conn_listener);
- dbus_connection_unref(g_conn_listener);
- g_conn_listener = NULL;
- }
- if (NULL != g_conn_sender) {
- dbus_connection_close(g_conn_sender);
- dbus_connection_unref(g_conn_sender);
- g_conn_sender = NULL;
- }
-}
-
-int vc_dbus_open_connection()
-{
- pthread_mutex_lock(&g_dbus_mutex);
-
- if (NULL != g_conn_sender && NULL != g_conn_listener) {
- SLOG(LOG_WARN, TAG_VCC, "already existed connection "); //LCOV_EXCL_LINE
- pthread_mutex_unlock(&g_dbus_mutex);
- return 0;
- }
-
- DBusError err;
- int ret;
-
- /* initialize the error value */
- dbus_error_init(&err);
-
- /* connect to the DBUS system bus, and check for errors */
- g_conn_sender = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "Dbus Connection Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "Fail to get dbus connection "); //LCOV_EXCL_LINE
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_connection_set_exit_on_disconnect(g_conn_sender, false);
-
- g_conn_listener = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "Dbus Connection Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL == g_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCC, "Fail to get dbus connection "); //LCOV_EXCL_LINE
- __vc_dbus_connection_free();
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_connection_set_exit_on_disconnect(g_conn_listener, false);
-
- int pid = getpid();
-
- char service_name[64];
- memset(service_name, '\0', 64);
- snprintf(service_name, 64, "%s%d", VC_CLIENT_SERVICE_NAME, pid);
-
- SLOG(LOG_DEBUG, TAG_VCC, "service name is %s", service_name);
-
- /* register our name on the bus, and check for errors */
- ret = dbus_bus_request_name(g_conn_listener, service_name, DBUS_NAME_FLAG_REPLACE_EXISTING, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "Name Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER != ret) {
- SLOG(LOG_ERROR, TAG_VCC, "fail dbus_bus_request_name()"); //LCOV_EXCL_LINE
- __vc_dbus_connection_free();
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- if (NULL != g_fd_handler) {
- SLOG(LOG_WARN, TAG_VCC, "The handler already exists."); //LCOV_EXCL_LINE
- __vc_dbus_connection_free();
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_NONE;
- }
-
- char rule[256] = {0, };
- snprintf(rule, 256, "type='signal',interface='%s'", VC_CLIENT_SERVICE_INTERFACE);
-
- /* add a rule for which messages we want to see */
- dbus_bus_add_match(g_conn_listener, rule, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "Match Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- __vc_dbus_connection_free();
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- int fd = 0;
- if (1 != dbus_connection_get_unix_fd(g_conn_listener, &fd)) {
- SLOG(LOG_ERROR, TAG_VCC, "fail to get fd from dbus "); //LCOV_EXCL_LINE
- __vc_dbus_connection_free();
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "Get fd from dbus : %d", fd);
- }
-
- g_fd_handler = ecore_main_fd_handler_add(fd, ECORE_FD_READ, (Ecore_Fd_Cb)listener_event_callback, g_conn_listener, NULL, NULL);
- if (NULL == g_fd_handler) {
- SLOG(LOG_ERROR, TAG_VCC, "fail to get fd handler from ecore "); //LCOV_EXCL_LINE
- __vc_dbus_connection_free();
- pthread_mutex_unlock(&g_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- g_is_connection_opened = true;
-
- pthread_mutex_unlock(&g_dbus_mutex);
-
- SLOG(LOG_INFO, TAG_VCC, "[INFO] vc client dbus connection is opened");
-
- return VC_ERROR_NONE;
-}
-
-int vc_dbus_close_connection()
-{
- pthread_mutex_lock(&g_dbus_mutex);
-
- DBusError err;
- dbus_error_init(&err);
-
- if (NULL != g_fd_handler) {
- ecore_main_fd_handler_del(g_fd_handler);
- g_fd_handler = NULL;
- }
-
- if (NULL != g_conn_listener) {
- int pid = getpid();
-
- char service_name[64];
- memset(service_name, '\0', 64);
- snprintf(service_name, 64, "%s%d", VC_CLIENT_SERVICE_NAME, pid);
-
- dbus_bus_release_name(g_conn_listener, service_name, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
- }
-
- __vc_dbus_connection_free();
-
- g_is_connection_opened = false;
-
- pthread_mutex_unlock(&g_dbus_mutex);
-
- SLOG(LOG_INFO, TAG_VCC, "[INFO] vc client dbus connection is closed");
-
- return 0;
-}
-
-int vc_dbus_reconnect()
-{
- if (!g_conn_sender || !g_conn_listener) {
- vc_dbus_close_connection();
-
- if (0 != vc_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect"); //LCOV_EXCL_LINE
- return -1;
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "[DBUS] Reconnect"); //LCOV_EXCL_LINE
- return 0;
- }
-
- bool sender_connected = dbus_connection_get_is_connected(g_conn_sender);
- bool listener_connected = dbus_connection_get_is_connected(g_conn_listener);
- SLOG(LOG_WARN, TAG_VCC, "[DBUS] Sender(%s) Listener(%s)",
- sender_connected ? "Connected" : "Not connected", listener_connected ? "Connected" : "Not connected"); //LCOV_EXCL_LINE
-
- if (false == sender_connected || false == listener_connected) {
- vc_dbus_close_connection();
-
- if (0 != vc_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect"); //LCOV_EXCL_LINE
- return -1;
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "[DBUS] Reconnect"); //LCOV_EXCL_LINE
- }
-
- return 0;
-}
-
-static int __dbus_check()
-{
- if (NULL == g_conn_sender || NULL == g_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection"); //LCOV_EXCL_LINE
- return vc_dbus_reconnect();
- }
- return 0;
-}
-
-int vc_dbus_request_hello()
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- SLOG(LOG_DEBUG, TAG_VCC, "[DBUS] Request vc hello"); //LCOV_EXCL_LINE
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_HELLO);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Request vc hello : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg = NULL;
- int result = 0;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_short_time, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_DEBUG, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- dbus_message_unref(msg);
-
- if (NULL != result_msg) {
- dbus_message_unref(result_msg);
- result = 0;
- } else {
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-
-int vc_dbus_request_initialize(int pid, int* mgr_pid, int* service_state, int* daemon_pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_INITIALIZE);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc initialize : Fail to make message "); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc initialize : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- SLOG(LOG_DEBUG, TAG_VCC, "[DEBUG] Receive the reply for initializing");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- if (NULL != result_msg) {
- int tmp = -1;
- int tmp_service_state = 0;
- int tmp_daemon_pid = 0;
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INT32, &tmp,
- DBUS_TYPE_INT32, &tmp_service_state,
- DBUS_TYPE_INT32, &tmp_daemon_pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- *mgr_pid = tmp;
- *service_state = tmp_service_state;
- *daemon_pid = tmp_daemon_pid;
-
- SLOG(LOG_DEBUG, TAG_VCC, "[DEBUG] Get arguments for initializing");
-
- /* add a rule for daemon error */
- char rule[256] = {0, };
- snprintf(rule, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE);
- if (NULL == g_conn_listener) {
- if (g_is_connection_opened) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] g_conn_listener is NULL abnormally");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCC, "[INFO] g_conn_listener is NULL and DBUS connection was closed");
- return VC_ERROR_NONE;
- }
- }
- dbus_bus_add_match(g_conn_listener, rule, NULL);
-
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc initialize : result = %d mgr = %d service = %d daemon_pid = %d", result, *mgr_pid, *service_state, *daemon_pid); //LCOV_EXCL_LINE
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc initialize : result = %d", result); //LCOV_EXCL_LINE
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL "); //LCOV_EXCL_LINE
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_finalize(int pid)
-{
- DBusError err;
- dbus_error_init(&err);
-
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- /* remove a rule for daemon error */
- char rule_err[256] = {0, };
- snprintf(rule_err, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE);
- dbus_bus_remove_match(g_conn_listener, rule_err, &err);
- dbus_connection_flush(g_conn_listener);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "Match Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_FINALIZE);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc finalize : Fail to make message "); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc finalize : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc finalize : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc finalize : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL "); //LCOV_EXCL_LINE
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-//LCOV_EXCL_START
-int vc_dbus_request_set_exclusive_command(int pid, bool value)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_SET_EXCLUSIVE_CMD);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set exclusive command : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set exclusive command : pid(%d)", pid);
- }
-
- int temp = value;
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &temp,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set exclusive command : result = %d", result);
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set exclusive command : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL"); //LCOV_EXCL_LINE
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-//LCOV_EXCL_STOP
-
-int vc_dbus_request_set_command(int pid, vc_cmd_type_e cmd_type)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_SET_COMMAND);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set command : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set command : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &cmd_type,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set command : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set command : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL"); //LCOV_EXCL_LINE
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_unset_command(int pid, vc_cmd_type_e cmd_type)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_UNSET_COMMAND);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc unset command : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc unset command : pid(%d), type(%d)", pid, cmd_type);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &cmd_type,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc unset command : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc unset command : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL"); //LCOV_EXCL_LINE
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_set_foreground(int pid, bool value)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg = NULL;
- int tmp_value = 0;
-
- tmp_value = (int)value;
-
- msg = dbus_message_new_signal(
- VC_MANAGER_SERVICE_OBJECT_PATH,
- VC_MANAGER_SERVICE_INTERFACE,
- VCC_MANAGER_METHOD_SET_FOREGROUND);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set foreground to manager : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set foreground to manager : client pid(%d), value(%s)", pid, tmp_value ? "true" : "false");
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &tmp_value,
- DBUS_TYPE_INVALID);
-
- if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCC, "[Dbus ERROR] Fail to Send"); //LCOV_EXCL_LINE
- dbus_message_unref(msg);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_message_unref(msg);
-
- msg = NULL;
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_SET_FOREGROUND);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set foreground to daemon : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set foreground to daemon : client pid(%d), value(%s)", pid, tmp_value ? "true" : "false");
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &tmp_value,
- DBUS_TYPE_INVALID);
-
- dbus_message_set_no_reply(msg, TRUE);
-
- if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCC, "[Dbus ERROR] Fail to Send"); //LCOV_EXCL_LINE
- dbus_message_unref(msg);
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCC, "[Dbus DEBUG] Success to Send");
- dbus_connection_flush(g_conn_sender);
- }
-
- dbus_message_unref(msg);
- return 0;
-}
-
-//LCOV_EXCL_START
-int vc_dbus_set_server_dialog(int pid, const char* app_id, const char* credential)
-{
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection");
- if (0 != vc_dbus_reconnect()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect");
- }
- }
-
- DBusMessage* msg;
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_SET_SERVER_DIALOG);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set server dialog : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set server dialog : pid(%d), app_id(%s)", pid, app_id);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &app_id,
- DBUS_TYPE_STRING, &credential,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set server dialog : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set server dialog : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-//LCOV_EXCL_STOP
-
-int vc_dbus_request_dialog(int pid, const char* disp_text, const char* utt_text, bool continuous)
-{
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection"); //LCOV_EXCL_LINE
- if (0 != vc_dbus_reconnect()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect"); //LCOV_EXCL_LINE
- }
- }
-
- DBusMessage* msg;
- int tmp_continue = 0;
-
- tmp_continue = (int)continuous;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_DIALOG);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc request dialog to manager : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc request dialog to manager : client pid(%d), disp_text(%s), utt_text(%s), continuous(%d)", getpid(), disp_text, utt_text, continuous);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &disp_text,
- DBUS_TYPE_STRING, &utt_text,
- DBUS_TYPE_INT32, &tmp_continue,
- DBUS_TYPE_INVALID);
-
- dbus_message_set_no_reply(msg, TRUE);
-
- if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCC, "[Dbus ERROR] Fail to Send"); //LCOV_EXCL_LINE
- dbus_message_unref(msg);
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCC, "[Dbus DEBUG] Success to Send");
- dbus_connection_flush(g_conn_sender);
- }
-
- dbus_message_unref(msg);
-
- return 0;
-
-//LCOV_EXCL_START
-/*
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc set command : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc set command : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-*/
-//LCOV_EXCL_STOP
-}
-
-int vc_dbus_request_is_system_command_valid(int pid, bool* is_sys_cmd_valid)
-{
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection"); //LCOV_EXCL_LINE
- if (0 != vc_dbus_reconnect()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect"); //LCOV_EXCL_LINE
- }
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_IS_SYS_COMMAND_VALID);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc is system command valid : Fail to make message"); //LCOV_EXCL_LINE
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc is system command valid : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
- int tmp_sys_cmd = 0;
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INT32, &tmp_sys_cmd,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message); //LCOV_EXCL_LINE
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- *is_sys_cmd_valid = (bool)tmp_sys_cmd;
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc is system command valid : result = %d, is_sys_cmd_valid = %d", result, *is_sys_cmd_valid);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc is system command valid : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL"); //LCOV_EXCL_LINE
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-//LCOV_EXCL_START
-#if 0
-int vc_dbus_request_start(int pid, int silence)
-{
- DBusMessage* msg;
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_REQUEST_START);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc start : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc start : pid(%d), silence(%d)", pid, silence);
- }
-
- DBusMessageIter args;
- dbus_message_iter_init_append(msg, &args);
-
- /* Append result*/
- dbus_message_iter_append_basic(&args, DBUS_TYPE_INT32, &(pid));
- dbus_message_iter_append_basic(&args, DBUS_TYPE_INT32, &(silence));
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc start : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc start : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_stop(int pid)
-{
- DBusMessage* msg;
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_REQUEST_STOP);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc stop : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc stop : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc stop : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc stop : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_cancel(int pid)
-{
- DBusMessage* msg;
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH, /* object name of the signal */
- VC_SERVER_SERVICE_INTERFACE, /* interface name of the signal */
- VC_METHOD_REQUEST_CANCEL); /* name of the signal */
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc cancel : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc cancel : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc cancel : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc cancel : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-#endif
-//LCOV_EXCL_STOP
-
-//LCOV_EXCL_START
-/* Authority */
-int vc_dbus_request_auth_enable(int pid, int mgr_pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- char service_name[64] = {0,};
- char object_path[64] = {0,};
- char target_if_name[128] = {0,};
-
- snprintf(service_name, 64, "%s%d", VC_MANAGER_SERVICE_NAME, mgr_pid);
- snprintf(object_path, 64, "%s", VC_MANAGER_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_MANAGER_SERVICE_INTERFACE, mgr_pid);
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- service_name,
- object_path, /* object name of the signal */
- target_if_name, /* interface name of the signal */
- VC_METHOD_AUTH_ENABLE); /* name of the signal */
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth enable : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth enable : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth enable : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth enable : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_auth_disable(int pid, int mgr_pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- char service_name[64] = {0,};
- char object_path[64] = {0,};
- char target_if_name[128] = {0,};
-
- snprintf(service_name, 64, "%s%d", VC_MANAGER_SERVICE_NAME, mgr_pid);
- snprintf(object_path, 64, "%s", VC_MANAGER_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_MANAGER_SERVICE_INTERFACE, mgr_pid);
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- service_name,
- object_path, /* object name of the signal */
- target_if_name, /* interface name of the signal */
- VC_METHOD_AUTH_DISABLE); /* name of the signal */
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth disable : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth disable : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth disable : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth disable : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_auth_start(int pid, int mgr_pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- char service_name[64] = {0,};
- char object_path[64] = {0,};
- char target_if_name[128] = {0,};
-
- snprintf(service_name, 64, "%s%d", VC_MANAGER_SERVICE_NAME, mgr_pid);
- snprintf(object_path, 64, "%s", VC_MANAGER_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_MANAGER_SERVICE_INTERFACE, mgr_pid);
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- service_name,
- object_path,
- target_if_name,
- VC_METHOD_AUTH_START);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth start : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth start : pid(%d)", pid);
- }
-
- DBusMessageIter args;
- dbus_message_iter_init_append(msg, &args);
-
- /* Append result*/
- dbus_message_iter_append_basic(&args, DBUS_TYPE_INT32, &(pid));
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth start : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth start : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_auth_stop(int pid, int mgr_pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- char service_name[64] = {0,};
- char object_path[64] = {0,};
- char target_if_name[128] = {0,};
-
- snprintf(service_name, 64, "%s%d", VC_MANAGER_SERVICE_NAME, mgr_pid);
- snprintf(object_path, 64, "%s", VC_MANAGER_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_MANAGER_SERVICE_INTERFACE, mgr_pid);
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- service_name,
- object_path,
- target_if_name,
- VC_METHOD_AUTH_STOP);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth stop : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth stop : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth stop : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth stop : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_dbus_request_auth_cancel(int pid, int mgr_pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- char service_name[64] = {0,};
- char object_path[64] = {0,};
- char target_if_name[128] = {0,};
-
- snprintf(service_name, 64, "%s%d", VC_MANAGER_SERVICE_NAME, mgr_pid);
- snprintf(object_path, 64, "%s", VC_MANAGER_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_MANAGER_SERVICE_INTERFACE, mgr_pid);
-
- /* create a signal & check for errors */
- msg = dbus_message_new_method_call(
- service_name,
- object_path, /* object name of the signal */
- target_if_name, /* interface name of the signal */
- VC_METHOD_AUTH_CANCEL); /* name of the signal */
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth cancel : Fail to make message ");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth cancel : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc auth cancel : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc auth cancel : result = %d", result);
- }
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ Result Message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-//LCOV_EXCL_STOP
-
-int vc_dbus_request_tts(int pid, const char* text, const char* language, bool to_vcm, int* utt_id)
-{
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection");
- if (0 != vc_dbus_reconnect()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect");
- }
- }
-
- DBusMessage* msg;
- int tmp_to_vcm = 0;
-
- tmp_to_vcm = (int)to_vcm;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_REQUEST_TTS);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc request tts to manager : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc request tts to manager : client pid(%d), disp_text(%s), utt_text(%s), continuous(%d)", pid, text, language, to_vcm);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &text,
- DBUS_TYPE_STRING, &language,
- DBUS_TYPE_INT32, &tmp_to_vcm,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- int tmp_utt_id = -1;
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INT32, &tmp_utt_id,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- *utt_id = tmp_utt_id;
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc request tts : result = %d, utt_id = %d", result, *utt_id);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc request tts : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-
- return 0;
-}
-
-int vc_dbus_cancel_tts(int pid, int utt_id)
-{
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection");
- if (0 != vc_dbus_reconnect()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect");
- }
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_CANCEL_TTS);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc cancel tts to manager : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc cancel tts to manager : client pid(%d), utt_id(%d)", pid, utt_id);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc cancel tts : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc cancel tts : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-
- return 0;
-}
-
-int vc_dbus_get_tts_audio_format(int pid, int* rate, vc_audio_channel_e* channel, vc_audio_type_e* audio_type)
-{
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] NULL connection");
- if (0 != vc_dbus_reconnect()) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Fail to reconnect");
- }
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_GET_TTS_AUDIO_FORMAT);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc get tts audio format : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc get tts audio format : client pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_conn_sender, msg, g_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- int tmp_rate;
- int tmp_channel;
- int tmp_audio_type;
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INT32, &tmp_rate,
- DBUS_TYPE_INT32, &tmp_channel,
- DBUS_TYPE_INT32, &tmp_audio_type,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- if (0 == result) {
- *rate = tmp_rate;
- *channel = tmp_channel;
- *audio_type = tmp_audio_type;
- SLOG(LOG_DEBUG, TAG_VCC, "@@ vc get tts audio format : result = %d, rate = %d, channel = %d, audio_type = %d", result, *rate, *channel, *audio_type);
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ vc get tts audio format : result = %d", result);
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCC, "@@ Result message is NULL");
- vc_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-
- return 0;
-}
-
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#ifndef __VC_DBUS_H_
-#define __VC_DBUS_H_
-
-#include "voice_control_common.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-int vc_dbus_open_connection();
-
-int vc_dbus_close_connection();
-
-
-int vc_dbus_request_hello();
-
-int vc_dbus_request_initialize(int pid, int* mgr_pid, int* service_state, int* daemon_pid);
-
-int vc_dbus_request_finalize(int pid);
-
-int vc_dbus_request_set_exclusive_command(int pid, bool value);
-
-int vc_dbus_request_set_command(int pid, vc_cmd_type_e cmd_type);
-
-int vc_dbus_request_unset_command(int pid, vc_cmd_type_e cmd_type);
-
-int vc_dbus_set_foreground(int pid, bool value);
-
-int vc_dbus_set_server_dialog(int pid, const char* app_id, const char* credential);
-
-int vc_dbus_request_dialog(int pid, const char* disp_text, const char* utt_text, bool continuous);
-
-int vc_dbus_request_is_system_command_valid(int pid, bool* is_sys_cmd_valid);
-
-#if 0
-int vc_dbus_request_start(int pid, int silence);
-
-int vc_dbus_request_stop(int pid);
-
-int vc_dbus_request_cancel(int pid);
-#endif
-
-/* Authority */
-int vc_dbus_request_auth_enable(int pid, int mgr_pid);
-
-int vc_dbus_request_auth_disable(int pid, int mgr_pid);
-
-int vc_dbus_request_auth_start(int pid, int mgr_pid);
-
-int vc_dbus_request_auth_stop(int pid, int mgr_pid);
-
-int vc_dbus_request_auth_cancel(int pid, int mgr_pid);
-
-/* tts feedback */
-
-int vc_dbus_request_tts(int pid, const char* text, const char* language, bool to_vcm, int* utt_id);
-
-int vc_dbus_cancel_tts(int pid, int utt_id);
-
-int vc_dbus_get_tts_audio_format(int pid, int* rate, vc_audio_channel_e* channel, vc_audio_type_e* audio_type);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __VC_DBUS_H_ */
#include "vc_main.h"
#include "vc_mgr_client.h"
#include "vc_mgr_tidl.h"
-#include "vc_mgr_dbus.h"
#include "vc_mgr_data.h"
#include "vc_mgr_player.h"
#include "voice_control.h"
static Ecore_Timer* g_send_hello_timer = NULL;
static Ecore_Timer* g_request_init_timer = NULL;
-static int g_dbus_send_hello_count = 0;
static int g_tidl_send_hello_count = 0;
static Ecore_Timer* g_m_set_volume_timer = NULL;
SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to request finalize : %s", __vc_mgr_get_error_code(ret));
}
- ret = vc_mgr_dbus_request_finalize(g_vc_m->handle);
- if (0 != ret) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to request dbus finalize : %s", __vc_mgr_get_error_code(ret));
- }
-
vc_mgr_client_set_internal_state(g_vc_m, VC_INTERNAL_STATE_NONE);
return;
}
}
if (NULL == g_send_hello_timer) {
- g_dbus_send_hello_count = 0;
g_tidl_send_hello_count = 0;
SLOG(LOG_INFO, TAG_VCM, "[DEBUG] Create a new timer for preparation");
ecore_thread_main_loop_begin();
return VC_ERROR_INVALID_STATE;
}
- int ret = vc_mgr_dbus_send_utterance_status(pid, utt_id, utt_status);
+ int ret = vc_mgr_tidl_send_utterance_status(pid, utt_id, utt_status);
if (0 != ret)
SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to send utterance status : %s", __vc_mgr_get_error_code(ret));
else
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#include "vc_main.h"
-#include "vc_mgr_client.h"
-#include "vc_mgr_dbus.h"
-#include "vc_command.h"
-
-
-static pthread_mutex_t g_m_dbus_mutex = PTHREAD_MUTEX_INITIALIZER;
-
-static int g_m_waiting_short_time = 200;
-static bool g_is_connection_opened = false;
-
-static Ecore_Fd_Handler* g_m_fd_handler = NULL;
-
-static DBusConnection* g_m_conn_sender = NULL;
-static DBusConnection* g_m_conn_listener = NULL;
-
-extern int __vc_mgr_cb_error(int reason, int daemon_pid, char* msg);
-
-extern int __vc_mgr_cb_set_foreground(int pid, bool value);
-
-extern int __vc_mgr_cb_private_data_requested(const char* key, char** data);
-
-/* for TTS feedback */
-extern int __vc_mgr_cb_feedback_streaming(int pid, int utt_id, vc_feedback_event_e event, char* buffer, int len);
-
-/* Authority */
-extern int __vc_mgr_request_auth_enable(int pid);
-
-extern int __vc_mgr_request_auth_disable(int pid);
-
-extern int __vc_mgr_request_auth_start(int pid);
-
-extern int __vc_mgr_request_auth_stop(int pid);
-
-extern int __vc_mgr_request_auth_cancel(int pid);
-
-// TODO: remove listener event callback
-static Eina_Bool vc_mgr_listener_event_callback(void* data, Ecore_Fd_Handler *fd_handler)
-{
- if (NULL == g_m_conn_listener) return ECORE_CALLBACK_RENEW;
-
- dbus_connection_read_write_dispatch(g_m_conn_listener, 50);
-
- while (1) {
- DBusMessage* msg = NULL;
- msg = dbus_connection_pop_message(g_m_conn_listener);
-
- /* loop again if we haven't read a message */
- if (NULL == msg) {
- break;
- }
-
- /* SLOG(LOG_DEBUG, TAG_VCM, "[DEBUG] Message is arrived"); */
-
- DBusError err;
- dbus_error_init(&err);
-
- char if_name[64] = {0, };
- snprintf(if_name, 64, "%s", VC_MANAGER_SERVICE_INTERFACE);
-
- if (dbus_message_is_signal(msg, if_name, VCC_MANAGER_METHOD_SET_FOREGROUND)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Set foreground");
- int pid = 0;
- int value = 0;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &value,
- DBUS_TYPE_INVALID);
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- SLOG(LOG_INFO, TAG_VCM, "@@ foreground changed : pid(%d) value(%s)", pid, value ? "true" : "false");
-
- __vc_mgr_cb_set_foreground(pid, (bool)value);
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VCC_MANAGER_METHOD_SET_FOREGROUND */
-
- else if (dbus_message_is_method_call(msg, if_name, VCD_MANAGER_METHOD_GET_PRIVATE_DATA)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Get request get private data");
- int pid = 0;
- int ret = -1;
- char* key = NULL;
- char* temp = NULL;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &key,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (pid > 0) {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr get request get private data : pid(%d) ", pid);
- ret = __vc_mgr_cb_private_data_requested(key, &temp);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr get request get private data : invalid pid ");
- }
-
- DBusMessage *reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_STRING, &temp, DBUS_TYPE_INVALID);
-
- if (!dbus_connection_send(g_m_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc get request get private data : fail to send reply");
- else
- SLOG(LOG_INFO, TAG_VCM, "@@ vc get request get private data : result(%d)", ret);
-
- dbus_connection_flush(g_m_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr get request get private data : fail to create reply message");
- }
-
- if (NULL != temp) free(temp);
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VCD_MANAGER_METHOD_GET_PRIVATE_DATA */
-
- /* Authority */
- else if (dbus_message_is_method_call(msg, if_name, VC_METHOD_AUTH_ENABLE)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Get request auth enable");
- int pid;
- int ret = 0;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth enable : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth enable : pid(%d)", pid);
- ret = __vc_mgr_request_auth_enable(pid);
- }
-
- DBusMessage *reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
- if (!dbus_connection_send(g_m_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth enable : fail to send reply");
- else
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth enable : ret(%d)", ret);
- dbus_connection_flush(g_m_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth enable : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VC_METHOD_AUTH_ENABLE */
-
- else if (dbus_message_is_method_call(msg, if_name, VC_METHOD_AUTH_DISABLE)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Get request auth disable");
- int pid;
- int ret = 0;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth disable : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth disable : pid(%d)", pid);
- ret = __vc_mgr_request_auth_disable(pid);
- }
-
- DBusMessage *reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
- if (!dbus_connection_send(g_m_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth disable : fail to send reply");
- else
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth disable : ret(%d)", ret);
- dbus_connection_flush(g_m_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth disable : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VC_METHOD_AUTH_DISABLE */
-
- else if (dbus_message_is_method_call(msg, if_name, VC_METHOD_AUTH_START)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Get request auth start");
- int pid;
- int ret = 0;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth start : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth start : pid(%d)", pid);
- ret = __vc_mgr_request_auth_start(pid);
- }
-
- DBusMessage *reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
- if (!dbus_connection_send(g_m_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth start : fail to send reply");
- else
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth start : ret(%d)", ret);
- dbus_connection_flush(g_m_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth start : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VC_METHOD_AUTH_START */
-
- else if (dbus_message_is_method_call(msg, if_name, VC_METHOD_AUTH_STOP)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Get request auth stop");
- int pid;
- int ret = 0;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth stop : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth stop : pid(%d)", pid);
- ret = __vc_mgr_request_auth_stop(pid);
- }
-
- DBusMessage *reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
- if (!dbus_connection_send(g_m_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth stop : fail to send reply");
- else
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth stop : ret(%d)", ret);
- dbus_connection_flush(g_m_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth stop : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VC_METHOD_AUTH_STOP */
-
- else if (dbus_message_is_method_call(msg, if_name, VC_METHOD_AUTH_CANCEL)) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Get request auth cancel");
- int pid;
- int ret = 0;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth cancel : Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc mgr request auth cancel : pid(%d)", pid);
- ret = __vc_mgr_request_auth_cancel(pid);
- }
-
- DBusMessage *reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
- if (!dbus_connection_send(g_m_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc request auth cancel : fail to send reply");
- else
- SLOG(LOG_INFO, TAG_VCM, "@@ vc request auth cancel : ret(%d)", ret);
- dbus_connection_flush(g_m_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc mgr request auth cancel : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* VC_METHOD_AUTH_CANCEL */
-
- else if (dbus_message_is_signal(msg, "org.freedesktop.DBus", "NameOwnerChanged")) {
- SLOG(LOG_INFO, TAG_VCM, "@@@ Owner Changed");
- /* remove a rule for daemon error */
- DBusError err;
- /* initialize the error value */
- dbus_error_init(&err);
- char rule_err[256] = {0, };
- snprintf(rule_err, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE);
- dbus_bus_remove_match(g_m_conn_listener, rule_err, &err);
- dbus_connection_flush(g_m_conn_listener);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "Match Error (%s)", err.message);
- dbus_error_free(&err);
- }
- __vc_mgr_cb_error(VC_ERROR_SERVICE_RESET, -1, "Daemon Reset");
- SLOG(LOG_DEBUG, TAG_VCM, "@@@");
- } /* NameOwnerChanged */
-
- else {
- const char* sender = dbus_message_get_sender(msg);
- const char* destination = dbus_message_get_destination(msg);
- const char* path = dbus_message_get_path(msg);
- const char* interf = dbus_message_get_interface(msg);
- const char* member = dbus_message_get_member(msg);
- int type = dbus_message_get_type(msg);
- SLOG(LOG_ERROR, TAG_VCM, "[INFO] Message is NOT valid, sender(%s), destination(%s), path(%s), interface(%s), member(%s), type(%d)", sender, destination, path, interf, member, type);
- dbus_message_unref(msg);
- break;
- }
-
- /* free the message */
- dbus_message_unref(msg);
- } /* while(1) */
-
- return ECORE_CALLBACK_PASS_ON;
-}
-
-static void __vc_mgr_dbus_connection_free()
-{
- if (NULL != g_m_conn_listener) {
- dbus_connection_close(g_m_conn_listener);
- dbus_connection_unref(g_m_conn_listener);
- g_m_conn_listener = NULL;
- }
- if (NULL != g_m_conn_sender) {
- dbus_connection_close(g_m_conn_sender);
- dbus_connection_unref(g_m_conn_sender);
- g_m_conn_sender = NULL;
- }
-}
-
-int vc_mgr_dbus_open_connection()
-{
- pthread_mutex_lock(&g_m_dbus_mutex);
-
- if (NULL != g_m_conn_sender && NULL != g_m_conn_listener) {
- SLOG(LOG_WARN, TAG_VCM, "already existed connection ");
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_NONE;
- }
-
- DBusError err;
- int ret;
-
- /* initialize the error value */
- dbus_error_init(&err);
-
- /* connect to the DBUS system bus, and check for errors */
- g_m_conn_sender = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "Dbus Connection Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL == g_m_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCM, "Fail to get dbus connection ");
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_connection_set_exit_on_disconnect(g_m_conn_sender, false);
-
- /* connect to the DBUS system bus, and check for errors */
- g_m_conn_listener = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "Dbus Connection Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL == g_m_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCM, "Fail to get dbus connection ");
- __vc_mgr_dbus_connection_free();
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- dbus_connection_set_exit_on_disconnect(g_m_conn_listener, false);
-
- SLOG(LOG_INFO, TAG_VCM, "service name is %s", VC_MANAGER_SERVICE_NAME);
-
- /* register our name on the bus, and check for errors */
- ret = dbus_bus_request_name(g_m_conn_listener, VC_MANAGER_SERVICE_NAME, DBUS_NAME_FLAG_REPLACE_EXISTING, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "Name Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER != ret) {
- SLOG(LOG_ERROR, TAG_VCM, "fail dbus_bus_request_name()");
- __vc_mgr_dbus_connection_free();
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- if (NULL != g_m_fd_handler) {
- SLOG(LOG_WARN, TAG_VCM, "The handler already exists.");
- __vc_mgr_dbus_connection_free();
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_NONE;
- }
-
- char rule[128] = {0, };
- snprintf(rule, 128, "type='signal',interface='%s'", VC_MANAGER_SERVICE_INTERFACE);
-
- /* add a rule for which messages we want to see */
- dbus_bus_add_match(g_m_conn_listener, rule, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "Match Error (%s)", err.message);
- dbus_error_free(&err);
- __vc_mgr_dbus_connection_free();
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- int fd = 0;
- if (1 != dbus_connection_get_unix_fd(g_m_conn_listener, &fd)) {
- SLOG(LOG_ERROR, TAG_VCM, "fail to get fd from dbus ");
- __vc_mgr_dbus_connection_free();
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCM, "Get fd from dbus : %d", fd);
- }
-
- g_m_fd_handler = ecore_main_fd_handler_add(fd, ECORE_FD_READ, (Ecore_Fd_Cb)vc_mgr_listener_event_callback, g_m_conn_listener, NULL, NULL);
-
- if (NULL == g_m_fd_handler) {
- SLOG(LOG_ERROR, TAG_VCM, "fail to get fd handler from ecore ");
- __vc_mgr_dbus_connection_free();
- pthread_mutex_unlock(&g_m_dbus_mutex);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- g_is_connection_opened = true;
-
- pthread_mutex_unlock(&g_m_dbus_mutex);
-
- SLOG(LOG_INFO, TAG_VCM, "[INFO] manager dbus connection is opened");
-
- return VC_ERROR_NONE;
-}
-
-int vc_mgr_dbus_close_connection()
-{
- pthread_mutex_lock(&g_m_dbus_mutex);
-
- DBusError err;
- dbus_error_init(&err);
-
- if (NULL != g_m_fd_handler) {
- ecore_main_fd_handler_del(g_m_fd_handler);
- g_m_fd_handler = NULL;
- }
-
- if (NULL != g_m_conn_listener) {
- int pid = getpid();
-
- char service_name[64];
- memset(service_name, '\0', 64);
- snprintf(service_name, 64, "%s%d", VC_MANAGER_SERVICE_NAME, pid);
-
- dbus_bus_release_name(g_m_conn_listener, service_name, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
- }
-
- __vc_mgr_dbus_connection_free();
-
- g_is_connection_opened = false;
-
- pthread_mutex_unlock(&g_m_dbus_mutex);
-
- SLOG(LOG_INFO, TAG_VCM, "[INFO] manager dbus connection is closed");
-
- return VC_ERROR_NONE;
-}
-
-int vc_mgr_dbus_reconnect()
-{
- if (!g_m_conn_sender || !g_m_conn_listener) {
- vc_mgr_dbus_close_connection();
-
- if (0 != vc_mgr_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to reconnect");
- return -1;
- }
-
- SLOG(LOG_INFO, TAG_VCM, "[DBUS] Reconnect");
- return 0;
- }
-
- bool sender_connected = dbus_connection_get_is_connected(g_m_conn_sender);
- bool listener_connected = dbus_connection_get_is_connected(g_m_conn_listener);
-
- SLOG(LOG_INFO, TAG_VCM, "[DBUS] Sender(%s) Listener(%s)",
- sender_connected ? "Connected" : "Not connected", listener_connected ? "Connected" : "Not connected");
-
- if (false == sender_connected || false == listener_connected) {
- vc_mgr_dbus_close_connection();
-
- if (0 != vc_mgr_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to reconnect");
- return -1;
- }
-
- SLOG(LOG_INFO, TAG_VCM, "[DBUS] Reconnect");
- }
-
- return 0;
-}
-
-static int __dbus_check()
-{
- if (NULL == g_m_conn_sender || NULL == g_m_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] NULL connection"); //LCOV_EXCL_LINE
- return vc_mgr_dbus_reconnect();
- }
- return 0;
-}
-
-int vc_mgr_dbus_request_hello()
-{
- SLOG(LOG_DEBUG, TAG_VCM, "@@ Request vc hello start");
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_HELLO);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ Request vc hello : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg = NULL;
- int result = 0;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_m_conn_sender, msg, g_m_waiting_short_time, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- dbus_message_unref(msg);
-
- if (NULL != result_msg) {
- dbus_message_unref(result_msg);
- result = 0;
- } else {
- result = VC_ERROR_TIMED_OUT;
- }
-
- SLOG(LOG_DEBUG, TAG_VCM, "@@ Request vc hello end");
- return result;
-}
-
-static int __dbus_restore_daemon()
-{
- int ret = -1;
- int count = 0;
- while (0 != ret) {
- ret = vc_mgr_dbus_request_hello();
- if (0 != ret) {
- if (VC_ERROR_TIMED_OUT != ret) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to restore daemon");
- break;
- } else {
- SLOG(LOG_WARN, TAG_VCM, "[WARNING] retry restore daemon");
- usleep(10000);
- count++;
- if (VC_RETRY_COUNT == count) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to request");
- break;
- }
- }
- } else {
- SLOG(LOG_ERROR, TAG_VCM, "[SUCCESS] restore daemon");
- }
- }
- return ret;
-}
-
-int vc_mgr_dbus_request_finalize(int pid)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- bool exist = dbus_bus_name_has_owner(g_m_conn_sender, VC_SERVER_SERVICE_NAME, &err);
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- int ret;
- if (false == exist) {
- ret = __dbus_restore_daemon();
- if (VC_ERROR_NONE != ret) {
- SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Fail to restore daemon");
- return VC_ERROR_TIMED_OUT;
- }
- return VC_ERROR_OPERATION_FAILED;
- }
-
- /* remove a rule for daemon error */
- char rule_err[256] = {0, };
- snprintf(rule_err, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE);
- dbus_bus_remove_match(g_m_conn_listener, rule_err, &err);
- dbus_connection_flush(g_m_conn_listener);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCM, "Match Error (%s)", err.message);
- dbus_error_free(&err);
- return VC_ERROR_OPERATION_FAILED;
- }
-
- return VC_ERROR_NONE;
-}
-
-static DBusMessage* __get_message(int pid, const char* method, int type)
-{
- char service_name[64];
- char object_path[64];
- char target_if_name[128];
-
- memset(service_name, '\0', 64);
- memset(object_path, '\0', 64);
- memset(target_if_name, '\0', 128);
-
- if (VC_COMMAND_TYPE_FOREGROUND == type || VC_COMMAND_TYPE_BACKGROUND == type) {
- snprintf(service_name, 64, "%s%d", VC_CLIENT_SERVICE_NAME, pid);
- snprintf(object_path, 64, "%s", VC_CLIENT_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_CLIENT_SERVICE_NAME, pid);
- } else if (VC_COMMAND_TYPE_WIDGET == type) {
- snprintf(service_name, 64, "%s%d", VC_WIDGET_SERVICE_NAME, pid);
- snprintf(object_path, 64, "%s", VC_WIDGET_SERVICE_OBJECT_PATH);
- snprintf(target_if_name, 128, "%s%d", VC_WIDGET_SERVICE_INTERFACE, pid);
- } else {
- return NULL;
- }
-
- SLOG(LOG_INFO, TAG_VCM, "[Dbus] Service(%s) object(%s) if(%s)", service_name, object_path, target_if_name);
-
- return dbus_message_new_method_call(service_name, object_path, target_if_name, method);
-}
-
-// int vc_mgr_dbus_send_result(int pid, int cmd_type, int result_id)
-// {
-// if (0 != __dbus_check()) {
-// return VC_ERROR_OPERATION_FAILED;
-// }
-
-// DBusMessage* msg = NULL;
-
-// switch (cmd_type) {
-// case VC_COMMAND_TYPE_FOREGROUND:
-// case VC_COMMAND_TYPE_BACKGROUND:
-// msg = __get_message(pid, VCD_METHOD_RESULT, cmd_type);
-// break;
-// case VC_COMMAND_TYPE_WIDGET:
-// msg = __get_message(pid, VCD_WIDGET_METHOD_RESULT, cmd_type);
-// break;
-// default:
-// SLOG(LOG_ERROR, TAG_VCM, "[Dbus ERROR] Command type is NOT valid(%d)", cmd_type);
-// return -1;
-// }
-
-// if (NULL == msg)
-// SLOG(LOG_ERROR, TAG_VCM, "[Dbus ERROR] Message is NULL");
-
-// dbus_message_append_args(msg, DBUS_TYPE_INT32, &result_id, DBUS_TYPE_INVALID);
-
-// dbus_message_set_no_reply(msg, TRUE);
-
-// /* send the message and flush the connection */
-// if (1 != dbus_connection_send(g_m_conn_sender, msg, NULL)) {
-// SLOG(LOG_ERROR, TAG_VCM, "[Dbus ERROR] Fail to Send");
-// dbus_message_unref(msg);
-// return VC_ERROR_OPERATION_FAILED;
-// } else {
-// SLOG(LOG_INFO, TAG_VCM, "[Dbus] SUCCESS Send");
-// dbus_connection_flush(g_m_conn_sender);
-// }
-
-// dbus_message_unref(msg);
-// return 0;
-// }
-
-int vc_mgr_dbus_send_utterance_status(int pid, int utt_id, vc_tts_utterance_status_e utt_status)
-{
- if (0 != __dbus_check()) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
- msg = __get_message(pid, VC_MANAGER_METHOD_UTTERANCE_STATUS, VC_COMMAND_TYPE_FOREGROUND);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCM, "@@ vc send utterance status : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCM, "@@ vc send utterance status : pid(%d), utt_id(%d), utt_status(%d)", pid, utt_id, utt_status);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INT32, &utt_status,
- DBUS_TYPE_INVALID);
-
- dbus_message_set_no_reply(msg, TRUE);
-
- /* send the message and flush the connection */
- if (1 != dbus_connection_send(g_m_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCM, "[Dbus ERROR] Fail to Send");
- dbus_message_unref(msg);
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCM, "[Dbus] SUCCESS Send");
- dbus_connection_flush(g_m_conn_sender);
- }
-
- dbus_message_unref(msg);
- return 0;
-}
\ No newline at end of file
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#ifndef __VC_DBUS_H_
-#define __VC_DBUS_H_
-
-#include "voice_control_manager_internal.h"
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-int vc_mgr_dbus_open_connection();
-
-int vc_mgr_dbus_close_connection();
-
-
-int vc_mgr_dbus_request_hello();
-
-int vc_mgr_dbus_request_finalize(int pid);
-
-int vc_mgr_dbus_send_utterance_status(int pid, int utt_id, vc_tts_utterance_status_e utt_status);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __VC_DBUS_H_ */
#include "vc_config_mgr.h"
#include "vc_main.h"
-// #include "vc_setting_dbus.h"
#include "vc_setting_tidl.h"
#include "voice_control_common.h"
#include "voice_control_setting.h"
+++ /dev/null
-/*
-* Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-#include "vc_setting_dbus.h"
-#include "vc_main.h"
-
-
-static int g_s_waiting_time = 3000;
-
-static Ecore_Fd_Handler* g_s_fd_handler = NULL;
-
-static DBusConnection* g_s_conn_sender = NULL;
-static DBusConnection* g_s_conn_listener = NULL;
-
-
-static Eina_Bool listener_setting_event_callback(void* data, Ecore_Fd_Handler *fd_handler)
-{
- if (NULL == g_s_conn_listener) return ECORE_CALLBACK_RENEW;
-
- dbus_connection_read_write_dispatch(g_s_conn_listener, 50);
-
- while (1) {
- DBusMessage* msg = NULL;
- msg = dbus_connection_pop_message(g_s_conn_listener);
-
- /* loop again if we haven't read a message */
- if (NULL == msg) {
- break;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- char if_name[64] = {0, };
- snprintf(if_name, 64, "%s", VC_SETTING_SERVICE_INTERFACE);
-
- if (dbus_message_is_method_call(msg, if_name, VCD_METHOD_HELLO)) {
- SLOG(LOG_DEBUG, TAG_VCS, "@@@ Get Hello");
- int pid = 0;
- int response = -1;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (pid > 0) {
- SLOG(LOG_DEBUG, TAG_VCS, "@@ vc get hello : pid(%d) ", pid);
- response = 1;
- } else {
- SLOG(LOG_ERROR, TAG_VCS, "@@ vc get hello : invalid pid ");
- }
-
- DBusMessage* reply = NULL;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &response, DBUS_TYPE_INVALID);
-
- if (!dbus_connection_send(g_s_conn_listener, reply, NULL))
- SLOG(LOG_ERROR, TAG_VCS, "@@ vc get hello : fail to send reply");
- else
- SLOG(LOG_DEBUG, TAG_VCS, "@@ vc get hello : result(%d)", response);
-
- dbus_connection_flush(g_s_conn_listener);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCS, "@@ vc get hello : fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCS, "@@@");
- } /* VCD_METHOD_HELLO */
-
- else {
- SLOG(LOG_DEBUG, TAG_VCS, "Message is NOT valid");
- dbus_message_unref(msg);
- break;
- }
-
- /* free the message */
- dbus_message_unref(msg);
- } /* while(1) */
-
- return ECORE_CALLBACK_PASS_ON;
-}
-
-static void __vc_setting_dbus_connection_free()
-{
- if (NULL != g_s_conn_listener) {
- dbus_connection_close(g_s_conn_listener);
- dbus_connection_unref(g_s_conn_listener);
- g_s_conn_listener = NULL;
- }
- if (NULL != g_s_conn_sender) {
- dbus_connection_close(g_s_conn_sender);
- dbus_connection_unref(g_s_conn_sender);
- g_s_conn_sender = NULL;
- }
-}
-
-int vc_setting_dbus_open_connection()
-{
- if (NULL != g_s_conn_sender && NULL != g_s_conn_listener) {
- SLOG(LOG_WARN, TAG_VCS, "already existed connection ");
- return 0;
- }
-
- DBusError err;
- int ret;
-
- /* initialize the error value */
- dbus_error_init(&err);
-
- /* connect to the DBUS system bus, and check for errors */
- g_s_conn_sender = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "Dbus Connection Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL == g_s_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCS, "Fail to get dbus connection ");
- return VC_ERROR_OPERATION_FAILED;
- }
-
- g_s_conn_listener = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "Dbus Connection Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL == g_s_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCS, "Fail to get dbus connection ");
- __vc_setting_dbus_connection_free();
- return VC_ERROR_OPERATION_FAILED;
- }
-
- int pid = getpid();
-
- char service_name[64];
- memset(service_name, '\0', 64);
- snprintf(service_name, 64, "%s%d", VC_SETTING_SERVICE_NAME, pid);
-
- SLOG(LOG_DEBUG, TAG_VCS, "service name is %s", service_name);
-
- /* register our name on the bus, and check for errors */
- ret = dbus_bus_request_name(g_s_conn_listener, service_name, DBUS_NAME_FLAG_REPLACE_EXISTING, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "Name Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER != ret) {
- SLOG(LOG_ERROR, TAG_VCS, "fail dbus_bus_request_name()");
- __vc_setting_dbus_connection_free();
- return -2;
- }
-
- if (NULL != g_s_fd_handler) {
- SLOG(LOG_WARN, TAG_VCS, "The handler already exists.");
- __vc_setting_dbus_connection_free();
- return 0;
- }
-
- char rule[128] = {0, };
- snprintf(rule, 128, "type='signal',interface='%s'", VC_SETTING_SERVICE_INTERFACE);
-
- /* add a rule for which messages we want to see */
- dbus_bus_add_match(g_s_conn_listener, rule, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "Match Error (%s)", err.message);
- dbus_error_free(&err);
- __vc_setting_dbus_connection_free();
- return VC_ERROR_OPERATION_FAILED;
- }
-
- int fd = 0;
- if (1 != dbus_connection_get_unix_fd(g_s_conn_listener, &fd)) {
- SLOG(LOG_ERROR, TAG_VCS, "fail to get fd from dbus ");
- __vc_setting_dbus_connection_free();
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCS, "Get fd from dbus : %d", fd);
- }
-
- g_s_fd_handler = ecore_main_fd_handler_add(fd, ECORE_FD_READ, (Ecore_Fd_Cb)listener_setting_event_callback, g_s_conn_listener, NULL, NULL);
- if (NULL == g_s_fd_handler) {
- SLOG(LOG_ERROR, TAG_VCS, "fail to get fd handler from ecore ");
- __vc_setting_dbus_connection_free();
- return VC_ERROR_OPERATION_FAILED;
- }
-
- return 0;
-}
-
-int vc_setting_dbus_close_connection()
-{
- DBusError err;
- dbus_error_init(&err);
-
- if (NULL != g_s_fd_handler) {
- ecore_main_fd_handler_del(g_s_fd_handler);
- g_s_fd_handler = NULL;
- }
-
- int pid = getpid();
-
- char service_name[64];
- memset(service_name, '\0', 64);
- snprintf(service_name, 64, "%s%d", VC_SETTING_SERVICE_NAME, pid);
-
- char rule[128] = {0, };
- snprintf(rule, 128, "type='signal',interface='%s'", VC_SETTING_SERVICE_INTERFACE);
- dbus_bus_remove_match(g_s_conn_listener, rule, NULL);
-
- dbus_bus_release_name(g_s_conn_listener, service_name, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- __vc_setting_dbus_connection_free();
-
- return 0;
-}
-
-int vc_setting_dbus_reconnect()
-{
- if (!g_s_conn_sender || !g_s_conn_listener) {
- vc_setting_dbus_close_connection();
-
- if (0 != vc_setting_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCS, "[ERROR] Fail to reconnect");
- return -1;
- }
-
- SLOG(LOG_DEBUG, TAG_VCS, "[DBUS] Reconnect");
- return 0;
- }
-
- bool sender_connected = dbus_connection_get_is_connected(g_s_conn_sender);
- bool listener_connected = dbus_connection_get_is_connected(g_s_conn_listener);
- SLOG(LOG_WARN, TAG_VCS, "[DBUS] Sender(%s) Listener(%s)",
- sender_connected ? "Connected" : "Not connected", listener_connected ? "Connected" : "Not connected");
-
- if (false == sender_connected || false == listener_connected) {
- vc_setting_dbus_close_connection();
-
- if (0 != vc_setting_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCS, "[ERROR] Fail to reconnect");
- return -1;
- }
-
- SLOG(LOG_DEBUG, TAG_VCS, "[DBUS] Reconnect");
- }
-
- return 0;
-}
-
-int vc_setting_dbus_request_hello()
-{
- if (NULL == g_s_conn_sender) {
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_METHOD_HELLO);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCS, "@@ Request vc hello : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg = NULL;
- int result = 0;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_s_conn_sender, msg, 500, &err);
-
- if (dbus_error_is_set(&err)) {
- dbus_error_free(&err);
- }
-
- dbus_message_unref(msg);
-
- if (NULL != result_msg) {
- dbus_message_unref(result_msg);
- result = 0;
- } else {
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
-
-int vc_setting_dbus_request_set_language(int pid, const char* language)
-{
- if (NULL == g_s_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCS, "[ERROR] Dbus does not open");
- return VC_ERROR_OPERATION_FAILED;
- }
-
- DBusMessage* msg;
-
- msg = dbus_message_new_method_call(
- VC_SERVER_SERVICE_NAME,
- VC_SERVER_SERVICE_OBJECT_PATH,
- VC_SERVER_SERVICE_INTERFACE,
- VC_SETTING_METHOD_SET_LANGUAGE);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCS, "@@ vc set language : Fail to make message");
- return VC_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCS, "@@ vc set language : pid(%d)", pid);
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &language,
- DBUS_TYPE_INVALID);
-
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* result_msg;
- int result = VC_ERROR_OPERATION_FAILED;
-
- result_msg = dbus_connection_send_with_reply_and_block(g_s_conn_sender, msg, g_s_waiting_time, &err);
- dbus_message_unref(msg);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "[ERROR] Dbus Error (%s)", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL != result_msg) {
- dbus_message_get_args(result_msg, &err,
- DBUS_TYPE_INT32, &result,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCS, "@@ Get arguments error (%s)", err.message);
- dbus_error_free(&err);
- result = VC_ERROR_OPERATION_FAILED;
- }
- dbus_message_unref(result_msg);
-
- SLOG(LOG_DEBUG, TAG_VCS, "@@ vcd set language : result = %d", result);
- } else {
- SLOG(LOG_ERROR, TAG_VCS, "@@ Result message is NULL");
- vc_setting_dbus_reconnect();
- result = VC_ERROR_TIMED_OUT;
- }
-
- return result;
-}
+++ /dev/null
-/*
-* Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#ifndef __VC_SETTING_DBUS_H_
-#define __VC_SETTING_DBUS_H_
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-int vc_setting_dbus_open_connection();
-
-int vc_setting_dbus_close_connection();
-
-int vc_setting_dbus_request_hello();
-
-int vc_setting_dbus_request_set_language(int pid, const char* language);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __VC_SETTING_DBUS_H_ */
#ifndef __VC_MAIN_H_
#define __VC_MAIN_H_
-#include <dbus/dbus.h>
#include <dlog.h>
#include <Ecore.h>
#include <glib.h>
Name: lib@PROJECT_NAME@_engine
Description: Voice control engine header
-Requires: glib-2.0 dbus-1 capi-base-common
+Requires: glib-2.0 capi-base-common
Version: @VERSION@
Libs: -L${libdir} -l@PROJECT_NAME@_engine
Cflags: -I${includedir}
Name: lib@PROJECT_NAME@_manager
Description: Voice control manager client library
-Requires: glib-2.0 dbus-1 capi-base-common
+Requires: glib-2.0 capi-base-common
Version: @VERSION@
Libs: -L${libdir} -l@PROJECT_NAME@_manager
Cflags: -I${includedir}
Name: lib@PROJECT_NAME@_widget
Description: Voice control library for widget
-Requires: glib-2.0 dbus-1 capi-base-common
+Requires: glib-2.0 capi-base-common
Version: @VERSION@
Libs: -L${libdir} -l@PROJECT_NAME@_widget
Cflags: -I${includedir}
Name: lib@PROJECT_NAME@
Description: Voice control client library
-Requires: glib-2.0 dbus-1 capi-base-common
+Requires: glib-2.0 capi-base-common
Version: @VERSION@
Libs: -L${libdir} -l@PROJECT_NAME@
Cflags: -I${includedir}
+++ /dev/null
-[D-BUS Service]
-Name=org.tizen.voice.vcserver
-#Exec=/usr/bin/vc-daemon
-#Exec=/bin/sh -c "launch_app org.tizen.vc-engine-default"
-Exec=/bin/sh -c "vc_getengine get system db/voice/vc/engine/default | awk '{print$5}' | xargs -t -i launch_app {}"
+++ /dev/null
-[D-BUS Service]
-Name=org.tizen.voice.vcserver
-#Exec=/usr/bin/vc-daemon
-Exec=/bin/sh -c "launch_app org.tizen.voice-client"
BuildRequires: pkgconfig(capi-system-info)
BuildRequires: pkgconfig(cynara-client)
BuildRequires: pkgconfig(cynara-session)
-BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(db-util)
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(ecore)
%{_bindir}/vc_getengine
%{TZ_SYS_RO_SHARE}/voice/vc/1.0/vc-config.xml
%{TZ_SYS_RO_SHARE}/voice/vc/1.0/dependency-audio-manager/libvc-audio-manager.so
-%{TZ_SYS_RO_SHARE}/dbus-1/services/org.tizen.voice*
%{TZ_SYS_RO_SHARE}/parser-plugins/voice-control.info
%{TZ_SYS_RO_ETC}/package-manager/parserlib/metadata/libvc-engine-parser.so*
-/etc/dbus-1/session.d/vc-server.conf
%files devel
%manifest %{name}-devel.manifest
vcd_client_data.c
vcd_server_data.cpp
vcd_config.c
-# vcd_dbus_server.c
-# vcd_dbus.c
vcd_tidl.c
vcd_stub.c
vcd_mgr_stub.c
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-#include <dbus/dbus.h>
-#include "vcd_client_data.h"
-// #include "vcd_dbus.h"
-// #include "vcd_dbus_server.h"
-#include "vcd_tidl.h"
-#include "vcd_main.h"
-
-
-static DBusConnection* g_conn_sender = NULL;
-static DBusConnection* g_conn_listener = NULL;
-
-static Ecore_Fd_Handler* g_dbus_fd_handler = NULL;
-
-// static int g_waiting_time = 3000;
-
-// static int g_volume_count = 0;
-
-
-// static DBusMessage* __get_message(int pid, const char* method, vcd_client_type_e type)
-// {
-// char service_name[64] = {0,};
-// char object_path[64] = {0,};
-// char target_if_name[128] = {0,};
-
-// if (VCD_CLIENT_TYPE_NORMAL == type) {
-// snprintf(service_name, 64, "%s%d", VC_CLIENT_SERVICE_NAME, pid);
-// snprintf(object_path, 64, "%s", VC_CLIENT_SERVICE_OBJECT_PATH);
-// snprintf(target_if_name, 128, "%s", VC_CLIENT_SERVICE_INTERFACE);
-// } else if (VCD_CLIENT_TYPE_WIDGET == type) {
-// snprintf(service_name, 64, "%s%d", VC_WIDGET_SERVICE_NAME, pid);
-// snprintf(object_path, 64, "%s", VC_WIDGET_SERVICE_OBJECT_PATH);
-// snprintf(target_if_name, 128, "%s", VC_WIDGET_SERVICE_INTERFACE);
-// } else if (VCD_CLIENT_TYPE_MANAGER == type) {
-// snprintf(service_name, 64, "%s", VC_MANAGER_SERVICE_NAME);
-// snprintf(object_path, 64, "%s", VC_MANAGER_SERVICE_OBJECT_PATH);
-// snprintf(target_if_name, 128, "%s", VC_MANAGER_SERVICE_INTERFACE);
-// } else {
-// return NULL;
-// }
-
-// return dbus_message_new_method_call(service_name, object_path, target_if_name, method);
-// }
-
-int vcd_dbus_reconnect()
-{
- if (!g_conn_sender || !g_conn_listener) {
- vcd_dbus_close_connection();
-
- if (0 != vcd_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to reconnect");
- return -1;
- }
-
- SLOG(LOG_INFO, TAG_VCD, "[DBUS] Reconnect");
- return 0;
- }
-
- bool sender_connected = dbus_connection_get_is_connected(g_conn_sender);
- bool listener_connected = dbus_connection_get_is_connected(g_conn_listener);
- SLOG(LOG_WARN, TAG_VCD, "[DBUS] Sender(%s) Listener(%s)",
- sender_connected ? "Connected" : "Not connected", listener_connected ? "Connected" : "Not connected");
-
- if (false == sender_connected || false == listener_connected) {
- vcd_dbus_close_connection();
-
- if (0 != vcd_dbus_open_connection()) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to reconnect");
- return -1;
- }
-
- SLOG(LOG_INFO, TAG_VCD, "[DBUS] Reconnect");
- }
-
- return 0;
-}
-
-// static int __dbus_check()
-// {
-// if (NULL == g_conn_sender || NULL == g_conn_listener) {
-// SLOG(LOG_ERROR, TAG_VCD, "[ERROR] NULL connection");
-// return vcd_dbus_reconnect();
-// }
-// return 0;
-// }
-
-int vcd_check_dbus_connection()
-{
- if (NULL == g_conn_sender || NULL == g_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] NULL connection sender(%p), listener(%p)", g_conn_sender, g_conn_listener);
- return -1;
- }
- return 0;
-}
-
-/*
-int vcdc_send_manager_pid(int manager_pid)
-{
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* msg = NULL;
-
- // Send to client
- msg = dbus_message_new_signal(
- VC_CLIENT_SERVICE_OBJECT_PATH,
- VC_CLIENT_SERVICE_INTERFACE,
- VCD_METHOD_SEND_MANAGER_PID);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Message is NULL");
- return VCD_ERROR_OUT_OF_MEMORY;
- }
-
- dbus_message_append_args(msg, DBUS_TYPE_INT32, &manager_pid, DBUS_TYPE_INVALID);
-
- if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to Send");
- return VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "@@ Send manager pid to client : pid(%d)", manager_pid);
- dbus_connection_flush(g_conn_sender);
- }
-
- dbus_message_unref(msg);
-
- return 0;
-}
-
-int vcdc_send_error_signal(int reason, char *err_msg)
-{
- SLOG(LOG_ERROR, TAG_VCD, "@@ Send error signal");
-
- if (NULL == err_msg) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Input parameter is NULL");
- return VCD_ERROR_INVALID_PARAMETER;
- }
-
- if (0 != __dbus_check()) {
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- int daemon_pid;
- DBusError err;
- dbus_error_init(&err);
-
- DBusMessage* msg = NULL;
-
- // msg = dbus_message_new_signal(
- // VC_MANAGER_SERVICE_OBJECT_PATH,
- // VC_MANAGER_SERVICE_INTERFACE,
- // VCD_MANAGER_METHOD_ERROR);
-
- // if (NULL == msg) {
- // SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Message is NULL");
- // return VCD_ERROR_OUT_OF_MEMORY;
- // }
-
- // daemon_pid = getpid();
- // dbus_message_append_args(msg, DBUS_TYPE_INT32, &reason, DBUS_TYPE_INT32, &daemon_pid, DBUS_TYPE_STRING, &err_msg, DBUS_TYPE_INVALID);
-
- // if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- // SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to Send");
- // return VCD_ERROR_OPERATION_FAILED;
- // } else {
- // SLOG(LOG_INFO, TAG_VCD, "@@ Send error signal to manager: reason(%d), daemon_pid(%d), Error Msg(%s)", reason, daemon_pid, err_msg);
- // dbus_connection_flush(g_conn_sender);
- // }
-
- // dbus_message_unref(msg);
-
- // msg = NULL;
-
- vcdc_tidl_send_error(reason, err_msg);
-
- msg = dbus_message_new_signal(
- VC_CLIENT_SERVICE_OBJECT_PATH,
- VC_CLIENT_SERVICE_INTERFACE,
- VCD_METHOD_ERROR);
-
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Message is NULL");
- return VCD_ERROR_OUT_OF_MEMORY;
- }
-
- dbus_message_append_args(msg, DBUS_TYPE_INT32, &reason, DBUS_TYPE_INT32, &daemon_pid, DBUS_TYPE_STRING, &err_msg, DBUS_TYPE_INVALID);
-
- if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to Send");
- return VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "@@ Send error signal : reason(%d), daemon_pid(%d), Error Msg(%s)", reason, daemon_pid, err_msg);
- dbus_connection_flush(g_conn_sender);
- }
-
- dbus_message_unref(msg);
-
- // msg = NULL;
- // msg = dbus_message_new_signal(
- // VC_WIDGET_SERVICE_OBJECT_PATH,
- // VC_WIDGET_SERVICE_INTERFACE,
- // VCD_WIDGET_METHOD_ERROR);
-
- // if (NULL == msg) {
- // SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Message is NULL");
- // return VCD_ERROR_OUT_OF_MEMORY;
- // }
-
- // dbus_message_append_args(msg, DBUS_TYPE_INT32, &reason, DBUS_TYPE_INT32, &daemon_pid, DBUS_TYPE_STRING, &err_msg, DBUS_TYPE_INVALID);
-
- // if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- // SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to Send");
- // return VCD_ERROR_OPERATION_FAILED;
- // } else {
- // SLOG(LOG_INFO, TAG_VCD, "@@ Send error signal to widget : reason(%d), daemon_pid(%d), Error Msg(%s)", reason, daemon_pid, err_msg);
- // dbus_connection_flush(g_conn_sender);
- // }
-
- // dbus_message_unref(msg);
-
- return 0;
-}
-
-int vcdc_send_error_signal_to_app(int pid, int reason, char *err_msg)
-{
- if (NULL == err_msg) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Input parameter is NULL");
- return VCD_ERROR_INVALID_PARAMETER;
- }
-
- if (VCD_ERROR_NONE != __dbus_check()) {
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- SLOG(LOG_ERROR, TAG_VCD, "@@ Send error to app(%d)", pid);
-
- DBusMessage* msg = __get_message(pid, VCD_METHOD_ERROR_TO_APP, VCD_CLIENT_TYPE_NORMAL);
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Message is NULL");
- return VCD_ERROR_OUT_OF_MEMORY;
- }
-
- dbus_message_append_args(msg, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &reason, DBUS_TYPE_STRING, &err_msg, DBUS_TYPE_INVALID);
-
- dbus_message_set_no_reply(msg, TRUE);
-
- if (TRUE != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to Send");
- dbus_message_unref(msg);
- return VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCD, "@@ Send error to app: pid(%d), reason(%d), Error Msg(%s)", pid, reason, err_msg);
- dbus_connection_flush(g_conn_sender);
- }
-
- dbus_message_unref(msg);
-
- return VCD_ERROR_NONE;
-}
-*/
-/*
-int vcdc_send_feedback_streaming(int pid, int utt_id, vc_feedback_event_e event, char* buffer, int len)
-{
- SLOG(LOG_INFO, TAG_VCD, "[Dbus] Send TTS feedback streaming : pid(%d), utt_id(%d), feedback event(%d), buffer(%p), length(%d)", pid, utt_id, event, buffer, len);
-
- if (0 != __dbus_check()) {
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- DBusError err;
- dbus_error_init(&err);
-
- // make dbus message
- DBusMessage* msg = NULL;
- msg = __get_message(pid, VCD_METHOD_FEEDBACK_STREAMING, VCD_CLIENT_TYPE_NORMAL);
- if (NULL == msg) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Message is NULL");
- return VCD_ERROR_OUT_OF_MEMORY;
- }
-
- dbus_message_append_args(msg,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INT32, &event,
- DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE,
- &buffer, len,
- DBUS_TYPE_INVALID);
-
- dbus_message_set_no_reply(msg, TRUE);
-
- int ret = VCD_ERROR_NONE;
-
- if (1 != dbus_connection_send(g_conn_sender, msg, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to Send");
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[Dbus] SUCCESS Send");
- dbus_connection_flush(g_conn_sender);
- }
-
- dbus_message_unref(msg);
-
- return ret;
-}
-*/
-static Eina_Bool listener_event_callback(void* data, Ecore_Fd_Handler *fd_handler)
-{
- if (NULL == g_conn_listener) return ECORE_CALLBACK_RENEW;
-
- dbus_connection_read_write_dispatch(g_conn_listener, 50);
-
- while (1) {
- DBusMessage* msg = NULL;
- msg = dbus_connection_pop_message(g_conn_listener);
-
- /* loop again if we haven't read a message */
- if (NULL == msg) {
- SLOG(LOG_INFO, TAG_VCD, "@@@ no Dbus message anymore");
- break;
- }
-
- /* Common event */
- if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_HELLO))
- vcd_dbus_server_hello(g_conn_listener, msg);
-
- /* client event */
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_INITIALIZE))
- vcd_dbus_server_initialize(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_FINALIZE))
- vcd_dbus_server_finalize(g_conn_listener, msg);
-#if 0
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_SET_EXCLUSIVE_CMD))
- vcd_dbus_server_set_exclusive_command(g_conn_listener, msg);
-#endif
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_SET_COMMAND))
- vcd_dbus_server_set_command(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_UNSET_COMMAND))
- vcd_dbus_server_unset_command(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_SET_FOREGROUND))
- vcd_dbus_server_set_foreground(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_SET_SERVER_DIALOG))
- vcd_dbus_server_set_server_dialog(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_DIALOG))
- vcd_dbus_server_dialog(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_IS_SYS_COMMAND_VALID))
- vcd_dbus_server_is_system_command_valid(g_conn_listener, msg);
-
-#if 0
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_REQUEST_START))
- vcd_dbus_server_start_request(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_REQUEST_STOP))
- vcd_dbus_server_stop_request(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_REQUEST_CANCEL))
- vcd_dbus_server_cancel_request(g_conn_listener, msg);
-#endif
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_SETTING_METHOD_SET_LANGUAGE))
- vcd_dbus_server_set_language(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_REQUEST_TTS))
- vcd_dbus_server_request_tts(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_CANCEL_TTS))
- vcd_dbus_server_cancel_tts(g_conn_listener, msg);
-
- else if (dbus_message_is_method_call(msg, VC_SERVER_SERVICE_INTERFACE, VC_METHOD_GET_TTS_AUDIO_FORMAT))
- vcd_dbus_server_get_tts_audio_format(g_conn_listener, msg);
-
- else {
- const char* sender = dbus_message_get_sender(msg);
- const char* destination = dbus_message_get_destination(msg);
- const char* path = dbus_message_get_path(msg);
- const char* interf = dbus_message_get_interface(msg);
- const char* member = dbus_message_get_member(msg);
- int type = dbus_message_get_type(msg);
- SLOG(LOG_ERROR, TAG_VCD, "[INFO] Message is NOT valid, sender(%s), destination(%s), path(%s), interface(%s), member(%s), type(%d)", sender, destination, path, interf, member, type);
- dbus_message_unref(msg);
- break;
- }
-
- /* free the message */
- dbus_message_unref(msg);
- }
-
- return ECORE_CALLBACK_RENEW;
-}
-
-static void __vcd_dbus_connection_free()
-{
- if (NULL != g_conn_listener) {
- dbus_connection_close(g_conn_listener);
- dbus_connection_unref(g_conn_listener);
- g_conn_listener = NULL;
- }
- if (NULL != g_conn_sender) {
- dbus_connection_close(g_conn_sender);
- dbus_connection_unref(g_conn_sender);
- g_conn_sender = NULL;
- }
-}
-
-int vcd_dbus_open_connection()
-{
- DBusError err;
- dbus_error_init(&err);
-
- int ret;
-
- /* Create connection for sender */
- g_conn_sender = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail dbus_bus_get : %s", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL == g_conn_sender) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to get dbus connection");
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- dbus_connection_set_exit_on_disconnect(g_conn_sender, false);
-
- /* connect to the bus and check for errors */
- g_conn_listener = dbus_bus_get_private(DBUS_BUS_SESSION, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail dbus_bus_get : %s", err.message);
- dbus_error_free(&err);
- }
-
- if (NULL == g_conn_listener) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to get dbus connection");
- __vcd_dbus_connection_free();
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- dbus_connection_set_exit_on_disconnect(g_conn_listener, false);
-
- /* request our name on the bus and check for errors */
- ret = dbus_bus_request_name(g_conn_listener, VC_SERVER_SERVICE_NAME, DBUS_NAME_FLAG_REPLACE_EXISTING, &err);
-
- if (DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER != ret) {
- printf("Fail to be primary owner in dbus request.");
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to be primary owner");
- __vcd_dbus_connection_free();
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] dbus_bus_request_name() : %s", err.message);
- dbus_error_free(&err);
- __vcd_dbus_connection_free();
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- /* Flush messages which are received before fd event handler registration */
- while (DBUS_DISPATCH_COMPLETE != dbus_connection_get_dispatch_status(g_conn_listener)) {
- SLOG(LOG_INFO, TAG_VCD, "Dbus data is remained, g_conn_listener(%p)", g_conn_listener);
- listener_event_callback(NULL, NULL);
- }
-
- /* add fd handler to receive dbus metohd */
- int fd = 0;
- if (1 != dbus_connection_get_unix_fd(g_conn_listener, &fd)) {
- SLOG(LOG_ERROR, TAG_VCD, "fail to get fd from dbus ");
- __vcd_dbus_connection_free();
- return VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "Get fd from dbus : %d", fd);
- }
-
- g_dbus_fd_handler = ecore_main_fd_handler_add(fd, ECORE_FD_READ, (Ecore_Fd_Cb)listener_event_callback, g_conn_listener, NULL, NULL);
-
- if (NULL == g_dbus_fd_handler) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] Fail to get fd handler");
- __vcd_dbus_connection_free();
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- /* add a rule for getting signal */
- char rule[128];
- snprintf(rule, 128, "type='signal',interface='%s'", VC_SERVER_SERVICE_INTERFACE);
-
- /* add a rule for which messages we want to see */
- dbus_bus_add_match(g_conn_listener, rule, &err);/* see signals from the given interface */
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] dbus_bus_add_match() : %s", err.message);
- dbus_error_free(&err);
- __vcd_dbus_connection_free();
- return VCD_ERROR_OPERATION_FAILED;
- }
-
- SLOG(LOG_INFO, TAG_VCD, "[INFO] Success to open dbus connection");
-
- return 0;
-}
-
-int vcd_dbus_close_connection()
-{
- DBusError err;
- dbus_error_init(&err);
-
- if (NULL != g_dbus_fd_handler) {
- ecore_main_fd_handler_del(g_dbus_fd_handler);
- g_dbus_fd_handler = NULL;
- }
-
- if (NULL != g_conn_listener) {
- dbus_bus_release_name(g_conn_listener, VC_SERVER_SERVICE_NAME, &err);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[Dbus ERROR] dbus_bus_release_name() : %s", err.message);
- dbus_error_free(&err);
- }
- }
- __vcd_dbus_connection_free();
-
- return 0;
-}
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#ifndef __VCD_DBUS_h__
-#define __VCD_DBUS_h__
-
-#include "vcd_main.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-int vcd_dbus_open_connection();
-
-int vcd_dbus_close_connection();
-
-int vcd_check_dbus_connection();
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __VCD_DBUS_h__ */
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#include "vcd_client_data.h"
-// #include "vcd_dbus.h"
-#include "vcd_tidl.h"
-// #include "vcd_dbus_server.h"
-#include "vcd_main.h"
-#include "vcd_server.h"
-#include "vcd_config.h"
-
-vc_cmd_type_e vc_command_types[7] = {VC_COMMAND_TYPE_NONE,
- VC_COMMAND_TYPE_FOREGROUND,
- VC_COMMAND_TYPE_BACKGROUND,
- VC_COMMAND_TYPE_WIDGET,
- VC_COMMAND_TYPE_SYSTEM,
- VC_COMMAND_TYPE_SYSTEM_BACKGROUND,
- VC_COMMAND_TYPE_EXCLUSIVE};
-
-
-int __dbus_error_return(DBusConnection* conn, DBusMessage* msg, int ret)
-{
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_DEBUG, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_hello(DBusConnection* conn, DBusMessage* msg)
-{
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Hello");
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-/* for TTS feedback */
-int vcd_dbus_server_mgr_start_feedback(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid = 0;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Manager start TTS feedback");
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] vcd mgr start TTS feedback : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[DEBUG] vcd mgr start TTS feedback : pid(%d)", pid);
- ret = vcd_server_mgr_start_feedback();
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Out of Memory");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_mgr_stop_feedback(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid = 0;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Manager stop TTS feedback");
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] vcd mgr stop TTS feedback : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[DEBUG] vcd mgr stop TTS feedback : pid(%d)", pid);
- ret = vcd_server_mgr_stop_feedback();
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Out of Memory");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to create reply message");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_mgr_send_audio_streaming(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid = 0;
- int event = 0;
- char* buffer = NULL;
- unsigned int len = 0;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Manager send audio streaming");
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &event,
- DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE,
- &buffer, &len,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd mgr send audio streaming : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd mgr send audio streaming : pid(%d), event(%d), buffer(%p), len(%d)", pid, event, buffer, len);
- ret = vcd_server_mgr_send_audio_streaming(pid, event, buffer, len);
- }
-
- return ret;
-}
-
-int vcd_dbus_server_mgr_change_system_volume(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid = 0;
- int volume_event = 0;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Manager change system volume");
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &volume_event,
- DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd mgr disable command type : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd mgr change system volume: pid(%d), volume_event(%d)", pid, volume_event);
- ret = vcd_server_mgr_change_system_volume(pid, volume_event);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-
-}
-
-int vcd_dbus_server_mgr_set_audio_streaming_mode(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int mode;
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &mode,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Manager set audio streaming mode");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd mgr set audio streaming mode : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd mgr set audio streaming mode : pid(%d) mode(%d)", pid, mode);
- vcd_config_set_audio_streaming_mode((vcd_audio_streaming_mode_e)mode);
- }
- return 0;
-}
-
-/*
-* Dbus Server functions for client
-*/
-int vcd_dbus_server_initialize(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int service_state = 0;
- int daemon_pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Initialize");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd initialize : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- ret = vcd_server_initialize(pid);
- service_state = vcd_server_get_service_state();
- daemon_pid = getpid();
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd initialize : pid(%d) daemon_pid(%d)", pid, daemon_pid);
- }
-
- int mgr_pid = vcd_client_manager_get_pid();
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INT32, &mgr_pid,
- DBUS_TYPE_INT32, &service_state,
- DBUS_TYPE_INT32, &daemon_pid,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_finalize(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Finalize");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd finalize : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd finalize : pid(%d)", pid);
- ret = vcd_server_finalize(pid);
- }
-
- DBusMessage* reply;
-
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-#if 0
-int vcd_dbus_server_set_exclusive_command(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int value;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &value, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD set exclusive command");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd unset command : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCD, "[IN] vcd unset command : pid(%d) value(%d)", pid, value);
- ret = vcd_server_set_exclusive_command(pid, (bool)value);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- if (0 == ret) {
- /* Append result and language */
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-#endif
-
-int vcd_dbus_server_set_command(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int cmd_type;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &cmd_type, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD set command");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd set command : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd set command : pid(%d), cmd_type(%d)", pid, cmd_type);
- ret = vcd_server_set_command(pid, (vc_cmd_type_e)cmd_type);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- if (0 == ret) {
- /* Append result and language */
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_unset_command(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int cmd_type;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &cmd_type, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD unset command");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd unset command : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd unset command : pid(%d), cmd_type(%d)", pid, cmd_type);
- ret = vcd_server_unset_command(pid, (vc_cmd_type_e)cmd_type);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- if (0 == ret) {
- /* Append result and language */
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_set_foreground(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int value;
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &value, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD set foreground");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd set foreground : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- bool tmp_value;
- tmp_value = (bool)value;
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd set foreground : pid(%d), value(%s)", pid, value ? "true" : "false");
- vcd_server_set_foreground(pid, tmp_value);
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_set_server_dialog(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid = -1;
- char* app_id = NULL;
- char* credential = NULL;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &app_id,
- DBUS_TYPE_STRING, &credential,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD set server dialog");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd set server dialog : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd set server dialog : pid(%d), app_id(%s)", pid, app_id);
- ret = vcd_server_set_server_dialog(pid, app_id, credential);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- if (0 == ret) {
- /* Append result and language */
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-
-}
-
-int vcd_dbus_server_dialog(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- char* disp_text = NULL;
- char* utt_text = NULL;
- int continuous;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &disp_text,
- DBUS_TYPE_STRING, &utt_text,
- DBUS_TYPE_INT32, &continuous,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD request dialog");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd request dialog : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd dialog : pid(%d), disp_text(%s), utt_text(%s), continuous(%d)", pid, disp_text, utt_text, continuous);
- ret = vcd_server_dialog(pid, disp_text, utt_text, continuous);
- if (0 != ret) {
- SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to dialog");
- }
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_is_system_command_valid(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int is_sys_cmd_valid;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD request to check system command is valid");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd request to check system command is valid : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd dialog : pid(%d)", pid);
- ret = vcd_server_is_system_command_valid(pid, &is_sys_cmd_valid);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INT32, &is_sys_cmd_valid,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d), is_sys_cmd_valid (%d)", ret, is_sys_cmd_valid);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-#if 0
-int vcd_dbus_server_start_request(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int silence;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Request Start");
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &silence, DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd start : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCD, "[IN] vcd request start : pid(%d), silence(%d)", pid, silence);
- ret = vcd_server_request_start(pid, (bool)silence);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_DEBUG, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_stop_request(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Request Stop");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd stop : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCD, "[IN] vcd request stop : pid(%d)", pid);
- ret = vcd_server_request_stop(pid);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_DEBUG, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_cancel_request(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Request Cancel");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd cancel : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_DEBUG, TAG_VCD, "[IN] vcd request cancel : pid(%d)", pid);
- ret = vcd_server_request_cancel(pid);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_DEBUG, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-#endif
-
-/*
-* Dbus Widget-Daemon Server
-*/
-int vcd_dbus_server_widget_initialize(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int service_state = 0;
- int daemon_pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Widget Initialize");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd widget initialize : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- ret = vcd_server_widget_initialize(pid);
- service_state = vcd_server_get_service_state();
- daemon_pid = getpid();
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget initialize : pid(%d) daemon_pid(%d)", pid, daemon_pid);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INT32, &service_state,
- DBUS_TYPE_INT32, &daemon_pid,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_widget_finalize(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD Widget Finalize");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd widget finalize : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget finalize : pid(%d)", pid);
- ret = vcd_server_widget_finalize(pid);
- }
-
- DBusMessage* reply;
-
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_widget_start_recording(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- int widget_command;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &widget_command,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD widget start recording");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd widget start recording : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget start recording : pid(%d)", pid);
- ret = vcd_server_widget_start_recording(pid, widget_command);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- if (0 == ret) {
- /* Append result and language */
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_widget_start(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int silence;
-
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD widget start");
-
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &silence, DBUS_TYPE_INVALID);
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd start : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget start : pid(%d), silence(%d)", pid, silence);
- ret = vcd_server_widget_start(pid, (bool)silence);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_widget_stop(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD widget stop");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd widget stop : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget stop : pid(%d)", pid);
- ret = vcd_server_widget_stop(pid);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_widget_cancel(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD widget cancel");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd widget cancel : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget cancel : pid(%d)", pid);
- ret = vcd_server_widget_cancel(pid);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_widget_enable_asr_result(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int enable;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_INT32, &enable, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD widget enable asr result");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd widget enable asr result : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd widget enable asr result : pid(%d) enable(%d)", pid, enable);
- ret = vcd_server_widget_enable_asr_result(pid, enable);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_set_language(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- char* language;
- int ret = VCD_ERROR_OPERATION_FAILED;
- dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &pid, DBUS_TYPE_STRING, &language, DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD server set language");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd server set language : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- ret = VCD_ERROR_OPERATION_FAILED;
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd server set language : language(%s)", language);
- ret = vcd_server_set_language(language);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply, DBUS_TYPE_INT32, &ret, DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_request_tts(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- char* text = NULL;
- char* language = NULL;
- int to_vcm;
- int utt_id = -1;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_STRING, &text,
- DBUS_TYPE_STRING, &language,
- DBUS_TYPE_INT32, &to_vcm,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD request tts");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd request tts : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd request tts : pid(%d), text(%s), language(%s), to_vcm(%d)", pid, text, language, to_vcm);
- ret = vcd_server_request_tts(pid, text, language, to_vcm, &utt_id);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d), utt_id(%d)", ret, utt_id);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_cancel_tts(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int utt_id;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INT32, &utt_id,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD cancel tts");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd cancel tts : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd cancel tts : pid(%d), utt_id(%d)", pid, utt_id);
- ret = vcd_server_cancel_tts(pid, utt_id);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
-
-int vcd_dbus_server_get_tts_audio_format(DBusConnection* conn, DBusMessage* msg)
-{
- DBusError err;
- dbus_error_init(&err);
-
- int pid;
- int rate;
- int channel;
- int audio_type;
- int ret = VCD_ERROR_OPERATION_FAILED;
-
- dbus_message_get_args(msg, &err,
- DBUS_TYPE_INT32, &pid,
- DBUS_TYPE_INVALID);
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@ VCD request tts");
-
- if (dbus_error_is_set(&err)) {
- SLOG(LOG_ERROR, TAG_VCD, "[IN ERROR] vcd get tts audio format : get arguments error (%s)", err.message);
- dbus_error_free(&err);
- } else {
- SLOG(LOG_INFO, TAG_VCD, "[IN] vcd get tts audio format : pid(%d)", pid);
- ret = vcd_server_get_tts_audio_format(pid, &rate, &channel, &audio_type);
- }
-
- DBusMessage* reply;
- reply = dbus_message_new_method_return(msg);
-
- if (NULL != reply) {
- dbus_message_append_args(reply,
- DBUS_TYPE_INT32, &ret,
- DBUS_TYPE_INT32, &rate,
- DBUS_TYPE_INT32, &channel,
- DBUS_TYPE_INT32, &audio_type,
- DBUS_TYPE_INVALID);
-
- if (0 == ret) {
- SLOG(LOG_INFO, TAG_VCD, "[OUT SUCCESS] Result(%d)", ret);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Result(%d)", ret);
- }
-
- if (!dbus_connection_send(conn, reply, NULL)) {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Out Of Memory!");
- }
-
- dbus_connection_flush(conn);
- dbus_message_unref(reply);
- } else {
- SLOG(LOG_ERROR, TAG_VCD, "[OUT ERROR] Fail to create reply message!!");
- }
-
- SLOG(LOG_DEBUG, TAG_VCD, "@@@");
-
- return 0;
-}
+++ /dev/null
-/*
-* Copyright (c) 2011-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the License);
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an AS IS BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-
-#ifndef __VCD_DBUS_SERVER_h__
-#define __VCD_DBUS_SERVER_h__
-
-#include <dbus/dbus.h>
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-int vcd_dbus_server_hello(DBusConnection* conn, DBusMessage* msg);
-
-/*
-* Dbus Server functions for manager
-*/
-/* for TTS feedback */
-int vcd_dbus_server_mgr_start_feedback(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_mgr_stop_feedback(DBusConnection* conn, DBusMessage* msg);
-
-/* for Multi-assistant */
-int vcd_dbus_server_mgr_send_audio_streaming(DBusConnection* conn, DBusMessage* msg);
-
-
-/*
-* Dbus Server functions for client
-*/
-
-int vcd_dbus_server_initialize(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_finalize(DBusConnection* conn, DBusMessage* msg);
-
-#if 0
-int vcd_dbus_server_set_exclusive_command(DBusConnection* conn, DBusMessage* msg);
-#endif
-
-int vcd_dbus_server_set_command(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_unset_command(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_set_foreground(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_set_server_dialog(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_dialog(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_is_system_command_valid(DBusConnection* conn, DBusMessage* msg);
-
-#if 0
-int vcd_dbus_server_start_request(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_stop_request(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_cancel_request(DBusConnection* conn, DBusMessage* msg);
-#endif
-
-/*
-* Dbus Server functions for widget
-*/
-int vcd_dbus_server_widget_initialize(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_widget_finalize(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_widget_start_recording(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_widget_start(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_widget_stop(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_widget_cancel(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_widget_enable_asr_result(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_set_language(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_request_tts(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_cancel_tts(DBusConnection* conn, DBusMessage* msg);
-
-int vcd_dbus_server_get_tts_audio_format(DBusConnection* conn, DBusMessage* msg);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#endif /* __VCD_DBUS_SERVER_h__ */
#include "vcd_engine_agent.h"
#include "vcd_main.h"
#include "vcd_recorder.h"
-// #include "vcd_dbus.h"
#include "vcd_tidl.h"
#include "vce_internal.h"
#include "vcd_engine_agent.h"
#include "vcd_config.h"
#include "vcd_recorder.h"
-// #include "vcd_dbus.h"
#include "vcd_tidl.h"
#include "vce_internal.h"
#include <cynara-error.h>
#include <cynara-session.h>
#include <system_info.h>
-// #include "vcd_dbus.h"
#include "vcd_tidl.h"
#include "vcd_main.h"
#include "vcd_server.h"
return VCE_ERROR_OPERATION_FAILED;
}
- // if (0 != vcd_dbus_open_connection()) {
- // SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to open connection");
- // ecore_shutdown();
- // return VCE_ERROR_OPERATION_FAILED;
- // }
-
ret = vcd_initialize(callback);
if (0 != ret) {
SLOG(LOG_ERROR, TAG_VCD, "[ERROR] Fail to initialize");
+++ /dev/null
-<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
- "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
-<busconfig>
-
-<!-- root can own the service -->
- <policy context="default">
- <allow own_prefix="org.tizen.voice.vcclient"/>
- <allow send_destination="org.tizen.voice.vcclient"/>
-
- <allow own_prefix="org.tizen.voice.vcwidget"/>
- <allow send_destination="org.tizen.voice.vcwidget"/>
-
- <allow own_prefix="org.tizen.voice.vcmanager"/>
- <allow send_destination="org.tizen.voice.vcmanager"/>
-
- <allow own="org.tizen.voice.vcserver"/>
- <allow send_destination="org.tizen.voice.vcserver"/>
- </policy>
-</busconfig>