All pastes #970877 Raw Edit

Unnamed

public text v1 · immutable
#970877 ·published 2008-04-04 10:54 UTC
rendered paste body
; extensions.conf - the Asterisk dial plan
;
; Static extension configuration file, used by
; the pbx_config module. This is where you configure all your 
; inbound and outbound calls in Asterisk. 
; 
; This configuration file is reloaded 
; - With the "extensions reload" command in the CLI
; - With the "reload" command (that reloads everything) in the CLI

;
; The "General" category is for certain variables.  
;
[general]
;
static=yes
writeprotect=no

[globals]
NPX=0131 ; local area code

[default]
; the reason i break these out in to separate [sections]
; is so that they can be excluded/included by commenting out
; one line. Makes debugging a lot easier.

include => util_numbers
include => internal_phones
include => voipfone
include => sipgate
include => inbound
;include => fromvoipfone
include => test

[internal_phones]
exten => 1006,1,Dial(SIP/james2, 20)
exten => 1005,1,Dial(SIP/james, 20)
exten => 1007,1,Dial(SIP/line1, 20, wWm)
exten => 121, 1, VoiceMailMain(1007)
exten => 121, 2, Hangup()

[voipfone]
exten => ._,1,Dial(SIP/james)

[sipgate]
;exten => _9|[2-9].,1,Goto(${NPX}Dial(SIP/${EXTEN:1}@sipgate,30,tr)
;exten => _9|[2-9].,2,Playback(invalid)
;exten => _9|[2-9].,3,Hangup 

exten => _9.,1,Dial(SIP/${EXTEN:1}@sipgate,30,tr)
exten => _9.,2,Playback(invalid)
exten => _9.,3,Hangup 

[inbound] 
;[fromvoipfone] 
;exten=>work,1,Answer
;exten=>work,2,Wait(2)
;exten=>work,3,Monitor(wav, myfile)
;exten=>work,4,Playback(connecting)
;exten=>work,5,SetCallerID("Work Calling")
;exten=>work,6,Wait(1)
;exten=>work,7,Goto(inbound,calls,1)

exten=>calls,1,Dial(SIP/james&SIP/james2&SIP/line1,30)
;exten=>calls,2,Monitor(wav,/var/spool/asterisk/monitor/inside,b)
exten=>calls,3,Answer
exten=>s,4,Playback(beep)
exten=>calls,5,Wait(1)
exten=>calls,6,Voicemail(u1007)
exten=>calls,7,Hangup

exten=>s,1,SetCallerID("Main Line ${CALLERIDNUM}" <${CALLERIDNUM}>)
exten=>s,2,Goto(inbound,calls,1)
exten=>_X.,1,SetCallerID("Main Line ${EXTEN}" <${CALLERIDNUM}>)
exten=>_X.,2,Goto(inbound,calls,1)

[test]

extension=>100,1,AGI(hello.php)
extension->100,2,Hangup()

;[general]

;static=yes
;writeprotect=no


;[default]
; the reason i break these out in to separate [sections]
; is so that they can be excluded/included by commenting out
; one line. Makes debugging a lot easier.

;include => external_sip
;include => util_numbers
;include => internal_phones
;include => voicemailboxes


;[internal_phones]
;My internal phones

;exten => 5010,1,Dial(SIP/5010,30)
;exten => 5010,2,Voicemail(u5010)
; SIP Hardphone 5010: rings for 30 seconds, then
; goes to voicemailbox 5010

;exten => 5012,1,Dial(SIP/5012,30)
;exten => 5012,2,Voicemail(u5012)
; SIP ATA 5012: rings for 30 seconds, then
; goes to voicemailbox 5012



[voicemailboxes]
;main mailbox menu

exten => 5000,1,VoicemailMain
exten => 5000,2,Hangup
; dial 5000 for voicemail



[outgoing_sipgate]

include => default

; dial 9 for an outside line (via Sipgate)
; needs to be in its own context for security porpoises
exten => _9.,1,Dial(SIP/${EXTEN:1}@sipgate,30,tr)
exten => _9.,2,Playback(invalid)
exten => _9.,3,Hangup


[external_sip]
; dial 5014 to speak to Jasper Ragworth, over SIP
exten => 5014,1,Dial(SIP/jasrag@examplename.plus.com)
exten => 5014,2,Playback(invalid)
exten => 5014,3,Hangup

;sipgate stuff...

[daytime_sipgate]

; replace 1234567 with your sipgate ID
exten => 1234567,1,NoOp(--- ${CALLERID} calling on sipgate (${EXTEN}) ---)
exten => 1234567,2,Dial(SIP/5010&SIP/5012,30)
; extensions 5010 and 5012 ring on incoming calls from sipgate.
; Goes to voicemail after 30 seconds
exten => 1234567,3,Answer
exten => 1234567,4,Wait,1
exten => 1234567,5,Voicemail(u5010)
; voicemail goes to 5010's mailbox
exten => 1234567,6,hangup


[night_sipgate]
; diverts all calls to voicemail
exten => 1234567,1,NoOp(--- ${CALLERID} calling on sipgate (${EXTEN}) ---)
exten => 1234567,2,Answer
exten => 1234567,3,Wait,1
; need to record night message and play here
exten => 1234567,4,Voicemail(u5010)
exten => 1234567,5,hangup


[incoming_sipgate]

include => daytime_sipgate|7:00-23:00
; between 0700 and 2300, uses daytime_sipgate

include => night_sipgate|23:01-6:59
; between 2301 and 0659, use night_sipgate.
; Can specify days/weeks/months also.



; Extension for handling SMS.
[smsdial]
exten => _X.,1,SMS(${CALLERIDNUM},s,${EXTEN},${CALLERIDNAME })
exten => _X.,2,SMS(${CALLERIDNUM},s)
exten => _X.,3,Hangup
; I have a small CGI page that lets me send SMS to one of the external
; extensions


; utility numbers
; various utilities, as a demo of asterisk's capabilities.
; Probably irrelevant in this digital telephony age.

[util_numbers]
include => onesevenohsevenoh
include => onetwothree
include => onetwofour
; this bit is here so that one only has to include => one thing
; up in [default] ^

[onesevenohsevenoh]
; 17070 is bt's line test facility, reads out your number
; we don't need line test, but this is here to say what extension is calling
; pointless but nice
exten => 17070,1,Answer
exten => 17070,2,Wait(1)
exten => 17070,3,SayDigits(${CALLERIDNUM})
exten => 17070,4,Hangup



[onetwothree]
; 123 is the uk speaking clock
exten => 123,1,Answer
exten => 123,2,Wait(1)
exten => 123,3,SayUnixTime( | | k)
exten => 123,4,SayUnixTime( | | M)
exten => 123,5,Playback(vm-and)
exten => 123,6,SayUnixTime( | | S)
exten => 123,7,Playback(seconds)
; downloaded seconds.gsm [amongst others] from
; http://www.loligo.com/asterisk/sounds/
; tip: search google with filetype:gsm to find .gsm files
exten => 123,8,Hangup

[onetwofour]
; 124 is the uk speaking hello
extension => 124,1,AGI(hello.php)
extension => 124,2,Hangup