Sunteți pe pagina 1din 4

Mdulo

Fecha
Autor
Revisin

: Servicio de desvo incondicional de llamadas Serie720.


: 29 de Abril de 2009.
: Alejandro Osorio
: 1.1

OBJETIVO
Ofrecer servicio de desvo incondicional de llamadas entrantes para los
clientes del servicio Serie720 (voip); permitiendo al cliente habilitar o
deshabilitar este servicio hacia el destino que desee las veces que lo
necesite, sin requerir gestin de parte de Perusat.

CARACTERISTICAS
-

Desvo incondicional de llamadas entrantes antes de enviar la


llamada al cliente SIP.
Habilitacin y deshabilitacin de servicio desde el cliente SIP.
Definicin de nmero de desvo (destino a donde se desviar la
llamada) desde el cliente SIP.
El desvo, cuando est habilitado, se ejecuta sin necesidad de que el
cliente SIP est registrado o no en el Proxy.
Mdulo ejecutado en el servidor SIP Proxy (sip_proxy).
Almacenamiento de datos de desvo en la base de datos nativa de
Asterisk en el servidor sip_proxy.
Reproduccin de archivos de audio de confirmacin, ubicados en el
servidor local: /var/lib/asterisk/sounds/perusat.

MODO DE OPERACIN
-

El abonado debe de habilitar el servicio desde su terminal (cliente


SIP) marcando lo siguiente:
*21 + <nmero_a_desviar>
Para deshabilitar el servicio el abonado debe marcar:
*22
Al estar habilitado el servicio, el sistema desva automticamente
todas las llamadas entrantes hacia el nmero especificado,
tarificando las llamadas a cuenta del nmero 720 desviado: Reenva
la llamada al Proxy (contexto de salida total) sobreescribiendo el
CID para la tarificacin.
Se puede digitar *23 para mostrar en CLI (Asterisk) si el servicio est
habilitado o no.

DIAGRAMAS DE FLUJO
1. PROCESO DE LLAMADA ENTRANTE

2. HABILITACION DE SERVICIO

3. DESHABILITACION DE SERVICIO

DATOS ADICIONALES
SCRIPT ASTERISK:
[features]
;CFW On
exten => _*21[2-8]xxxxxx,1,Goto(1971${EXTEN},1)
exten => _*219xxxxxxxx,1,Goto(1971${EXTEN},1)
exten => _*210xx[2-8]xxxxx,1,Goto(1971${EXTEN},1)
exten => _*210xx9xxxxxxxx,1,Goto(1971${EXTEN},1)
exten => _*2100xxxxx.,1,Goto(1971${EXTEN},1)
exten => _1971*21xxxxx.,1,Set(DB(CFWD/${CALLERID(num)})=${EXTEN:7})
exten => _1971*21xxxxx.,n,PlayBack(perusat/trans_act,noanswer)
exten => _1971*21xxxxx.,n,Hangup()
;CFW Of
exten => *22,1,DBdel(CFWD/${CALLERID(num)})
exten => *22,n,PlayBack(perusat/trans_desac,noanswer)
exten => *22,n,Hangup()
;Status NoOp
exten => *23#,1,NoOp(${DB(CFWD/${CALLERID(num)})})
exten => *23#,2,Hangup()
[internal]
//este contexto tiene ms informacin, se coloca solo la lnea necesaria para el funcionamiento
del mdulo.
exten => _051XXXXXXXX,1,Macro(incomingcall,${EXTEN})
[macro-incomingcall]
exten => s,1,Set(fwdnum=${DB(CFWD/${ARG1:3})})
exten => s,n,GotoIf(${fwdnum}?cfwd:nocfwd)
exten => s,n(cfwd),Setcallerid("${ARG1:3}" <${ARG1:3}>,a)
exten => s,n(cfwd),Goto(total,${fwdnum},1)
exten => s,n(nocfwd),Dial(SIP/${ARG1:3},60)
exten => s,n(nocfwd),Dial(SIP/<ip_address>/${ARG1})
exten => s,n(nocfwd),Hangup()

HABILITAR Y DESHABILITAR SERVICIO DESDE CLI ASTERISK:


Habilitar (aadir CFWD a AsteriskDB):
*CLI> database put CFWD <nmero_720> <nmero_a_desviar>

Deshabilitar (quitar CFWD a AsteriskDB):


*CLI> database del CFWD <nmero_720>

Ver registros habilitados:


*CLI> database show CFWD

S-ar putea să vă placă și