The Queue Toggle feature code is pretty broken

There have been a huge number of “Queue Toggle doesn’t work” complaints lately-

http://www.google.com/search?q=site:freepbx.org+“queue+toggle”

I’ve been following those complaints, because I’ve recently moved a 20-some agent dispatch center to FreePBX, and I have the agents logging in and out using BLF buttons programmed to dial this *45 ‘Queue Toggle’ feature code. After experiencing dozens of complaints a day about agents not being able to log in or out of queues, I can say with certainty that the current queue_devstate.agi script is pretty terrible at its job.

http://pastebin.com/7NyKh6wB

So I rewrote it. My rewrite is a drop-in replacement for the current queue_devstate.agi script and even keeps the same basic feel (switch on $argv, issue a ‘queue show’ and parse the results). I hope I’m not stepping on any toes, but I’d love to get this included upstream. It’s been in use 16+ hours a day by 20 some people since early last week and all of the ‘Queue Toggle’ complaints have entirely disappeared.

Alex -

Thanks for the contribution. Please open a ticket on this issue and attach the code. Forum messages are often missed by the development team. All tickets are formally reviewed.

Thanks…Scott

Alex,

the information is always appreciated and as Scott indicates, it’s best to file a ticket.

However, let me request for such situations that you don’t jump to the conclusion right off that you need to rewrite the script and submit something new prior to engaging others in the forums, or if appropriate in a ticket, to determine if something else is going on or otherwise helping to isolate the problem.

I have tested the toggle code and it works fine in the environment I tested it in. I know there were some things broken earlier in 2.9 that got fixed but don’t know if that is the issue you ran into, or you have a setup that is broken.

At this point though I would be much more interested in isolating what is wrong on your system prior to jumping the gun and thinking we need to new script when in fact the current one is working, or so it appears to be so.

I would suggest therefore that you might make sure that that your system is fully up-to-date, put back the current script and help determine where the problem lies because without doing that, and with other indications pointing to things working fine, we aren’t going to just replace it with you generous contribution. However, going through this process may point at very real issues that you have uncovered and we are obviously interested in addressing. (Whether that means a replacement if what you wrote is a better alternative, or uncovering some defect in the current script that needs to be addressed.)

thanks for now on helping to understand what might be up!