[Home]

Summary:ASTERISK-26862: app_queue: Queue stops calling members with local interface after forwarding in previous call
Reporter:Robert Mordec (veilen)Labels:
Date Opened:2017-03-13 10:38:09Date Closed:2017-03-22 08:34:36
Priority:MajorRegression?
Status:Closed/CompleteComponents:Applications/app_queue
Versions:13.14.0 Frequency of
Occurrence
Constant
Related
Issues:
is related toASTERISK-26400 app_queue: Queue member stops being called after AMI "Redirect" action for queues with wrapuptime
Environment:Attachments:
Description:I found a problem very similar to ASTERISK-26299, which was not fixed there.

It will occur if queue calls a member, using local channel, and device dialed is different from device observed for hints.

Let me modify the example from ASTERISK-26299.

I would have extensions.conf with:

{noformat}
[default]
exten => 100,1,NoOp()
same => n,Queue(foo)
same => n,Hangup()

[agents]
exten => alice,1,NoOp()
same => n,Wait(5)
same => n,Dial(SIP/carol)    ; Alice is forwarding all her calls to Carol
same => n,Hangup()
{noformat}

And the following queues.conf:

{noformat}
[foo]
strategy = rrmemory
timeout = 30
ringinuse = 0

member => Local/alice@agents,0,Alice,SIP/alice
{noformat}

Bob calls 100 and gets connected to Carol. When Bob calls 100 again no one is called and debug log shows:

{noformat}
DEBUG[6846][C-00000004]: app_queue.c:4447 ring_one: Trying 'Local/alice@agents' with metric 1000
DEBUG[6846][C-00000004]: app_queue.c:4232 can_ring_entry: Local/alice@agents has another call trying, can't receive call
{noformat}

In this situation, in order to remove SIP/alice from pending members, queue will wait until SIP/alice state is changed to "not in use", which will never happen. Only SIP/carol will experience state changes.
Comments:By: Asterisk Team (asteriskteam) 2017-03-13 10:38:09.946-0500

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

By: Robert Mordec (veilen) 2017-03-13 10:41:16.027-0500

Attached file *queue_local_fwd_13.14.patch* fixed the problem for me.

By: Joshua C. Colp (jcolp) 2017-03-14 05:43:03.481-0500

If you'd like to go through the contribution process linked on the initial comment we can review and see if this is the correct way to resolve this. If not then it's up to someone else to go through the process which can take some time.

By: Robert Mordec (veilen) 2017-03-22 03:13:44.445-0500

I removed the attached file with patch that was rejected during code review.

By: Friendly Automation (friendly-automation) 2017-03-22 08:34:37.939-0500

Change 5210 merged by Joshua Colp:
app_queue: Member stuck as pending after forwarding previous call from queue

[https://gerrit.asterisk.org/5210|https://gerrit.asterisk.org/5210]

By: Friendly Automation (friendly-automation) 2017-03-22 09:51:28.767-0500

Change 5211 merged by zuul:
app_queue: Member stuck as pending after forwarding previous call from queue

[https://gerrit.asterisk.org/5211|https://gerrit.asterisk.org/5211]

By: Friendly Automation (friendly-automation) 2017-03-22 09:51:32.654-0500

Change 5212 merged by zuul:
app_queue: Member stuck as pending after forwarding previous call from queue

[https://gerrit.asterisk.org/5212|https://gerrit.asterisk.org/5212]

By: Friendly Automation (friendly-automation) 2017-03-22 09:57:15.069-0500

Change 5248 merged by Joshua Colp:
app_queue: Member stuck as pending after forwarding previous call from queue

[https://gerrit.asterisk.org/5248|https://gerrit.asterisk.org/5248]