Fix local ringbacktone play issue 16/104516/2
authorWootak Jung <wootak.jung@samsung.com>
Tue, 13 Dec 2016 11:38:54 +0000 (20:38 +0900)
committerWootak Jung <wootak.jung@samsung.com>
Tue, 13 Dec 2016 11:47:02 +0000 (20:47 +0900)
Change-Id: I590d70f8692bf00c83a0bee05bf88eaefbdf8063

packaging/call-manager.spec
service/src/callmgr-core.c

index 94bb419e88115bff0ea3403623ab24e7e3ad6713..7130d79e3bce2ef74ca1724b30500fa286dde284 100644 (file)
@@ -1,6 +1,6 @@
 %define major 0
 %define minor 1
-%define patchlevel 91
+%define patchlevel 92
 %define ext_feature 0
 
 Name:           call-manager
index be9558d2a72a630e317bf9eb63f18ec17a5d1425..579079c512fd8c29ff6b026c6a131aba7bff95cd 100644 (file)
@@ -1147,6 +1147,13 @@ static void __callmgr_core_process_telephony_events(cm_telephony_event_type_e ev
                        err("_callmgr_audio_create_call_sound_session() failed");
                }
 
+#if 0
+               /*
+                * In case of TM1 device, audio routing logic should be handled
+                * by multimedia framework not telephony to support local ringback tone play
+                * during call establishment. In this case, "START" signal will be invoked from multimedia.
+                * so, audio routing logic will be triggered not here.
+                */
                _callmgr_audio_get_audio_route(core_data->audio_handle, &route);
                if (route == CALLMGR_AUDIO_ROUTE_NONE_E) {
                        _callmgr_audio_is_sound_device_available(core_data->audio_handle, CALLMGR_AUDIO_DEVICE_BT_E, &is_bt_connected);
@@ -1155,6 +1162,7 @@ static void __callmgr_core_process_telephony_events(cm_telephony_event_type_e ev
                        else
                                __callmgr_core_set_default_audio_route(core_data);
                }
+#endif
 
                if (core_data->call_status != CALL_MANAGER_CALL_STATUS_OFFHOOK_E) {
                        __callmgr_core_set_call_status(core_data, CALL_MANAGER_CALL_STATUS_OFFHOOK_E, cm_call_type, NULL);
@@ -1333,6 +1341,8 @@ static void __callmgr_core_process_telephony_events(cm_telephony_event_type_e ev
 
                if (ringbacktone_info == 1) {
                        _callmgr_ringer_play_local_ringback_tone(core_data->ringer_handle);
+               } else if (ringbacktone_info == 0) {
+                       _callmgr_ringer_stop_local_ringback_tone(core_data->ringer_handle);
                }
        }
                break;