miércoles, 28 de diciembre de 2011

Voicemail (Correo de Voz) en Asterisk con Macro.


Hola a todos... Mis ultimas entradas estarán dedicadas a teléfono basada en Asterisk, ya que estaré realizando varios laboratorios para un proyecto que estoy instalando de asterisk con 3COM.

En esta ocasión estoy configurando la parte de Voicemail, recuerden que esta configuración la podría varias mientras entienda que sea mas eficiente.

Recuerden que debemos tener ya las extensiones configuradas, en caso de que no sepa pueden encontrar unos de mis post donde explico como hacerlo.

Manos a la obra:

1. Debemos hacer es preparar nuestro archivo "voicemail.conf", para esto realizamos los siguientes pasos:

# cd /etc/asterisk/

Ahora vamos a editar el archivo "voicemail.conf" y al final agregamos la extensiones que deseamos con su numero de extensión, password, nombre y correo. :

[buzon]
1000 => 1000, Prueba0,mi@correo.com
1001 => 1001, Prueba1,mi@correo.com


2. Ahora tenemos que decirle en "sip.conf",  que esta extension tiene mailbox, agregando a cada extension que deseamos que tenga voicemail la siguiente linea: "mailbox=3000@buzon"

[1000]
type=friend
secret=1000
context=local-sip
callerid=pbx1"Pruebas0"
host=dynamic
dtmfmode=rfc2833
nat=no
careinvite=no
disallow=all
allow=ulaw
mailbox=1000@buzon

[1001]
type=friend
secret=1001
context=local-sip
callerid=pbx1"Pruebas1"
host=dynamic
dtmfmode=rfc2833
nat=no
careinvite=no
disallow=all
allow=ulaw
mailbox=1000@buzon

3. Bien, ahora vamos a crear el plan de marcado para que todo pueda funcionar, esto se realiza en el "extensions.conf" (Recuerden; como le había comentado anteriormente en otro blog a mi me gusta trabajar con archivos totalmente en blanco).

Creamos el macro para no tener que hacer lo mismo una y otra vez.

[macro-correovoz]
exten => s,1,Dial(${ARG1},20,r)
exten => s,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail)
exten => s,n(unavail),Voicemail(u${MACRO_EXTEN})
exten => s,n,Hangup()
exten => s,n(busy),VoiceMail(b${MACRO_EXTEN})
exten => s,n,Hangup()


En nuestro contesto correspondiente a nuestra extensión agregamos la linea siguiente:

exten => _1000,1,Macro(correovoz,SIP/1000)
exten => _1001,1,Macro(correovoz,SIP/1001)

Tambien si queremos colocar algo global y no tener que estar colocando extensión por extensión, podemos hacer lo siguiente:


exten => _1XXX,1,Macro(correovoz,SIP/${EXTEN})

Ahora para poder revisar nuestros voicemail agregamos la siguiente linea:

exten => _*99,1,VoicemailMain()

Solo debemos reiniciar nuestro asterisk para aplicar estos cambios y luego realizar la pruebas en nuestro teléfono.

Listo. 

Si necesitan ayuda pueden dejar sus comentarios o comunicarce conmigo.

Saludos.-

Angel J. Reynoso
kp01 
Tel.: 829-997-4870
kp01aj@gmail.com

1 comentario: