aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_queue.c
diff options
context:
space:
mode:
authormmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2009-04-13 14:17:56 +0000
committermmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2009-04-13 14:17:56 +0000
commit4809abc20d4f50485bf9aee030bcd94ff957b9d1 (patch)
tree5848dd3b3b1dd8b11ed083d9f7972cfc77a53b5a /apps/app_queue.c
parent89f9092063dac09e012bae1cbac3b7c56c283e88 (diff)
Set all queue variables on both the caller and member channels.
This allows for the variables to be accessed if a member macro is run. Thanks to Grigoriy Puzankin for bringing this up on the -dev list. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@188032 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_queue.c')
-rw-r--r--apps/app_queue.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 58b1c09ba..c62b4985a 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -3992,6 +3992,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
snprintf(interfacevar, sizeof(interfacevar), "MEMBERINTERFACE=%s,MEMBERNAME=%s,MEMBERCALLS=%d,MEMBERLASTCALL=%ld,MEMBERPENALTY=%d,MEMBERDYNAMIC=%d,MEMBERREALTIME=%d",
member->interface, member->membername, member->calls, (long)member->lastcall, member->penalty, member->dynamic, member->realtime);
pbx_builtin_setvar_multiple(qe->chan, interfacevar);
+ pbx_builtin_setvar_multiple(peer, interfacevar);
}
/* if setqueueentryvar is defined, make queue entry (i.e. the caller) variables available to the channel */
@@ -4000,10 +4001,12 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
snprintf(interfacevar, sizeof(interfacevar), "QEHOLDTIME=%ld,QEORIGINALPOS=%d",
(long) time(NULL) - qe->start, qe->opos);
pbx_builtin_setvar_multiple(qe->chan, interfacevar);
+ pbx_builtin_setvar_multiple(peer, interfacevar);
}
/* try to set queue variables if configured to do so*/
set_queue_variables(qe->parent, qe->chan);
+ set_queue_variables(qe->parent, peer);
ao2_unlock(qe->parent);
ast_channel_lock(qe->chan);