[SOLVED] Set Ring Group Busy When One Line Occupied


Here is the situation.

I have an employee that covers a large office where there are multiple phones. When a call comes into the main queue it rings his ‘Ring Group’ so that all of his phones ring at the same time and then he answers. Well if he is not at his main phone and a second call comes in at the same time it starts ringing all of his other phones. I would like the queue to understand if one of the phones on the ring group are busy do not ring any of the other phones and move on to the next available agent and try them.

Now there might be a better way of setting this up, but a ring group made the most sense to me. Obviously it is not made to do what I am trying to do, so there might be something better I can use. The ringall-prim gets me part way there. I just need to extend that functionality to all of the extensions in the ring group and not just the primary.

Thoughts or ideas?

Edit - Last night I was thinking. Would this be possible using a custom dial plan?

I believe I figured out a solution. It is very crude, but it works.

This users extension is 202. We wanted to also ring extension 205, 206, 207 and 208 when a call was sent to him by the queues. I created a dialplan that would ring all of these extensions at the same time. Once one was answered it would set DND on all of the other extensions. This way a second call could not be sent to this user. Once the user hangs up the DND is removed and everything is back to normal. Here is a sample dialplan that I created.

added to extensions_override_freepbx.conf

exten=> 202,hint,SIP/202&Custom:DND202&SIP/205&SIP/206&SIP/207&SIP/208

I then tweaked this a lot more using more extensions to allow for intercoming to the phones that were not actually in use. I hope this helps someone else and maybe someone will have a more elegant solution, but for now this works.