that makes no sense: when a call arrives and joins the queue, the queue length is immediately equal to 1. if the max length were really zero, then no call could join the queue and be processed i.e. you would be disabling the queue.
What are you trying to do with it? As mudslide said, setting the max number of calls to 0 would effectively disable the queue.
There are ways to “disable” the queue without specifically deleting it completely. Setting joinempty to “no” or “strict” on a queue with no active members should act the same, but perhaps there’s a better way of doing what you’re trying to do.
I think they are trying to do automatic call distribution, with some sort of load balancing, whilst still rejecting callers if they can’t be answered immediately. Of course, it does suffer from the problem of trying to solve the sub-problem, rather than the real requirement.
(I do agree that, by definition, a queue has to have entries!)
What you haven’t explained is why you want to use the Queue application, when you don’t have any queues, in the common meaning of the word. If you explain that, people may be able to suggest a better solution, that doesn’t involve the Queue application.
At the moment, I would say you needed to change the source code.
you can set your queue to distribute calls and if there are no available agents [either none logged in or they are all busy] have it fail out of the queue to something else [pretty much anything including the busy signal]. you can use joinempty=strict in the queue configuration and then calls will not join the queue unless there are available agents who do not have calls.
I am trying to setup the same configuration as Marcin99. I can be a little more specific with my requirements.
I need to have the functionality of the queue in terms of:
Agents per queue/Hunt Groups
Different priority weighting per queue
But instead of the queuing occuring internally I am trying to setup my queues externally. Thus when no agents are available I need to present in effect a busy tone to queue the calls in the cloud (which tried to fire a call down every 8 seconds) rather than as is occuring during testing both in the network and internally when ISDN/SIP lines are available.
It sounds like you guys just want to simulate a hunt group, rather than have a “queue” per se.
As David said, if you don’t have anybody actually waiting in the queue (which sounds like both of your intentions), then the priority doesn’t matter, because the person calling in will get either a person or a busy signal right away. A queue is meant to keep people on the line until an Agent becomes available.
Not to say, though, that what you both want isn’t possible. As mentioned previously, the joinempty option can be used to throw a busy signal (or whatever you wish, depending on the dial plan) if none of the queue agents are available.