Remove unused dependency
[platform/core/uifw/multi-assistant-service.git] / inc / service_common.h
1 #ifndef __SERVICE_COMMON_H__
2 #define __SERVICE_COMMON_H__
3
4 #include <glib.h>
5 #include <dlog/dlog.h>
6 #include <multi_assistant_common.h>
7 #include <multi_assistant_service.h>
8
9 #ifdef  LOG_TAG
10 #undef  LOG_TAG
11 #endif
12 #define LOG_TAG "multi-assistant"
13
14 #ifdef TEST_TYPE
15 #define conditional_public public
16 #else
17 #define conditional_public private
18 #endif
19
20 #define MAS_SECURE_LOG_(id, prio, tag, fmt, arg...) \
21                 ({ do { \
22                                 __dlog_print(id, prio, tag, "%s: %s(%d) > [SECURE_LOG] " fmt, __MODULE__, __func__, __LINE__, ##arg); \
23                 } while (0); })
24
25 #define MAS_LOG_(prio, tag, fmt, arg...) \
26                 ({ do { \
27                                 dlog_print(prio, tag, "%s: %s(%d) > " fmt, __MODULE__, __func__, __LINE__, ##arg); \
28                 } while (0); })
29
30 #define MAS_LOGD(fmt, args...) MAS_LOG_(DLOG_DEBUG, LOG_TAG, fmt, ##args)
31 #define MAS_LOGI(fmt, args...) MAS_LOG_(DLOG_INFO, LOG_TAG, fmt, ##args)
32 #define MAS_LOGW(fmt, args...) MAS_LOG_(DLOG_WARN, LOG_TAG, fmt, ##args)
33 #define MAS_LOGE(fmt, args...) MAS_LOG_(DLOG_ERROR, LOG_TAG, fmt, ##args)
34
35 #define MAS_SLOGD(fmt, args...) MAS_SECURE_LOG_(DLOG_DEBUG, LOG_TAG, fmt, ##args)
36 #define MAS_SLOGI(fmt, args...) MAS_SECURE_LOG_(DLOG_INFO, LOG_TAG, fmt, ##args)
37 #define MAS_SLOGW(fmt, args...) MAS_SECURE_LOG_(DLOG_WARN, LOG_TAG, fmt, ##args)
38 #define MAS_SLOGE(fmt, args...) MAS_SECURE_LOG_(DLOG_ERROR, LOG_TAG, fmt, ##args)
39
40
41 /**************************************************************************************
42  *** Definitions for DBus
43  *************************************************************************************/
44 #define MA_CLIENT_SERVICE_NAME                          "org.tizen.multiassistant.maclient"
45 #define MA_CLIENT_SERVICE_OBJECT_PATH           "/org/tizen/multiassistant/maclient"
46 #define MA_CLIENT_SERVICE_INTERFACE                     "org.tizen.multiassistant.maclient"
47
48 #define MA_UI_CLIENT_SERVICE_NAME                       "org.tizen.multiassistant.mauiclient"
49 #define MA_UI_CLIENT_SERVICE_OBJECT_PATH        "/org/tizen/multiassistant/mauiclient"
50 #define MA_UI_CLIENT_SERVICE_INTERFACE          "org.tizen.multiassistant.mauiclient"
51
52 #define MA_SERVER_SERVICE_NAME                          "org.tizen.multiassistant.maserver"
53 #define MA_SERVER_SERVICE_OBJECT_PATH           "/org/tizen/multiassistant/maserver"
54 #define MA_SERVER_SERVICE_INTERFACE                     "org.tizen.multiassistant.maserver"
55
56 /**************************************************************************************
57  *** Definitions for DBus methods
58  *************************************************************************************/
59 #define MA_METHOD_HELLO                                                         "ma_method_hello"
60
61 #define MA_METHOD_INITIALIZE                                            "ma_method_initialize"
62 #define MA_METHOD_DEINITIALIZE                                          "ma_method_deinitialize"
63 #define MA_METHOD_GET_RECORDING_AUDIO_FORMAT            "ma_method_get_recording_audio_format"
64 #define MA_METHOD_GET_RECORDING_AUDIO_SOURCE_TYPE       "ma_method_get_recording_audio_source_type"
65 #define MA_METHOD_SEND_ASR_RESULT                                       "ma_method_send_asr_result"
66 #define MA_METHOD_SEND_RESULT                                           "ma_method_send_result"
67 #define MA_METHOD_SEND_RECOGNITION_RESULT                       "ma_method_send_recognition_result"
68 #define MA_METHOD_START_STREAMING_AUDIO_DATA            "ma_method_start_streaming_audio_data"
69 #define MA_METHOD_STOP_STREAMING_AUDIO_DATA                     "ma_method_stop_streaming_audio_data"
70 #define MA_METHOD_UPDATE_VOICE_FEEDBACK_STATE           "ma_method_update_voice_feedback_state"
71 #define MA_METHOD_SEND_ASSISTANT_SPECIFIC_COMMAND       "ma_method_send_assistant_specific_command"
72 #define MA_METHOD_SET_BACKGROUND_VOLUME                         "ma_method_set_background_volume"
73 #define MA_METHOD_SET_PREPROCESSING_ALLOW_MODE          "ma_method_set_preprocessing_allow_mode"
74 #define MA_METHOD_SEND_PREPROCESSING_RESULT                     "ma_method_send_preprocessing_result"
75 #define MA_METHOD_SET_WAKE_WORD_AUDIO_REQUIRE_FLAG      "ma_method_set_wake_word_audio_require_flag"
76 #define MA_METHOD_SET_ASSISTANT_WAKEUP_LANGUAGE         "ma_method_set_assistant_wakeup_language"
77 #define MA_METHOD_ADD_WAKE_WORD                                         "ma_method_add_wake_word"
78 #define MA_METHOD_REMOVE_WAKE_WORD                                      "ma_method_remove_wake_word"
79 #define MA_METHOD_ERROR                                                         "ma_method_error"
80
81 #define MA_UI_METHOD_INITIALIZE                                         "ma_ui_method_initialize"
82 #define MA_UI_METHOD_DEINITIALIZE                                       "ma_ui_method_deinitialize"
83 #define MA_UI_METHOD_CHANGE_ASSISTANT                           "ma_ui_method_change_assistant"
84
85 #define MAS_METHOD_HELLO                                                        "mas_method_hello"
86 #define MAS_METHOD_ACTIVE_STATE_CHANGE                          "mas_method_active_state_change"
87 #define MAS_METHOD_STREAMING_AUDIO_DATA                         "mas_method_streaming_audio_data"
88 #define MAS_METHOD_WAKEUP_ENGINE_COMMAND                        "mas_method_wakeup_engine_command"
89 #define MAS_METHOD_ERROR                                                        "mas_method_error"
90 #define MAS_METHOD_SEND_PREPROCESSING_INFORMATION       "mas_method_send_preprocessing_information"
91 #define MAS_METHOD_AUDIO_STREAMING_DATA_SECTION         "mas_method_audio_streaming_data_section"
92 #define MAS_METHOD_SEND_PREPROCESSING_RESULT            "mas_method_send_preprocessing_result"
93 #define MAS_METHOD_SEND_WAKEUP_ENGINE_COMMAND           "mas_method_send_wakeup_engine_command"
94 #define MAS_METHOD_SERVICE_STATE_CHANGE                         "mas_method_service_state_change"
95 #define MAS_METHOD_VOICE_KEY_STATUS_CHANGE                      "mas_method_voice_key_status_change"
96
97 #define MAS_UI_METHOD_SEND_ASR_RESULT                           "mas_ui_method_send_asr_result"
98 #define MAS_UI_METHOD_SEND_RESULT                                       "mas_ui_method_send_result"
99 #define MAS_UI_METHOD_CHANGE_ASSISTANT                          "mas_ui_method_change_assistant"
100 #define MAS_UI_METHOD_ERROR                                                     "mas_ui_method_error"
101 #define MAS_UI_METHOD_SEND_RECOGNITION_RESULT           "mas_ui_method_send_recognition_result"
102 #define MAS_UI_METHOD_ENABLE_COMMON_UI                          "mas_ui_method_enable_common_ui"
103
104 typedef void (*wakeup_service_wakeup_event_cb)(mas_wakeup_event_info wakeup_info, void* user_data);
105
106 typedef void (*wakeup_service_speech_streaming_cb)(mas_speech_streaming_event_e event, void* buffer, int len, void *user_data);
107
108 typedef void (*wakeup_service_speech_status_cb)(mas_speech_status_e status, void *user_data);
109
110 typedef void (*wakeup_service_setting_changed_cb)(void *user_data);
111
112 typedef void (*wakeup_service_error_cb)(int error, const char* err_msg, void* user_data);
113
114 typedef void (*wakeup_service_streaming_section_changed_cb)(ma_audio_streaming_data_section_e section, void* user_data);
115
116 typedef void (*wakeup_service_wakeup_engine_command_cb)(mas_wakeup_engine_command_target_e target, const char* assistant_name, const char* command, void* user_data);
117
118 typedef void (*wakeup_service_wakeup_service_state_changed_cb)(ma_service_state_e state, void* user_data);
119
120 typedef void (*wakeup_service_voice_key_status_changed_cb)(ma_voice_key_status_e status, void* user_data);
121
122 #define MAX_WAKEUP_WORDS_NUM 255
123 #define MAX_WAKEUP_WORD_LEN 32
124 #define MAX_SUPPORTED_LANGUAGES_NUM 255
125 #define MAX_SUPPORTED_LANGUAGE_LEN 16
126 #define MAX_WAKEUP_ENGINES_NUM 4
127
128 #define MAX_APPID_LEN 255
129
130 typedef enum {
131         VOICE_KEY_SUPPORT_MODE_NONE,
132         VOICE_KEY_SUPPORT_MODE_PUSH_TO_TALK,
133         VOICE_KEY_SUPPORT_MODE_TAP_TO_TALK,
134         VOICE_KEY_SUPPORT_MODE_ALL,
135 } VOICE_KEY_SUPPORT_MODE;
136
137 #endif /* __SERVICE_COMMON_H__ */