Code:
[general]
static=yes ; These two lines prevent the command-line interface
writeprotect=yes ; from overwriting the config file. Leave them here.
[interne]
include => parkedcalls
;appel interne
exten => _4XXX,1,NoOp(${CALLERID(all)})
same => n,Dial(SIP/${EXTEN},20,tTm)
same => n,VoiceMail(4001@maison)
;appel externe via ippi
exten => _0XXXXXXXXX,1,Dial(SIP/ippi_outgoing/${EXTEN})
;messagerie vocal
exten => 400,1,VoiceMailMain(@maison)
exten => 401,1,VoiceMailMain(@work)
[from_ippi]
exten => s,1,Answer()
exten => s,n,NoOp(appel entrant de ${CALLERID(ALL)})
exten => s,n,Gosub(correction-callerid,1,1)
exten => s,n,agi(googletts.agi,"Bienvenue chez Fortin-Animation",fr)
exten => s,n,GotoIfTime(17:30-19:00,mon-fri,*,*?open)
exten => s,n,GotoIfTime(10:00-15:00,sat,*,*?open)
exten => s,n,agi(googletts.agi,"La ligne téléphonique est ouverte du lundi au vendredi de 17 heure 30 à 19 heure. Et le samedi de 10 heure à $
exten => s,n,VoiceMail(4001@work)
exten => s,n(open),NoOp(Check masque)
exten => s,n,NoOp(Check blacklist)
exten => s,n,GotoIf([1=1]?ok)
exten => s,n,Goto(nondispo)
exten => s,n(ok),Gosub(NumConnu,1,1)
exten => s,n,Goto(interne,4001,1)
exten => s,n(nondispo),agi(googletts.agi,"Nous ne sommes pas disponnible pour le moment",fr)
exten => s,n,VoiceMail(4001@work)
[correction-callerid]
exten => 1,1,noop(Correction du format du callerid)
same => n,GotoIf($[${CALLERID(num)} = ""]?fincorrection)
same => n,GotoIf($[${LEN(${CALLERID(num)})} = 9]?neufchiffres)
same => n,GotoIf($[${CALLERID(num):0:2} = 33]?debut33)
same => n,GotoIf($[$[${LEN(${CALLERID(num)})} = 11 ] & $[${CALLERID(num):0:2} = 00]]?onzechiffresdeuxzero)
same => n,goto(fincorrection)
same => n(neufchiffres),Set(CALLERID(num)=0${CALLERID(num)})
same => n(neufchiffres),goto(fincorrection)
exten => s,n(ok),Gosub(NumConnu,1,1)
exten => s,n,Goto(interne,4001,1)
exten => s,n(nondispo),agi(googletts.agi,"Nous ne sommes pas disponnible pour le moment",fr)
exten => s,n,VoiceMail(4001@work)
[correction-callerid]
exten => 1,1,noop(Correction du format du callerid)
same => n,GotoIf($[${CALLERID(num)} = ""]?fincorrection)
same => n,GotoIf($[${LEN(${CALLERID(num)})} = 9]?neufchiffres)
same => n,GotoIf($[${CALLERID(num):0:2} = 33]?debut33)
same => n,GotoIf($[$[${LEN(${CALLERID(num)})} = 11 ] & $[${CALLERID(num):0:2} = 00]]?onzechiffresdeuxzero)
same => n,goto(fincorrection)
same => n(neufchiffres),Set(CALLERID(num)=0${CALLERID(num)})
same => n(neufchiffres),goto(fincorrection)
same => n(debut33),Set(CALLERID(num)=0${CALLERID(num):2})
same => n(debut33),goto(fincorrection)
same => n(onzechiffresdeuxzero),Set(CALLERID(num)=${CALLERID(num):1})
same => n(onzechiffresdeuxzero),goto(fincorrection)
same => n(fincorrection),NoOP(CALLERID->${CALLERID(num)})
same => n,Return()
[NumConnu]
exten => 1,1,noop(Verification Numero Connu)
same => n,GotoIf($[${CALLERID(num)} = 0668492371]?FORTINGuillaume)
same => n(FORTINGuillaume),SET(CALLERID(name)=FORTIN Guillaume)
same => n,Goto(end)
same => n(end),Return()