diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index 1c55b65702..e2dc63fa6b 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -500,11 +500,15 @@ void sofia_update_callee_id(switch_core_session_t *session, sofia_profile_t *pro caller_profile = switch_channel_get_caller_profile(channel); - caller_profile->callee_id_name = switch_sanitize_number(switch_core_strdup(caller_profile->pool, name)); - caller_profile->callee_id_number = switch_sanitize_number(switch_core_strdup(caller_profile->pool, number)); + if (!strcmp(caller_profile->callee_id_name, name) && !strcmp(caller_profile->callee_id_number, number)) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG1, "Same Callee ID \"%s\" <%s>\n", name, number); + send = 0; + } else { + caller_profile->callee_id_name = switch_sanitize_number(switch_core_strdup(caller_profile->pool, name)); + caller_profile->callee_id_number = switch_sanitize_number(switch_core_strdup(caller_profile->pool, number)); + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Update Callee ID to \"%s\" <%s>\n", name, number); + } - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Update Callee ID to \"%s\" <%s>\n", name, number); - if (send) { sofia_send_callee_id(session, NULL, NULL); }