[general] static=yes writeprotect=no autofallthrough=yes clearglobalvars=no priorityjumping=no [globals] OUTBOUNDTRUNK=SIP/ventelo-outbound [default] ;; INCOMING SIP. [inbound] exten => _X.,1,Macro(inbound,SIP/${EXTEN}) ;; SPANDSP RXFAX TEST. exten => _23680010,1,Macro(faxreceive) ;; OUTGOING SIP. [outbound] exten => _X.,1,Macro(outbound,${OUTBOUNDTRUNK}/${EXTEN}) ;; INTERNAL SIP CALLS. [internal] include => in include => outbound switch => Realtime/internal@extensions ;exten => _X.,1,Macro(internal,SIP/${EXTEN}) ;exten => _X.,1,Dial(Local/SIP/${EXTEN}) exten => 67078840,1,Macro(internal,SIP/${EXTEN}) exten => 67061258,1,Macro(internal,SIP/${EXTEN}) exten => 67078020,1,Macro(internal,SIP/${EXTEN}) exten => 67070922,1,Macro(internal,SIP/${EXTEN}) exten => 67417053,1,Macro(internal,SIP/${EXTEN}) exten => 67069006,1,Macro(internal,SIP/${EXTEN}) ;; Voicemail. exten => 1999,1,Set(LANGUAGE()=no) exten => 1999,n,VoiceMailMain(s${CALLERIDNUM}@${CONTEXT}) ;; Meetme. exten => 2999,1,Set(LANGUAGE()=no) exten => 2999,n,Meetme() [in] ; Unconditional Call Forward exten => _*21*X.,1,DBput(CFIM/${CALLERIDNUM}=${EXTEN:4}) exten => _*21*X.,2,Hangup exten => #21#,1,DBdel(CFIM/${CALLERIDNUM}) exten => #21#,2,Hangup ; Call Forward on Busy or Unavailable exten => _*61*X.,1,DBput(CFBS/${CALLERIDNUM}=${EXTEN:4}) exten => _*61*X.,2,Hangup exten => #61#,1,DBdel(CFBS/${CALLERIDNUM}) exten => #61#,2,Hangup [nittedalsnettet] include => internal [macro-outbound] ;exten => s-,1,SIPAddHeader(Remote-Party-ID: \ ; \;party=calling\;privacy=full\;screen=yes) exten => s,1,SIPAddHeader(Remote-Party-ID: \;party=calling\;privacy=off\;screen=no) exten => s,n,Dial(${ARG1}) exten => s,n,Goto(s-${DIALSTATUS},1) exten => s-CONGESTION,1,Congestion() exten => s-CHANUNAVAIL,1,Congestion() exten => s-CANCEL,1,Congestion() exten => s-NOANSWER,1,Congestion() exten => s-BUSY,1,Congestion() [macro-inbound] exten => s,1,Dial(${ARG1}) exten => s,n,Goto(s-${DIALSTATUS},1) exten => s-CONGESTION,1,Congestion() exten => s-CHANUNAVAIL,1,Congestion() exten => s-CANCEL,1,Congestion() exten => s-NOANSWER,1,Congestion() exten => s-BUSY,1,Congestion() [macro-internal] exten => s,1,Dial(${ARG1}) exten => s,n,Goto(s-${DIALSTATUS},1) exten => s-CONGESTION,1,Congestion() exten => s-CHANUNAVAIL,1,Congestion() exten => s-CANCEL,1,Congestion() exten => s-NOANSWER,1,Congestion() exten => s-BUSY,1,Congestion() [macro-stdexten] ; ; Standard extension macro (with call forwarding): ; ${ARG1} - Extension(we could have used ${MACRO_EXTEN} here as well ; ${ARG2} - Device(s) to ring ; exten => s,1,Set(temp=${DB(CFIM/${ARG1})}) exten => s,n,GotoIf(${temp}?cfim:nocfim) exten => s,n(cfim),Dial(Local/${temp}@default/n) ; Unconditional forward exten => s,n(nocfim),NoOp exten => s,n,Dial(${ARG2},15) ; 15sec timeout exten => s,n,Set(temp=${DB(CFBS/${ARG1})}) exten => s,n,GotoIf(${temp}?cfbs:nocfbs) exten => s,n(cfbs),Dial(Local/${temp}@default/n) ; Forward on busy or unavailable exten => s,n(nocfbs),Busy [macro-faxreceive] exten => s,1,SetVar(FAXFILE=/var/spool/asterisk-fax/${UNIQUEID}.tif) exten => s,2,DBGet(EMAILADDR=extensionemail/${MACRO_EXTEN}) exten => s,3,rxfax(${FAXFILE}) exten => s,103,SetVar(EMAILADDR=havard@thorkildssen.com) exten => s,104,Goto(3) exten => h,1,system(/usr/local/bin/mailfax ${FAXFILE} ${EMAILADDR} ${CALLERIDNUM}) ~ ~ ~ ~