Queues, ring groups, pickup groups...oh my


I’m having some trouble with a call flow that’s got me kind of stumped.

I have a UCM6208 with version and GXP1628s with version

The use case is in a small veterinary office where anyone needs to be able to pick up an incoming call on the closest phone, park a call to be picked up on another station, or park a call and handle another incoming call.

The call flow generally works. A call comes in on the SIP trunk and follows the incoming route to a queue with 3 static agents configured to ring simultaneously. If the call isn’t picked up, the caller gets prompted to press 1 to go to the shared voicemail box (an extension logged in on each phone but not an agent in the queue), or to continue holding. After the timeout, the caller goes to voicemail. This generally works.

The problem is if the person at the front desk (or any other extension) is on a call, they park their existing call, but then cannot pick up the call from the queue.

I have a BLF set to the queue extension. The light flashes, but when the button is pressed while there’s an incoming call, the phone dials the queue.

I think I’ve worked around it for now by creating a pickup group with all the agent extensions as members and configuring a different button to speed dial *8. This seems to work, but I’d like a more intuitive solution than pressing the button next to the one that lights up.

I’ve considered changing the call flow to start with a ring group and go to an IVR after the timeout, then back to the ring group. But a queue seems to make more sense to me since it’s all in one place.

Bottom line, is there a way for an extension to pull a call out of the queue when it isn’t ringing on that extension? Or do I need to rethink this whole flow?


Please inform us - have you set the extension registration to line key or call key ?


I’m not entirely sure I understand the question, but I’ll add more details of the configuration of the phone.

The 1628 has 2 line keys. I have the first configured for LINE for account 1 and the second is a voicemail button for account 2 (the shared voicemail box).

Now that you point this out, I wonder if I change the second line key to a second LINE for account 1, that might solve the problem. I will test later today.


that is your problem… and the reason for not being able to get the call in motion so to speak…


Thanks for the guidance. I’ll update the configs for the phones and retest.

The only question will be if the hardware voicemail button will access the mailbox for account 2 if there’s a message waiting. If not, I suppose I can use a multi-function key.


there is an envelope button on the handset no need for a vpmk


Thanks. For some reason I had it in my head that the envelope button would only work to access the mailbox for account 1. I guess even if that were true, I could change the accounts so the voicemail extension were account 1 and the line buttons were lines for account 2.


you can select the voicemail box using up/down arrow for which vm it is


for some reason adding the second line back to the phone doesn’t seem to solve the problem.

I think when I dial the queue internally for testing, things seem to work, but when the calls come in on the sip trunks, I’m not able to pick up a second call from one phone. I just disabled fax detection on the inbound routes because I didn’t really need it anyway. I haven’t had time to test that change yet.

I’m open to any other suggestions.


Enable call waiting on the extension in the UCM and the phone.


call waiting is enabled on the extension. Is there another place?


In the UCM extension settings


call waiting has always been enabled.

What I’m seeing is that when a call comes in on a sip trunk and an extension is on a call, the other phones ring simultaneously as expected. The user on a call parks the existing call, but that phone is unable to pick up the call in the queue. It seems that the new call in the queue is not calling the extension that was on a call when the second call came in.


My mistake. I was thinking RG, not Q. Sorry

The Q is designed to be a 1:1 relationship - one call to one extension at a time and is managed by the system based upon the settings you have enabled/set. It will not rebound to an extension that was on a call at the time, but now isn’t. That is not how they work.

If however, a call comes in and all agents are busy and remain busy so the system continues to hold the call, should an agent then place a call into park and hangup or hangup the call itself , I believe that the agent then become available and if the system has not already sent the waiting call on in the meantime, it should then send the call to the agent that just became available. Is it this scenario that is not working?

When you create the Q, the call is not delivered until such time as an agent becomes available. Had the agent that was on a call, not been on the call, then the system would have delivered the call to him. But as they were on the call, the system kept the caller in the Q waiting for an agent to be available, the timeout for a virtual Q to be invoked or a timeout of the Q wait period whereupon a destination comes into play would could be the anything you like.

It is basically an attempt to use available resource to service temporary demands that exceed the available resource. Having 1 resource servicing 2 demands still means that 1 of those demands is on-hold no differently than if they were waiting in the Q.

It like calling into a business being greeted by “Thank you for calling ABC company, can you hold please?”, whereupon the agent, in a hurry to grab the other call, puts you on-hold without waiting and you get to listen to MOH not knowing when you may get your turn (again).

You can indeed handle more than one call at a time in a ring group. A member can grab a call. So, you know, if you have two lines on a phone in a ring group and call waiting is enabled, then the second call will ring the phone and by pressing the second ringing line, the phone will automatically place the 1st call on-hold and answer the 2nd call.


ok, so to get the same call flow where the caller hears ringing, then an opportunity to go to voicemail or to stay on the line, then back to ringing (if they don’t choose the VM option), I’d have to have the call route to a ring group that times out to an IVR that offers voicemail and times out back to the ring group.


I guess I am trying to understand the issue.

The only way they currently hear the ringing is if a Q agent is available, so why are they not answering?


the use case is not a typical call center. It’s a veterinary office. I don’t have people at every phone all the time. I need an incoming call to ring all the extensions and whoever is available simply picks up the nearest phone. If someone is on the phone, they need to be able to act as a receptionist and park the call and answer the next call regardless of which phone they’re using.


Then use a ring group with call waiting enabled and with each phone set with two lines.

Qs require discipline of the agents. Unless the system is told otherwise, it follows the rules you set and if agents are not there, then the system is not aware of that and will send the call to whichever is “supposed” to be available and as stated, once sent. it does not look back automatically.

A ring group is simply going to ring the members of a ring group and if all are busy or the call is not answered, then it will send the call to the destination. You can still put a message/prompt on a ring group.

Then set a BLF for the ring group and then group the extensions and see.


That’s where I’m heading, thanks.

I do like the destination prompt cycle available with a queue, but I think I can emulate that with the ring group timing out to an IVR and back to the ring group.

I appreciate the help here. I’ll get the config together and get it tested.


Well, give it a try and see how it goes. You can always change things.

Me, I like Qs, but as stated, someone has to either have the seats manned to take the calls or, you have to have the agent pause and unpause.