Asterisk ‘Ring All Phones’ - One Approach

When I setup an Asterisk system for my home telephony it was configured so that if the main phone didn’t pickup after a certain amount of time then Asterisk would proceed to ‘call’ all the phones in the house.

Yesterday someone enquired as to how this is acheived because there appears to be some confusion as to how it is done.

Now I make no assertions as to whether this is the best way to do it but it works.

Extensions.conf

[globals]
Office1=SIP/200
LivingRoom=SIP/201
ServerRoom=SIP/202
All=SIP/Office1&SIP/LivingRoom&SIP/ServerRoom

With that done you then simply add the ALL extension to the necessary context


[incoming]
exten => 01234,1,NoOp(Incoming call!)
exten => 01234,2,Ringing
exten => 01234,3,Wait(1)
exten => 01234,4,Dial(SIP/Office1,30)
exten => 01234,5,Dial(SIP/All,30)
exten => 01234,6,Playback(tt-weasels)
exten => 01234,7,Hangup

Whilst it is possible to utilise the Dial command in the following way I prefer utilising descriptive names and other variables.


exten => 01234,5,Dial(SIP/200&SIP/201&SIP/202,30)

If anyone reads this and knows of another way or considers this particular method to be evil then let me know.

Leave a Reply