[AsteriskBrasil] siga me. e cadeado ramal.

fabio fabio em syma.com.br
Terça Abril 25 08:37:35 BRT 2006


Bom dia.

Fiz uma programação em meu asterisk para siga-me e cadiado no ramal. 
espero que ajude

[sigame]
;sigame do meu ramal
exten => _*21*.,1,NoCDR()
exten => _*21*.,2,DBput(CFIM/${CALLERIDNUM}=${EXTEN:4})
exten => _*21*.,3,Hangup
;retira
exten => *22*,1,NoCDR()
exten => *22*,2,DBdel(CFIM/${CALLERIDNUM})
exten => *22*,3,Hangup

;sigame se ocupado do meu ramal
exten => _*23*.,1,NoCDR()
exten => _*23*.,2,DBput(CFBS/${CALLERIDNUM}=${EXTEN:4})
exten => _*23*.,3,Hangup
;retira
exten => *24*,1,NoCDR()
exten => *24*,2,DBdel(CFBS/${CALLERIDNUM})
exten => *24*,3,Hangup

;sigame do ramal onde estou
exten => _*25*.,1,NoCDR()
exten => _*25*.,2,DBput(CFIM/${EXTEN:4}=${CALLERIDNUM})
exten => _*25*.,3,Hangup
;retira
exten => _*26*,1,NoCDR()
exten => _*26*,2,DBdel(CFIM/${EXTEN:4})
exten => _*26*,3,Hangup

;sigame do ramal onde estou
exten => _*26*.,1,NoCDR()
exten => _*26*.,2,DBput(CFBS/${EXTEN:4}=${CALLERIDNUM})
exten => _*26*.,3,Hangup

;retira sigame do ramal onde estou
exten => _*27*,1,NoCDR()
exten => _*27*,2,DBdel(CFBS/${EXTEN:4})
exten => _*27*,3,Hangup

[cadiado]

;cadastrar senha cadiado
exten => _*97*xxxx,1,NoCDR()
exten => _*97*xxxx,2,DBget(senha=CADIPASS/${CALLERIDNUM})
exten => _*97*xxxx,3,GoToIf($["${senha}" = ""]?5:4)
exten => _*97*xxxx,4,Hangup
exten => _*97*xxxx,5,DBput(CADIPASS/${CALLERIDNUM}=${EXTEN:4})
exten => _*97*xxxx,6,Wait(2)
exten => _*97*xxxx,7,Playback(beep)
exten => _*97*xxxx,8,Playback(beep)
exten => _*97*xxxx,9,Playback(beep)
exten => _*97*xxxx,10,Hangup


;trocar senha cadiado
exten => _*96*xxxxxxxx,1,NoCDR()
exten => _*96*xxxxxxxx,2,DBget(cadp=CADIPASS/${CALLERIDNUM})
exten => _*96*xxxxxxxx,3,GoToIf($["${cadp}" = "${EXTEN:4:4}"]?4:9)
exten => _*96*xxxxxxxx,4,DBput(CADIPASS/${CALLERIDNUM}=${EXTEN:8})
exten => _*96*xxxxxxxx,5,Wait(2)
exten => _*96*xxxxxxxx,6,Playback(beep)
exten => _*96*xxxxxxxx,7,Playback(beep)
exten => _*96*xxxxxxxx,8,Playback(beep)
exten => _*96*xxxxxxxx,9,Hangup
exten => _*96*xxxxxxxx,10,Hangup


;colocar cadiado
exten => _*98*xxxx,1,NoCDR()
exten => _*98*xxxx,2,DBget(cadp=CADIPASS/${CALLERIDNUM})
exten => _*98*xxxx,3,GoToIf($["${cadp}" = "${EXTEN:4}"]?4:9)
exten => _*98*xxxx,4,DBput(CADIADO/${CALLERIDNUM}=y)
exten => _*98*xxxx,5,Wait(2)
exten => _*98*xxxx,6,Playback(beep)
exten => _*98*xxxx,7,Playback(beep)
exten => _*98*xxxx,8,Playback(beep)
exten => _*98*xxxx,9,Hangup
exten => _*98*xxxx,10,Hangup

;retirar cadiado
exten => _*99*xxxx,1,NoCDR()
exten => _*99*xxxx,2,DBget(cad=CADIPASS/${CALLERIDNUM})
exten => _*99*xxxx,3,GoToIf($["${cad}" = "${EXTEN:4}"]?4:10)
exten => _*99*xxxx,4,DBdel(CADIADO/${CALLERIDNUM})
exten => _*99*xxxx,5,Wait(2)
exten => _*99*xxxx,6,Playback(beep)
exten => _*99*xxxx,7,Playback(beep)
exten => _*99*xxxx,8,Playback(beep)
exten => _*99*xxxx,9,Hangup
exten => _*99*xxxx,10,Hangup

;extensao de ligação que verificar se o ramal tem cadiado

exten => _xxxxxxxx,1,DBget(cad=CADIADO/${CALLERIDNUM})
exten => _xxxxxxxx,2,GoToIf($["${cad}" = "y"]?4:3)
exten => _xxxxxxxx,3,dial(Unicall/g2/${EXTEN:2},50,tT)
exten => _xxxxxxxx,4,Hangup()

;extensão de ramal que verifica se o ramal tem siga-m

exten => _9xxx,1,SetAccount(${CALLERIDNUM})
exten => _9xxx,2,DBget(siga=CFIM/${EXTEN})
exten => _9xxx,3,GoToIf($["${siga}" = ""]?5:4)
exten => 
_9xxx,4,Macro(gravarligacaoramal,${siga},${CALLERIDNUM},${DATETIME})
exten => 
_9xxx,5,Macro(gravarligacaoramal,${EXTEN},${CALLERIDNUM},${DATETIME})
exten => _9xxx,6,GotoIf($["${DIALSTATUS}" = "BUSY"]?8:14)
exten => _9xxx,8,DBget(sigao=CFBS/${EXTEN})
exten => _9xxx,9,GoToIf($["${sigao}" = ""]?12:10)
exten => 
_9xxx,10,Macro(gravarligacaoramal,${sigao},${CALLERIDNUM},${DATETIME})
exten => _9xxx,12,GoToIf($["${BLINDTRANSFER}" = ""]?14:16)
exten => _9xxx,14,BUSY()
exten => _9xxx,16,Wait(5)
exten => _9xxx,17,Dial(${BLINDTRANSFER:0:8},45,Ttr)







Mais detalhes sobre a lista de discussão AsteriskBrasil