Rufumleitung mithilfe von astdb
Buch - Scripte

 

Beispielkontext für Rufumleitung

exten => _*3.,1,NoOp(Rufumleitung ein)
exten => _*3.,n,DBput(umleitung/${CALLERIDNUM}=${EXTEN:2})
exten => _*3.,n,Set(NUM=${DB(umleitung/${CALLERIDNUM})})
exten => _*3.,n,Playback(rufuml_an)
exten => _*3.,n,SayNumber(${NUM})
exten => _*3.,n,Hangup

exten => _*4,1,NoOp(Rufumleitung aus)
exten => _*4,n,DBdel(umleitung/${CALLERIDNUM})
exten => _*4,n,PlayBack(rufuml_aus)
exten => _*4,n,Hangup

exten => _2X,1,DBget(NUM=umleitung/${EXTEN})
exten => _2X,n,NoOP(DBGetStatus: ${DBGETSTATUS}
exten => _2X,n,GotoIf($["${DBGETSTATUS}" = "NOTFOUND"]?4:6)
exten => _2X,n,Dial(SIP/${EXTEN},10)
exten => _2X,n,Hangup
exten => _2X,n,Set(NUM=${DB(umleitung/${EXTEN})})
exten => _2X,n,Dial(SIP/${NUM},10)
exten => -2X,n,Hangup

 

Beispielmacro für Rufumleitung

[macro-rufumleitung]
exten => s,1,DBget(NUM=umleitung/${ARG1})
exten => s,n,NoOP(DBGetStatus: ${DBGETSTATUS}
exten => s,n,GotoIf($["${DBGETSTATUS}" = "NOTFOUND"]?4:6)
exten => s,n,Dial(SIP/${ARG1},10)
exten => s,n,Hangup
exten => s,n,Set(NUM=${DB(umleitung/${ARG1})})
exten => s,n,Dial(SIP/${NUM},10)
exten => s,n,Hangup


[default]
exten => _2X,1,macro(rufumleitung,${EXTEN})

[rufumleitung]
exten => _*3.,1,NoOp(Rufumleitung ein)
exten => _*3.,n,DBput(umleitung/${CALLERIDNUM}=${EXTEN:2})
exten => _*3.,n,Set(NUM=${DB(umleitung/${CALLERIDNUM})})
exten => _*3.,n,Playback(rufuml_an)
exten => _*3.,n,SayNumber(${NUM})
exten => _*3.,n,Hangup

exten => _*4,1,NoOp(Rufumleitung aus)
exten => _*4,n,DBdel(umleitung/${CALLERIDNUM})
exten => _*4,n,PlayBack(rufuml_aus)
exten => _*4,n,Hangup