[asterisk-users] Problems with new logic being 'n' option to Queue in 1.4.9

James FitzGibbon james.fitzgibbon at gmail.com
Fri Jul 27 07:07:17 CDT 2007


On 7/26/07, James FitzGibbon <james.fitzgibbon at gmail.com> wrote:
>
>
> Is it possible for qe.parent->membercount to be set to zero in a queue
> where all agents but one are on the phone and that one remaining agent lets
> their phone ring without answering it?



I added some debug code to app_queue and ran a few tests.  The change in
app_queue in 1.4.9 breaks queues configured as "joinempty=yes".

If there are no members in the queue, the membercount will be 0.  A queue
configured as joinempty=yes should still allow calls to be enqueued in this
case.  Because go_on is zero and membercount is zero and the comparison is
"go_on >= qe.parent->membercount", any calls that attempt to join a queue
without any members will immediately get kicked back to the dialplan.

    -- Executing [s at macro-enqueue:16] Queue("Zap/23-1", "XXXXX|tW") in new
stack
    -- Started music on hold, class 'default', on Zap/23-1
[Jul 27 07:49:27] WARNING[31209]: app_queue.c:3458 queue_exec: about to
compare XXXXX's go_on (0) >= qe.parent->membercount (0)
    -- Exiting on time-out cycle

Though I can't seem to lock onto the circumstances, I also oberved this
breaking queues configured as "leavewhenempty=no".  I can't seem to
replicate it using a single queue and a single member (on pause or on a call
or letting their phone ring through), but as I described in my first
message, I did see the "Exiting on time-out cycle" message last night when I
had 4 people in the queue, all on a call, and one person didn't pick up
their phone.

Still, the joinwhenempty breakage should be enough to prompt a backout or
rapid fix for this.  Until recently, my dialplan didn't gracefully handle a
return from Queue() because all my queues were configured as "joinempty=yes"
and "leavewhenempty=no".  Recently I added logic to kick users back to the
IVR if Queue returns for any reason, but had I not made that change,
1.4.9would have resulted in my callers getting unceremoniously hung up
on if they
tried to join a queue without agents.

I'll go open a bug report.

-- 
j.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20070727/fa33bc5b/attachment.htm 


More information about the asterisk-users mailing list