summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJason Parker <jparker@digium.com>2008-04-22 18:14:09 +0000
committerJason Parker <jparker@digium.com>2008-04-22 18:14:09 +0000
commit6f549bc3245e94b8e6d4ee4d5f2364761ba93980 (patch)
tree4e1a12d61306827572c13a568323345bd2b1e88b /apps
parent580cb27eecf0dad9198df826929d863cce126ba1 (diff)
Allow setqueuevar=yes (et al) to work, after changes to pbx_builtin_setvar()
(closes issue #12490) Reported by: bcnit Patches: 12490-queuevars-3.diff uploaded by qwell (license 4) Tested by: qwell git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114540 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_queue.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 9842111c8..ae43243e8 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -588,11 +588,11 @@ static void set_queue_variables(struct queue_ent *qe)
sl = 100 * ((float) qe->parent->callscompletedinsl / (float) qe->parent->callscompleted);
snprintf(interfacevar, sizeof(interfacevar),
- "QUEUENAME=%s|QUEUEMAX=%d|QUEUESTRATEGY=%s|QUEUECALLS=%d|QUEUEHOLDTIME=%d|QUEUECOMPLETED=%d|QUEUEABANDONED=%d|QUEUESRVLEVEL=%d|QUEUESRVLEVELPERF=%2.1f",
+ "QUEUENAME=%s,QUEUEMAX=%d,QUEUESTRATEGY=%s,QUEUECALLS=%d,QUEUEHOLDTIME=%d,QUEUECOMPLETED=%d,QUEUEABANDONED=%d,QUEUESRVLEVEL=%d,QUEUESRVLEVELPERF=%2.1f",
qe->parent->name, qe->parent->maxlen, int2strat(qe->parent->strategy), qe->parent->count, qe->parent->holdtime, qe->parent->callscompleted,
qe->parent->callsabandoned, qe->parent->servicelevel, sl);
- pbx_builtin_setvar(qe->chan, interfacevar);
+ pbx_builtin_setvar_multiple(qe->chan, interfacevar);
}
}
@@ -3395,17 +3395,17 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
/* if setinterfacevar is defined, make member variables available to the channel */
/* use pbx_builtin_setvar to set a load of variables with one call */
if (qe->parent->setinterfacevar) {
- snprintf(interfacevar, sizeof(interfacevar), "MEMBERINTERFACE=%s|MEMBERNAME=%s|MEMBERCALLS=%d|MEMBERLASTCALL=%ld|MEMBERPENALTY=%d|MEMBERDYNAMIC=%d|MEMBERREALTIME=%d",
+ 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(qe->chan, interfacevar);
+ pbx_builtin_setvar_multiple(qe->chan, interfacevar);
}
/* if setqueueentryvar is defined, make queue entry (i.e. the caller) variables available to the channel */
/* use pbx_builtin_setvar to set a load of variables with one call */
if (qe->parent->setqueueentryvar) {
- snprintf(interfacevar, sizeof(interfacevar), "QEHOLDTIME=%ld|QEORIGINALPOS=%d",
+ snprintf(interfacevar, sizeof(interfacevar), "QEHOLDTIME=%ld,QEORIGINALPOS=%d",
(long) time(NULL) - qe->start, qe->opos);
- pbx_builtin_setvar(qe->chan, interfacevar);
+ pbx_builtin_setvar_multiple(qe->chan, interfacevar);
}
/* try to set queue variables if configured to do so*/
@@ -4659,10 +4659,10 @@ static int queue_function_var(struct ast_channel *chan, const char *cmd, char *d
sl = 100 * ((float) q->callscompletedinsl / (float) q->callscompleted);
snprintf(interfacevar, sizeof(interfacevar),
- "QUEUEMAX=%d|QUEUESTRATEGY=%s|QUEUECALLS=%d|QUEUEHOLDTIME=%d|QUEUECOMPLETED=%d|QUEUEABANDONED=%d|QUEUESRVLEVEL=%d|QUEUESRVLEVELPERF=%2.1f",
+ "QUEUEMAX=%d,QUEUESTRATEGY=%s,QUEUECALLS=%d,QUEUEHOLDTIME=%d,QUEUECOMPLETED=%d,QUEUEABANDONED=%d,QUEUESRVLEVEL=%d,QUEUESRVLEVELPERF=%2.1f",
q->maxlen, int2strat(q->strategy), q->count, q->holdtime, q->callscompleted, q->callsabandoned, q->servicelevel, sl);
- pbx_builtin_setvar(chan, interfacevar);
+ pbx_builtin_setvar_multiple(chan, interfacevar);
}
ao2_unlock(q);