Asterisk simultaneous ring


I am trying to replicate a feature from Broadsoft in asterisk. The feature is simultaneous ring, which would ring both a desk phone and a cell phone and then stop ringing the one which was not picked up (the difficult bit). I believe this is done through a “forked invite” where two invites are sent out, and a cancel message is relayed back to the extensions which is not answered.

Does anyone know of how to do this in asterisk? Would this just be done by manually coding the SIP messages into the dialplan, which would be no good for non-SIP extensions and limited use…

I have tried having a look through google and the forums, with little success…

Any thoughts appreciated.


Robert McNaught
IP Global Voice Inc


use a queue set to ring all set up the cellphone as a local channel and bobs your uncle…


Wouldnt something like Dial(SIP/123&Zap/g1/012345,30) be just right for you? This places two simultaneous calls and the first that gets answered is connected.

the problem with just doing 2 dial statements is that the call which is not answered keeps on ringing then leaves a blank voicemail… which isn’t tremendously useful

the other reply shows a way round to get round this, but I’m thinking it seems like a workaround and am concerned that this would get complicated if there were hundreds of users using this feature - was wondering if there was any way we could code in the cancel message to the device which is not answered

maybe this can be done with a simple if statement and sending a cancel message to the one which is not answered, but am not sure how to go about doing it



You have to think beyond a cancel message. a queue does it, to do it any other way will require some sort of custom channel as in 99% of cases you will be calling a SIP or IAX UA and an external device via a local channel.

Dont for get the outgoing channel could be Pots / ISDN2/ PRI SIP or IAX and you would have to cover all of those.
Then you need a way to configure the “members” and dont for get you want the mobile leg to drop before the mobile voicemail kicks in.
Im sure it can be done but you will pretty much be reinventing the wheel.


the FreePBX frontend sets this up for either its ‘ringgroups’ or ‘findmefollowme’ features.

I just had a quick look through extensions.conf to see how it does it, but only got as far as a ‘dial’ macro that takes a timeout, mode and extension list as parameters.

Is it worth trying Freepbx, even if only on a temporary basis so you can clone the bits of extensions.conf that you need?