Queue Agents Invalid when there is a single agent


(Itzik) #1

Hey everyone,

Our client was complaining that random queue calls end up to the failover destination without ringing in the queue. After looking into this, it turns out, that it appears to happen when there is a single agent in the queue and they are already on a queue call, and there’s another incoming call. While the second call is ringing the agent is being marked as invalid resulting the third call to not be able to join the queue since there are no valid members.

I am able to reproduce this using Asterisk 16.15.1 and FreePBX 14.0.16.4, Queues 14.0.2.34

The queue without any calls:

yplab*CLI> queue show 3233
3233 has 0 calls (max unlimited) in 'rrmemory' strategy (0s holdtime, 0s talktime), W:0, C:0, A:0, SL:0.0%, SL2:0.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (Not in use) has taken no calls yet
   No Callers

First call ringing:

3233 has 1 calls (max unlimited) in 'rrmemory' strategy (5s holdtime, 24s talktime), W:0, C:2, A:1, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (Ringing) has taken 2 calls (last was 88 secs ago)
   Callers:
      1. Local/3233@from-internal-000000fa;2 (wait: 0:06, prio: 0)

The call is answered:

yplab*CLI> queue show 3233
3233 has 0 calls (max unlimited) in 'rrmemory' strategy (6s holdtime, 24s talktime), W:0, C:2, A:1, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (in call) (In use) has taken 2 calls (last was 104 secs ago)
   No Callers

Second call ringing: Agent becomes invalid!

3233 has 1 calls (max unlimited) in 'rrmemory' strategy (6s holdtime, 24s talktime), W:0, C:2, A:1, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (in call) (Invalid) has taken 2 calls (last was 127 secs ago)
   Callers:
      1. Local/3233@from-internal-000000ff;2 (wait: 0:04, prio: 0)

Resulting the third call not be able to join the queue, I see in the logs:

app_queue.c:8456 queue_exec: Unable to join queue '3233'

It happens with both, chan_sip and chan_pjsip extensions
Relevant queue settings:

Call Confirm = Yes
Restrict Dynamic Agents = No
Agent Restrictions = Call as Dialed
Ring Strategy = rrmemory
Autofill = No
Skip Busy Agents = No
Join Empty = No
Leave Empty = Yes

I am not even sure if that would be an Asterisk or FreePBX issue.

Please let us know if you need any further information.

Thank you


(Joshua C. Colp) #2

This was filed as an issue in the Asterisk issue tracker[1] and a community member submitted a fix for it. The fix is in 16.17.0 and 18.3.0

[1] https://issues.asterisk.org/jira/browse/ASTERISK-28369


(Lorne Gaetz) #3

Neither of those versions have been published for the Distro yet but we have a ticket on it to get 'er done.


(Itzik) #4

That’s good news! Thanks to both of you.

@lgaetz I tried doing a quick search on JIRA but I was unable to find that ticket. Perhaps it is an internal one? If it is public and you don’t mind posting the ticket here, I’d appreciate it. I want to follow it so I can update the PBX as soon as it is out.

Thank again


(Lorne Gaetz) #5

Ticket is internal. I will update this thread when it’s done.


(Franck Danard) #6

Ongoing.


(Lorne Gaetz) #7

@PitzKey Asterisk versions 16.17.0 and 18.3.0 are in the sng7-testing repo now.

# yum list asterisk18
Loaded plugins: fastestmirror, versionlock
Loading mirror speeds from cached hostfile
Available Packages
asterisk18.x86_64                           18.3.0-1.sng7                            sng7-testing

# yum list asterisk16
Loaded plugins: fastestmirror, versionlock
Loading mirror speeds from cached hostfile
Installed Packages
asterisk16.x86_64                          16.17.0-1.sng7                           @sng7-testing

Fax Pro SipStation Outgoing Failing
(Defcomllc) #8

Where/ how do I get the sng7-testing repo


(Lorne Gaetz) #9
yum install sangoma-devel

(Defcomllc) #10

So I already did that…Then yum list asterisk16 I see the test repo… (See below) but whats the command to install it?
Imgur


(Itzik) #11

Ehh… Did you try yum update?


(Lorne Gaetz) #12

On the FreePBX Distro, if you’re already running the major version of Asterisk that you want, it’s just a matter of doing system updates from the GUI or running yum update as @PitzKey said. Alternatively, you can ALWAYS run asterisk-version-switch which will install (or reinstall) the latest version of whatever major version you select.


(Itzik) #13

Installed and tested:

No calls:

yplab*CLI> queue show 3233
3233 has 0 calls (max unlimited) in 'rrmemory' strategy (7s holdtime, 41s talktime), W:0, C:1, A:0, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (Not in use) has taken 1 calls (last was 6 secs ago)
   No Callers

First call ringing:

yplab*CLI> queue show 3233
3233 has 1 calls (max unlimited) in 'rrmemory' strategy (7s holdtime, 41s talktime), W:0, C:1, A:0, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (Ringing) has taken 1 calls (last was 25 secs ago)
   Callers:
      1. Local/3233@from-internal-0000000a;2 (wait: 0:05, prio: 0)

First call answered:

yplab*CLI> queue show 3233
3233 has 0 calls (max unlimited) in 'rrmemory' strategy (8s holdtime, 41s talktime), W:0, C:1, A:0, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (in call) (In use) has taken 1 calls (last was 48 secs ago)
   No Callers

Second call ringing (while still on the phone with the first caller):

yplab*CLI> queue show 3233
3233 has 1 calls (max unlimited) in 'rrmemory' strategy (8s holdtime, 41s talktime), W:0, C:1, A:0, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (in call) (Ring+Inuse) has taken 1 calls (last was 71 secs ago)
   Callers:
      1. Local/3233@from-internal-0000000f;2 (wait: 0:03, prio: 0)

Note: the Ring+Inuse status.

Second call answered (first caller on hold):

3233 has 0 calls (max unlimited) in 'rrmemory' strategy (8s holdtime, 41s talktime), W:0, C:1, A:0, SL:100.0%, SL2:100.0% within 60s
   Members:
      Desk1 (Local/64066@from-queue/n from hint:64066@ext-local) (ringinuse enabled) (dynamic) (in call) (In use) has taken 1 calls (last was 87 secs ago)
   No Callers

I tested this with a third call, works as expected!!

Now we just have to wait until this is pushed to the stable repo.

Thanks again Josh and Lorne!


(Defcomllc) #14

thank you @PitzKey and @lgaetz Im a Windows guy, linux is new to me but I try to do my own research as much I can before posting here. Not much on Testing repos.

So running yum install sangoma-devel allows yum update to see and install the test repo it appears. I ran yum update and even though the webgui under SysAdmin says Im still on 16.16.2… When I run Asterisk-Version-Switch it says Current Verision 16.17.0… so it appears Im on Asterisk 16.17… Ill test Fax Pro now and see if outgoing is indeed fixed.


(Defcomllc) #15

And I can confirm the T.38 outgoing faxing issue is fixed with Asterisk 16.17. Thanks guys