Add getting mt_forwarded api 29/128929/3
authorWootak Jung <wootak.jung@samsung.com>
Fri, 12 May 2017 05:52:21 +0000 (14:52 +0900)
committerWootak Jung <wootak.jung@samsung.com>
Fri, 12 May 2017 06:12:32 +0000 (15:12 +0900)
Change-Id: I1b45f1489f2df3687e5a6e51258b4c7f346fe238

include/call-manager-common.h
include/call-manager-extension.h
packaging/libcall-manager.spec
src/call-manager.c

index 8ca4418b82d9a852993bf924bdb14f9977c1bb48..d5eeddf49f738f5fdd8b08eb4b049dde2c1c2ea0 100644 (file)
@@ -168,6 +168,7 @@ struct __cm_call_data {
        int is_upgrade_downgrade_enable;        /*< Whether call upgrade/downgrade is possible or not for ims call */
        int is_remote_on_hold;                  /* Whether remote party has put on HOLD or not */
        int is_added_to_conf;           /* Whether the call is in conf-state/participant-in-conf for ims call */
+       bool mt_forwarded; /**< If the incoming call is a forwarded call, then true else false */
 };
 
 struct __cm_call_event_data {
index 96e04a249806bb25b333f8f4df80451130569dbc..0cbe4a2b33fb08d2865bf118df7b5c47142efb1d 100644 (file)
@@ -452,6 +452,23 @@ int cm_call_data_get_call_domain(cm_call_data_h call_data, cm_call_domain_e *cal
  */
 int cm_call_data_get_name_mode(cm_call_data_h call_data, cm_call_name_mode_e *name_mode);
 
+/**
+ * @brief Gets whether the incoming call is a forwarded call or not.
+ *
+ * @since_tizen TBD
+ * @privlevel platform
+ * @privilege %http://developer.samsung.com/tizen/privilege/call.admin
+ *
+ * @param[in] call_data  The Call data
+ * @param[out] forwarded If the incoming call is a forwarded call, then true else false
+ *
+ * @return 0 on success, otherwise an error value
+ *
+ * @retval #CM_ERROR_NONE              Successful
+ * @retval #CM_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CM_ERROR_NOT_SUPPORTED     Not supported
+ */
+int cm_call_data_get_mt_forwarded(cm_call_data_h call_data, bool *mt_forwarded);
 
 /**
  * @brief To get the Sim slot type.
index bc323ec30ae3de96157000f1b07442501c54fec4..978b42cc468c162529ba1b564b001d1c0e8eda84 100644 (file)
@@ -1,6 +1,6 @@
 %define major 0
 %define minor 0
-%define patchlevel 15
+%define patchlevel 16
 %define ext_feature 0
 
 Name:           libcall-manager
index f3e380e5236416a4667407c0e152a35723da548c..2f2a7c8d7b006b6fa0c4e620fd11d7825d728267 100644 (file)
@@ -113,34 +113,35 @@ static int __cm_fetch_call_data(GVariantIter *iter, cm_call_data_h *call_data)
                        tmp_call_data->is_remote_on_hold = g_variant_get_int32(value);
                } else if (!g_strcmp0(key, "is_wifi_calling")) {
                        tmp_call_data->is_wifi_calling = g_variant_get_int32(value);
+               } else if (!g_strcmp0(key, "mt_forwarded")) {
+                       tmp_call_data->mt_forwarded = g_variant_get_boolean(value);
                }
        }
 
-       dbg("\n\n <<<<<<<<< CallData Info in Library START >>>>>>>>>> \n");
-       dbg("call_id                            : %d, ", tmp_call_data->call_id);
-       dbg("call_direction             : %d, ", tmp_call_data->call_direction);
-       if (tmp_call_data->call_number) {
-               dbg("call_number                        : %s, ", tmp_call_data->call_number);
-       }
-       if (tmp_call_data->calling_name) {
-               dbg("calling_name                       : %s, ", tmp_call_data->calling_name);
-       }
-       dbg("call_type                          : %d, ", tmp_call_data->call_type);
-       dbg("call_domain                                : %d, ", tmp_call_data->call_domain);
-       dbg("session_id                         : %d, ", tmp_call_data->session_id);
-       dbg("call_state                         : %d, ", tmp_call_data->call_state);
-       dbg("member count                       : %d, ", tmp_call_data->member_count);
-       dbg("is_ecc                             : %d, ", tmp_call_data->is_ecc);
-       dbg("is_voicemail_number                : %d, ", tmp_call_data->is_voicemail_number);
-       dbg("person_id                          : %d", tmp_call_data->person_id);
-       dbg("start time                         : %ld", tmp_call_data->start_time);
-       dbg("name mode                          : %d", tmp_call_data->name_mode);
-       dbg("is_hd_enable                               : %d", tmp_call_data->is_hd_enable);
-       dbg("is_upgrade_downgrade_enable        : %d", tmp_call_data->is_upgrade_downgrade_enable);
-       dbg("is_added_to_conf   : %d", tmp_call_data->is_added_to_conf);
-       dbg("is_remote_on_hold  : %d", tmp_call_data->is_remote_on_hold);
-       dbg("is_wifi_calling                            : %d", tmp_call_data->is_wifi_calling);
-       dbg("\n\n <<<<<<<<< CallData Info in Library END >>>>>>>>>> \n");
+       dbg("<<<<<<<<< CallData Info in Library START >>>>>>>>>>");
+       dbg("call_id                    : %d", tmp_call_data->call_id);
+       dbg("call_direction             : %d", tmp_call_data->call_direction);
+       if (tmp_call_data->call_number)
+               dbg("call_number                : %s", tmp_call_data->call_number);
+       if (tmp_call_data->calling_name)
+               dbg("calling_name               : %s", tmp_call_data->calling_name);
+       dbg("call_type                  : %d", tmp_call_data->call_type);
+       dbg("call_domain                : %d", tmp_call_data->call_domain);
+       dbg("session_id                 : %d", tmp_call_data->session_id);
+       dbg("call_state                 : %d", tmp_call_data->call_state);
+       dbg("member count               : %d", tmp_call_data->member_count);
+       dbg("is_ecc                     : %d", tmp_call_data->is_ecc);
+       dbg("is_voicemail_number        : %d", tmp_call_data->is_voicemail_number);
+       dbg("person_id                  : %d", tmp_call_data->person_id);
+       dbg("start time                 : %ld", tmp_call_data->start_time);
+       dbg("name mode                  : %d", tmp_call_data->name_mode);
+       dbg("is_hd_enable               : %d", tmp_call_data->is_hd_enable);
+       dbg("is_upgrade_downgrade_enable: %d", tmp_call_data->is_upgrade_downgrade_enable);
+       dbg("is_added_to_conf           : %d", tmp_call_data->is_added_to_conf);
+       dbg("is_remote_on_hold          : %d", tmp_call_data->is_remote_on_hold);
+       dbg("is_wifi_calling            : %d", tmp_call_data->is_wifi_calling);
+       dbg("mt_forwarded               : %d", tmp_call_data->mt_forwarded);
+       dbg("<<<<<<<<< CallData Info in Library END >>>>>>>>>>");
 
        *call_data = tmp_call_data;
 
@@ -1915,6 +1916,15 @@ EXPORT_API int cm_call_data_get_name_mode(cm_call_data_h call_data, cm_call_name
        return CM_ERROR_NONE;
 }
 
+EXPORT_API int cm_call_data_get_mt_forwarded(cm_call_data_h call_data, bool *mt_forwarded)
+{
+       CM_RETURN_VAL_IF_FAIL(call_data, CM_ERROR_INVALID_PARAMETER);
+       CM_RETURN_VAL_IF_FAIL(mt_forwarded, CM_ERROR_INVALID_PARAMETER);
+
+       *mt_forwarded = call_data->mt_forwarded;
+       return CM_ERROR_NONE;
+}
+
 EXPORT_API int cm_call_data_get_session_id(cm_call_data_h call_data, int *session_id)
 {
        CM_RETURN_VAL_IF_FAIL(call_data, CM_ERROR_INVALID_PARAMETER);