Queue does not work on production server :-(

Hello all !

I have a nasty problem : when I setup a queue with static agents (9 agents) suddently (sometimes after minutes, sometimes a litle later) calls are not put through anymore. Means that callers are waiting in the queue, agents have no calls and the callers are not attributed to the agents (or only after a very long time).

Do you have any idea what I could do to get this fixed ?

Thanks a lot for any help, this would greatly help me (it’s on a production server … during christmas :frowning: !).

Regards,
Fabianus

I use the elastix distro, with FreePBX 2.4.1.2 and Asterisk 1.4.22

Hello fskrotzki,

excuse-me for bothering you with this problem again, but I still wasn’t able to fix it. Do you have any idea ?

Regards,
Fabianus

When this happens please check the status of the agents phone (I’m assuming sip phones) to verify that they are still registered with the system. If not what you are describing is exactly what will happen as the system does not know how to contact the phone to make it ring until the phone times out and re-registers.

hi fskrotzki,

how could I check the status of the agent’s phone ? We yous x-lite and it always shows up “registered”. I do not think that they unregister, but I would like to check, thanks a lot for any further feedback !!

Regards,
Fabianus

in the asterisk cli type sip show peers

414/414                    (Unspecified)    D   N      0        UNKNOWN   
252/252                    172.20.1.160     D   N      5060     OK (86 ms)
251/251                    172.20.1.152     D   N      5060     Unmonitored
222/222                    172.20.1.155     D   N      5060     Unmonitored
189/189                    172.18.1.126     D   N      5060     OK (6 ms) 
167/167                    172.18.1.138     D   N      5060     OK (69 ms)
148/148                    172.18.1.93      D   N      5060     OK (67 ms)
145/145                    172.18.1.116     D          5060     Unmonitored
143/143                    192.168.47.150   D   N      5060     Unmonitored
141                        (Unspecified)    D   N      0        UNKNOWN   
139/139                    172.18.1.108     D   N      5060     Unmonitored
138/138                    172.18.1.140     D   N      5060     Unmonitored

some output for you to compare to. note that extension 414 and 141 are NOT registered, the rest are fine.

Hi fskrotzki,

thanks for your advice.

So I checked this and they are all connected like :

2723/2723 192.168.128.110 D N 31445 OK (102 ms)
2722/2722 192.168.128.120 D N 22197 OK (102 ms)
2721/2721 192.168.128.107 D N 45792 OK (104 ms)
2714/2714 192.168.128.134 D N 49608 OK (105 ms)
2713/2713 192.168.128.124 D N 8298 OK (104 ms)

One more information: the solution I found so fare is to use the ring group. This works without any problem (so there must be some other reason than the softphones). The problem with the ring group is that there are much less features … :frowning:

Thanks a lot for any additional help - Christmas is coming and I get more and more presure by the sales director ! :wink:

Regards,
Fabianus

Here I am again. This guy had the same problem :
http://www.freepbx.org/forum/freepbx/users/freepbx-2-4-1-0-and-queues-problem-on-asterisk-1-4-19-21#comment-19245

Isn’t there anybody who could give me a hint on how to get this fixed ?

Thanks a lot for any feedback !

Regards,
Fabianus

when you have this problem please check to see if any of the extensions with the problem are having phantom calls. i.e. calls that have not hung up.

You can determine this by attempting to use the soft hangup command. with you type soft hangup followed by a tab key it will provide you with a list of all calls the phone system see’s still active. See if any of them are using the extensions in question.

It is hard to tell you exactly what to look for as you have not provided much in the way of details. What type of trunks are you using?

yes

Hello fskrotzki,

thanks a lot for your feedback.

Let me recap, just to be sure that I understand well. You say that this problem, when calls are waiting in a queue (ring strategy “ringall”) but no static agents get calls, could be due to calls that have not hung up ? I am not sure to understand how this could cause the problem, so I give you an example, thanks for any feedback :

there is a queue Q1 and in this queue I set some static agents (1001, 1002, 1003). Now calls come in and the queue works fine, meaning that all agents (extensions set as static agents) get called. But suddenly callers are still in the queue, all extensions have hung up, but the waiting calls do not ring anymore. At this moment there would be - if I understand you well - a call that is not really hung up, for example the last call to 1001 is not hung up, dispite the fact that 1001 doesn’t see this in x-lite. And not only does 1001 not get any new calls but all agents (extensions 1002, 1003) don’t get any new calls.

Did I get it right ?

Thanks a lot for any further feedback, because this problem is driving me crazy :frowning:

Thanks,
Fabianus

ok, fine.
So now next question :wink:

“You can determine this by attempting to use the soft hangup command. with you type soft hangup followed by a tab key it will provide you with a list of all calls the phone system see’s still active. See if any of them are using the extensions in question.”

I tried this :
asterisk -r
asterisk*CLI> soft hangup

then I get this :
Usage: soft hangup
Request that a channel be hung up. The hangup takes effect
the next time the driver reads or writes from the channel

Now my question … what is a channel ? Is it an extension ? If so, I suppose that I have to write
asterisk*CLI> soft hangup 1001
correct ?

But how to I know that 1001 is not hung up? is there any command to see all extensions that are not hung up ?

Questions over questions. Excuse me for bothering you with this, it helps me a lot to get your feedback on this problem.

Regards,
Fabianus

you should see something like this:

voip*CLI> soft hangup '(tab key press)' SIP/112-b7b9c808 SIP/789-08e27b80 Zap/02-1

So extension 112 and 789 have a call going. They are both SIP based extensions. And to hang up 789 for example you would type:
soft hangup SIP/789-08e27b80

You don’t have type the entire channel session ID, just enough to uniquely qualify it. Then a press of the tab key completes it for you.

Hello guys !

thanks a lot for your nice support ! this is so valuable …

first :
I tried to do “soft hangup” and then to press tab key but nothing happens (I use putty). Do you have any idea ?

then I tried ‘sip show channels’ and I get this :

Peer User/ANR Call ID Seq (Tx/Rx) Format Hold Last Message
202.152.172.4 (None) 5da0f73407a 00102/00000 0x0 (nothing) No Init: OPTIONS
192.168.128.71 (None) 2939881307@ 00101/02476 0x0 (nothing) No Rx: REGISTER
192.168.128.71 (None) 15775922@19 00101/02476 0x0 (nothing) No Rx: REGISTER
192.168.128.110 2738 7d64a41f39e 00102/00000 0x0 (nothing) No (d) Tx: ACK
192.168.128.120 2736 4d17f1a430e 00102/00000 0x0 (nothing) No (d) Tx: ACK
5 active SIP channels

And 2738 and 2736 are the phantom calls that I want to kill. But in this list I do not see any session ID. Is there any other way to obtain the session ID?

Thanks a lot for any further support !

Regards,
Fabianus

don’t wanna bother you, but a feedback would be VERY helpful !

Regards,
fabianus

Hello all !

I have to write you again on this issue. Yesterday it happend again … this phantom call problem.

For your information: there were several calls waiting in the queue and the agents didn’t get any call. So I took out all static agents from the queue and set ‘leave when empty’ to yes. All BUT one calls were put through to the AM. I left this queue for a while like that, but this call didn’t went out.
I did a ‘sip show channels’ and found out which channel was responsable. But once I got so fare, I was traped, because I do not know how to soft hangup. The way you taught me doesn’t work for me, meaning that nothing happens when I write “soft hangup” and then hit the tab key.
So I would like to writh "soft hangup " but therefor I need the channel’s ID and the ‘sip show channels’ command doesn’t tell me this.

Thanks a lot for any support on this last step !

Regards,
Fabianus

PS I really do not understand why the queue makes such a problem with phantom calls, but ring groups don’t …

I have the same symptoms but much more info at this point.

System is: CentOS 5.3, Asterisk 1.6.1.0, FreePBX 2.5.1. the problem has existed from the beginning (about 2 weeks ago).

From a fresh boot, all active SIP phones register properly as below:
Name/username Host Dyn Nat ACL Port Status
6001/6001 10.1.6.71 D N A 5060 OK (8 ms)
6002/6002 10.1.6.72 D N A 5060 OK (7 ms)
6003/6003 10.1.6.73 D N A 5060 OK (10 ms)
6004/6004 10.1.6.74 D N A 5060 OK (10 ms)
6005/6005 10.1.6.75 D N A 5060 OK (9 ms)
6006/6006 10.1.6.76 D N A 5060 OK (9 ms)
6007/6007 10.1.6.77 D N A 5060 OK (10 ms)
6008/6008 10.1.6.78 D N A 5060 OK (9 ms)
6009/6009 10.1.6.79 D N A 5060 OK (11 ms)
6010/6010 10.1.6.80 D N A 5060 OK (10 ms)

These devices are associated with users (operating in users-and-devices mode)and are static members in the queues (there are several, they all behave the same).

The queues will show all members as (invalid) initially, any calls sit in the queue, and go nowhere. I don’t know WHY/HOW we get to this state.

asterisk*CLI> queue show
100 has 0 calls (max unlimited) in ‘ringall’ strategy (2s holdtime), W:0, C:0, A:0, SL:0.0% within 0s
Members:
Local/6204@from-internal/n (Invalid) has taken no calls yet
Local/6103@from-internal/n (Invalid) has taken no calls yet
Local/6201@from-internal/n (Invalid) has taken no calls yet
Local/6205@from-internal/n (Invalid) has taken no calls yet
Local/6602@from-internal/n (Invalid) has taken no calls yet
Local/6104@from-internal/n (Invalid) has taken no calls yet
Local/6222@from-internal/n (Invalid) has taken no calls yet
Local/6202@from-internal/n (Invalid) has taken no calls yet
Local/6101@from-internal/n (Invalid) has taken no calls yet
No Callers

If I simply reload the queues, all is well.

asterisk*CLI> module reload app_queue.so
– Reloading module ‘app_queue.so’ (True Call Queueing)
== Parsing ‘/etc/asterisk/queues.conf’: == Found
== Parsing ‘/etc/asterisk/queues_general_additional.conf’: == Found
== Parsing ‘/etc/asterisk/queues_custom_general.conf’: == Found
== Parsing ‘/etc/asterisk/queues_custom.conf’: == Found
== Parsing ‘/etc/asterisk/queues_additional.conf’: == Found
== Parsing ‘/etc/asterisk/queues_post_custom.conf’: == Found

asterisk*CLI> queue show
100 has 0 calls (max unlimited) in ‘ringall’ strategy (2s holdtime), W:5, C:1, A:0, SL:0.0% within 0s
Members:
Local/6204@from-internal/n (Not in use) has taken no calls yet
Local/6103@from-internal/n (Not in use) has taken no calls yet
Local/6201@from-internal/n (Not in use) has taken no calls yet
Local/6205@from-internal/n (Not in use) has taken no calls yet
Local/6602@from-internal/n (Not in use) has taken no calls yet
Local/6104@from-internal/n (Not in use) has taken no calls yet
Local/6222@from-internal/n (Not in use) has taken no calls yet
Local/6202@from-internal/n (Not in use) has taken no calls yet
Local/6101@from-internal/n (Not in use) has taken 1 calls (last was 3 secs ago)

If I reboot the system, or if asterisk segfaults (as it does about 6 times a day, but that’s another post) then the queues come back up non-operational. I tend to think the queues are getting initialized before the SIP channel is initialized, or before the phones are registered.

Your thoughts on this would be greatly appreciated as it is business impacting. At the moment, I just keep a console up to the server on my desk and reload the queues when there’s an issue.

Tim

I am also having the same exact issue after yum updating about 5-10 days ago. I’m pretty new to this as well. I think I have the same version as timvalis posted.

I ran across this thread while researching another issue… FYI - we’re having the same problem in this other thread and have been advised of a possible solution:

http://www.freepbx.org/forum/freepbx/users/queues-dialparties-agi-high-cpu-load

escape2mtn, the thread you referenced seems to have a solution. Does that work for you?

Are you recording calls? Seem like you are having a load or i/o issue