]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-6816 [mod_sofia] Set empty callee id if `_undef_`
authorStephane Alnet <stephane@shimaore.net>
Fri, 2 Feb 2018 09:19:03 +0000 (10:19 +0100)
committerStephane Alnet <stephane@shimaore.net>
Fri, 2 Feb 2018 09:19:03 +0000 (10:19 +0100)
In some scenarios (e.g. MetaSwitch interop) the `display` field of callee-id should be left empty instead of being overwritten with the number.
As is done in other places, we allow for `_undef_` to mean "leave the field empty".

src/mod/endpoints/mod_sofia/sofia.c

index fc8a8acfa780319fa3fadc2f570e18f814786b87..54f3e6802a61812c873717b280f5e6960679d3db 100644 (file)
@@ -1173,6 +1173,10 @@ void sofia_send_callee_id(switch_core_session_t *session, const char *name, cons
                if (zstr(number)) {
                        name = number = "UNKNOWN";
                }
+
+               if (!zstr(name) && !strcmp(name,"_undef_")) {
+                       name = "";
+               }
        } else {
                if (zstr(name)) {
                        name = caller_profile->callee_id_name;
@@ -1189,6 +1193,10 @@ void sofia_send_callee_id(switch_core_session_t *session, const char *name, cons
                if (zstr(number)) {
                        number = caller_profile->destination_number;
                }
+
+               if (!zstr(name) && !strcmp(name,"_undef_")) {
+                       name = "";
+               }
        }
 
        if ((uuid = switch_channel_get_partner_uuid(channel)) && (session_b = switch_core_session_locate(uuid))) {