]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-9955 [mod_kazoo] set profile var when setting channel var
authorlazedo <luis.azedo@factorlusitano.com>
Wed, 18 Jan 2017 04:56:52 +0000 (04:56 +0000)
committerlazedo <luis.azedo@factorlusitano.com>
Wed, 18 Jan 2017 04:56:52 +0000 (04:56 +0000)
src/mod/event_handlers/mod_kazoo/kazoo_commands.c
src/mod/event_handlers/mod_kazoo/kazoo_dptools.c

index 736d14fc1802665ba54f05113c5d739c7a0eaa83..2494bb9495d3bd9287c7cefd5b811124a0f30207 100644 (file)
@@ -121,6 +121,16 @@ SWITCH_STANDARD_API(uuid_setvar_multi_function) {
                                        stream->write_function(stream, "-ERR No variable specified\n");
                                } else {
                                        switch_channel_set_variable(channel, var_name, var_value);
+                                       if (!strcasecmp(var_name, "effective_callee_id_number")) {
+                                               switch_channel_set_profile_var(channel, "callee_id_number", var_value);
+                                       } else if (!strcasecmp(var_name, "effective_callee_id_name")) {
+                                               switch_channel_set_profile_var(channel, "callee_id_name", var_value);
+                                       } else if (!strcasecmp(var_name, "effective_caller_id_number")) {
+                                               switch_channel_set_profile_var(channel, "caller_id_number", var_value);
+                                       } else if (!strcasecmp(var_name, "effective_caller_id_name")) {
+                                               switch_channel_set_profile_var(channel, "caller_id_name", var_value);
+                                       };
+
                                        y++;
                                }
                        }
index 352edaae820eac3510a9deb57d49da3247b075c5..0ea4cf6f2c9aee92529d32038d9cceabf6e4f792 100644 (file)
@@ -82,6 +82,17 @@ static void base_set (switch_core_session_t *session, const char *data, switch_s
                                                  expanded ? expanded : "UNDEF");
                switch_channel_add_variable_var_check(channel, var, expanded, SWITCH_FALSE, stack);
 
+               if (!strcasecmp(var, "effective_callee_id_number")) {
+                       switch_channel_set_profile_var(channel, "callee_id_number", expanded);
+               } else if (!strcasecmp(var, "effective_callee_id_name")) {
+                       switch_channel_set_profile_var(channel, "callee_id_name", expanded);
+               } else if (!strcasecmp(var, "effective_caller_id_number")) {
+                       switch_channel_set_profile_var(channel, "caller_id_number", expanded);
+               } else if (!strcasecmp(var, "effective_caller_id_name")) {
+                       switch_channel_set_profile_var(channel, "caller_id_name", expanded);
+               };
+
+
                if (expanded && expanded != val) {
                        switch_safe_free(expanded);
                }