You are on page 1of 17

>>>>>>>>>>>>>>>>>>>> CURSO DE ASTERISK <<<<<<<<<<<<<<<<<<<<<<< CAPITULO 1 - Instalación de Debian - Instalacion de funciones: SSH CAPITULO 2 - Ingreso SSH e Introduccion a Asterisk

- Verificar puertos con las Interfaces de red netstat -ntpl Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Addr PID/Program name tcp 0 0 0.0.0.0:2222 0.0.0.0:* 2106/sshd tcp 0 0 0.0.0.0:111 0.0.0.0:* 867/portmap tcp 0 0 127.0.0.1:631 0.0.0.0:* 1165/cupsd tcp 0 0 127.0.0.1:25 0.0.0.0:* 1422/exim4 tcp 0 0 0.0.0.0:35203 0.0.0.0:* 879/rpc.statd tcp6 0 0 :::2222 :::* 2106/sshd tcp6 0 0 ::1:631 :::* 1165/cupsd tcp6 0 0 ::1:25 :::* 1422/exim4

ess

State LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN

netstat -ntpl | grep ssh LISTEN LISTEN tcp 0 2106/sshd tcp6 0 2106/sshd 0 0.0.0.0:2222 0 :::2222 0.0.0.0:* :::*

- Cambiar Contraseña de un usuario passwd usuario - Modificar los Repositirios (forzar escritura :wq!) deb http://ftp.us.debian.org/debian/ squeeze main contri b non-free deb-src http://ftp.us.debian.org/debian/ squeeze main co ntrib non-free #SECURITY deb http://security.debian.org/ squeeze/updates main con trib non-free deb-src http://security.debian.org/ squeeze/updates main contrib non-free #UPDATE deb http://ftp.us.debian.org/debian/ squeeze-proposed-up dates main contrib non-free deb-src http://ftp.us.debian.org/debian/ squeeze-propose d-updates main contrib non-free

Instalar VIM apt-get install sudo vim .Brindarle permisos root a un usuario sudo su [sudo] password for hector: ********** ///////// Instalar dependencias de Asterix (3) ///////// apt-get install build-essential libxml2-dev ncurses-dev ///////// Sitio Oficial ///////// www.org/debian/ experimental main vim /etc/apt/sources.#MULTIMEDIA deb http://www.list aptitude update | apt-get update .Impedir acceso de root por ssh vim /etc/ssh/sshd_config #What ports...11-cert1.8.asterisk.8.gz .debian. IPs and protocols we listen for Port 22 (2222) #Authentication: PermitRootLogin yes (no) .org sid main non-free #EXPERiMENTAL deb http://ftp.Aumentar privilegios de Usuario vim /etc/sudoers #User privilege specification root ALL=(ALL) ALL hector ALL=(ALL) ALL .asterisk.11 source tarball http://downloads.tar.debian.obtener los paquetes wget http://downloads.org/debian/ experimental main deb-src http://ftp.asterisk.debian-multimedia.Listado de Usuarios cat /etc/passwd hector:x:1000:1000:hector contreras.:/home/hector:/bin /bash .Ingresar al scr cd /usr/scr .org asterisk 1.org/pub/telephony/certified-asterisk/releases/ certified-asterisk-1.org/pub/telephony/certified-aster .

11-cert1.gz cd asterisk-1.tar.tar.tar.Descargamos mpg123 wget http://cdnetworks-us-2.Comenzamos el proceso de compilación . ---> Add-ons (See README-addons.1/ .8.1.bz2 cd mpg123.No ubicamos en nuestro servidor en la ruta /usr/src/ allí fue donde desc argamos los paquetes de asterisk cd /usr/src/ .4 .8.Descomprimimos e ingresamos al directorio tar -xjvf mpg123-1.1.sourceforge.dl.4.isk/releases/certified-asterisk-1.bz2 ./configure make make install ///////// INSTALACIÓN DE ASTERIX ///////// .4.4/mpg123-1.Ejecutamos el comando: .13.tar.Ejecutamos: make menuselect debe aparecer un mensaje como este: ************************************************** Asterisk Module and Build Option Selection ************************************************** Press 'h' for help.gz CAPITULO 3 .Descomprimimos el paquete de asterisk que descargamos en el capítulo ant erior./configure con este comando se validarán las librerías y dependencias de nuestro serv idor para que asterisk pueda ser compilado .13.net/project/mpg123/mp g123/1.13.13.8.Compilando Asterisk ///////// Configurar Libreria de decodificación de archivos MP3s ///////// .txt) .9.9. tar -xzvf asterisk-1.

. [ ] [ ] [ ] [*] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [*] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] --. por ahora ún icamente vamos a ir a Core Sound Packages y Extra Sound Packages. allí habilitamos la opción C ORE-SOUNDS-ES-GSM y EXTRA-SOUNDS-EN-GSM respectivamente (para seleccionar se utiliza la ba rra espaciadora).Applications Bridging Modules Call Detail Recording Channel Event Logging Channel Drivers Codec Translators Format Interpreters Dialplan Functions PBX Modules Resource Modules Test Modules Compiler Flags Voicemail Build Options Utilities AGI Samples Module Embedding Core Sound Packages Music On Hold File Packages Extras Sound Packages ..Aquí vamos a seleccionar los módulos que cargaremos a Asterisk. More .unspecified --CORE-SOUNDS-EN-WAV CORE-SOUNDS-EN-ULAW CORE-SOUNDS-EN-ALAW CORE-SOUNDS-EN-GSM CORE-SOUNDS-EN-G729 CORE-SOUNDS-EN-G722 CORE-SOUNDS-EN-SLN16 CORE-SOUNDS-EN-SIREN7 CORE-SOUNDS-EN-SIREN14 CORE-SOUNDS-ES-WAV CORE-SOUNDS-ES-ULAW CORE-SOUNDS-ES-ALAW CORE-SOUNDS-ES-GSM CORE-SOUNDS-ES-G729 CORE-SOUNDS-ES-G722 CORE-SOUNDS-ES-SLN16 CORE-SOUNDS-ES-SIREN7 CORE-SOUNDS-ES-SIREN14 CORE-SOUNDS-FR-WAV CORE-SOUNDS-FR-ULAW CORE-SOUNDS-FR-ALAW . ************************************************** Asterisk Module and Build Option Selection ************************************************** Press 'h' for help. ************************************************** ...

Ejecutamos los siguientes comandos para compilar asterisk -> compilamos con: -> Instalamos programas y módulos con: tall make make ins . or Enter S to save your changes. [ ] [ ] [ ] [*] [ ] [ ] [ ] [ ] [ ] --.sh .It appears you have made some changes.Asterisk Module and Build Option Selection ************************************************** Press 'h' for help. Enter N to cancel your decision to quit. GSM format Support Level: unspecified ************************************************** Asterisk Module and Build Option Selection ************************************************** Press 'h' for help.unspecified --MOH-OPSOUND-WAV MOH-OPSOUND-ULAW MOH-OPSOUND-ALAW MOH-OPSOUND-GSM MOH-OPSOUND-G729 MOH-OPSOUND-G722 MOH-OPSOUND-SLN16 MOH-OPSOUND-SIREN7 MOH-OPSOUND-SIREN14 opsound. and you have opted to Quit without saving these cha nges! Please Enter Y to exit without saving.Ejecutamos: contrib/scripts/get_mp3_source.Instalamos subversion apt-get install subversion . and exit Y ///////// Instalar Soporte para MP3 ///////// . and keep working in menuselect. ARE YOU SURE? --.org Music On Hold Files.

AMI (Asterisk Manager Interface ///////// Modelos Cliente/Servidor Prog Cliente se conecte x TCP leer eventos y ejecutar comandos .11-cert1.d/asterisk status CAPITULO 4 .AGI .2012 Digium.-> Instalamos los archivos de ejemplo de asterisk con: make sam ples -> Instalamos los scripts para que asterisk inicie con nuestro servidor tras los reinicios con: make con fig -> Instalamos logrotate para la rotación de los logs: tall-logrotate . Copyright (C) 1999 .verificamos su estado /etc/init.Iniciamos el servicio de Asterix /etc/init.d/asterisk start .Arquitectura de Asterisk ///////// ARQUITECTURA ///////// DAHDI CLI PBX CORE DIAL PLAN APLICATIONS / / CDR A&V RESOURCES \ \ FORFILE CONFSYS SIP IAX2 H323 ManInt make ins ///////// NUCLEO ///////// -Carga modulos -Provee tiepos del sistema -Lee archivos de configuracion -Ejecuta Aplicaciones -Procesa peticiones -Crea instancias de los canales -Conversion entre formatos cades protocolos ///////// INTERFACES ///////// .Reiniciar Sistema .Consultar estado .CLI .Comando para ingresar a Asterisk por CLI asterisk -r Asterisk 1.Actualizar valores ///////// conectar a Asterisk ///////// .8. .

with components licensed under th e GNU General Public License version 2 and other licenses.8. ======================================================== ================= Connected to Asterisk 1. type 'core s how warranty' for details.com> Asterisk comes with ABSOLUTELY NO WARRANTY. Created by Mark Spencer <markster@digium. and others. you are welcome to redistribute it under certain conditions.Inc. This is free software. Type 'core show license' for details .11-cert1 currently running on SvrAsterix (pid = 32641) SvrAsterix*CLI> asterisk -rvvvv (modo vervose) > Ayuda sobre los comandos de Asterisk SvrAsterix*CLI> help ! agent logoff agent show agent show online agi dump html agi exec agi set debug [on|off] agi show commands [topic] aoc set debug calendar dump sched calendar show calendar calendar show calendars cc cancel cc report status cdr show status cel show status channel originate channel redirect channel request hangup cli check permissions cli reload permissions cli show aliases cli show permissions config list ile config reload iguration file core abort shutdown core clear profile core ping taskprocessor core reload core restart gracefully core restart now core restart when convenient core set debug channel core set {debug|verbose} core show applications [like|d Force a reload on modules using a particular conf Cancel a running shutdown Clear profiling info Ping a named task processor Global reload Restart Asterisk gracefully Restart Asterisk immediately Restart Asterisk at empty call volume Enable/disable debugging on a channel Set level of debug/verbose chattiness Shows registered dialplan applications Execute a shell command Sets an agent offline Show status of agents Show all online agents Dumps a list of AGI commands in HTML format Add AGI command to a channel in Async AGI Enable/Disable AGI debugging List AGI commands or specific help enable cli debugging of AOC messages Dump calendar sched context Display information about a calendar Show registered calendars Kill a CC transaction Reports CC stats Display the CDR status Display the CEL status Originate a call Redirect a call Request a hangup on a given channel Try a permissions config for a user Reload CLI permissions config Show CLI command aliases Show CLI permissions Show all files that have loaded a configuration f .

or specific help on a command Show dialplan hints Show dialplan hint Displays image formats Show the license(s) for this copy of Asterisk Display profiling info Show some core settings Show alternative switches Show System Information List instantiated task processors and statistics Show running threads Display translation matrix Show uptime information Display version info Show the warranty (if any) for this copy of Aster Gracefully shut down Asterisk Shut down Asterisk immediately Shut down Asterisk at empty call volume Wait for Asterisk to be fully booted Data API get Show data providers Removes database key/value Removes database keytree/values Gets database value Adds/updates database value Shows database contents Shows database contents Change a custom device state List currently known custom device states Add new extension into context Add new ignore pattern Include context in other context Show fast extension pattern matching data structu Reload extensions and *only* extensions Remove a specified extension Remove ignore pattern from context Remove a specified include from context Save current dialplan into a file Set a channel variable Use the Old extension pattern matching algorithm. Use the New extension pattern matching algorithm.core show application core show calls [uptime] core show channels [concise|ve core show channel core show channeltypes core show channeltype core show codecs [audio|video| core show codec core show config mappings ines) core show file formats core show file version [like] core show functions [like] core show function core show help core show hints core show hint core show image formats core show license core show profile core show settings core show switches core show sysinfo core show taskprocessors core show threads core show translation core show uptime [seconds] core show version core show warranty isk core stop gracefully core stop now core stop when convenient core waitfullybooted data get data show providers database del database deltree database get database put database show database showkey devstate change devstate list dialplan add extension dialplan add ignorepat dialplan add include dialplan debug res dialplan reload dialplan remove extension dialplan remove ignorepat dialplan remove include dialplan save dialplan set chanvar dialplan set extenpatternmatch dialplan set extenpatternmatch dialplan set global dialplan show chanvar dialplan show globals Describe a specific dialplan application Display information on calls Display information on channels Display information on a specific channel List available channel types Give more details on that channel type Displays a list of codecs Shows a specific codec Display config mappings (file names to config eng Displays file formats List versions of files used to build Asterisk Shows registered dialplan functions Describe a specific dialplan function Display help list. Set global dialplan variable Show channel variables Show global dialplan variables .

enable.dialplan show Show dialplan dnsmgr refresh Performs an immediate refresh dnsmgr reload Reloads the DNS manager configuration dnsmgr status Display the DNS manager status event dump cache Dump the internal event cache (for debugging) fax set debug {on|off} Enable/Disable FAX debugging on new FAX sessions fax show capabilities Show the capabilities of the registered FAX techn ology modules fax show session Show the status of the named FAX sessions fax show sessions Show the current FAX sessions fax show settings Show the global settings and defaults of both the FAX core and technology modules fax show stats Summarize FAX session history fax show version Show versions of FAX For Asterisk components features reload Reloads configured features features show Lists configured features file convert Convert audio file group show channels Display active channels with group(s) hangup request <no description available> help <no description available> http show status Display HTTP server status iax2 provision Provision an IAX device iax2 prune realtime Prune a cached realtime lookup iax2 reload Reload IAX configuration iax2 set debug {on|off|peer} Enable/Disable IAX debugging iax2 set debug jb {on|off} Enable/Disable IAX jitterbuffer debugging iax2 set debug trunk {on|off} Enable/Disable IAX trunk debugging iax2 set mtu Set the IAX systemwide trunking MTU iax2 show cache Display IAX cached dialplan iax2 show callnumber usage Show current entries in IP call number limit tabl e iax2 show channels List active IAX channels iax2 show firmware List available IAX firmware iax2 show netstats List active IAX channel netstats iax2 show peer Show details on specific IAX peer iax2 show peers List defined IAX peers iax2 show provisioning Display iax provisioning iax2 show registry Display IAX registration status iax2 show stats Display IAX statistics iax2 show threads Display IAX helper thread info iax2 show users [like] List defined IAX users iax2 test losspct Set IAX2 incoming frame loss percentage iax2 unregister Unregister (force expiration) an IAX2 peer from t he registry indication add Add the given indication to the country indication remove Remove the given indication from the country indication show Display a list of all countries/indications local show channels List status of local channels logger mute Toggle logging output to a console logger reload Reopens the log files logger rotate Rotates and reopens the log files logger set level {DEBUG|NOTICE Enables/Disables a specific logging level for thi s console logger show channels List configured log channels manager reload Reload manager configurations manager set debug [on|off] Show. disable debugging of the manager co de manager show command Show a manager interface command manager show commands List manager interface commands manager show connected List connected manager interface users .

members. Used to test the RealTime update2 method <no description available> Enable/Disable RTCP debugging Enable/Disable RTCP stats Enable/Disable RTP debugging Set or show the say mode Send a notify packet to a SIP peer Prune cached Realtime users/peers Send an OPTIONS packet to a peer Reload SIP configuration Enable/Disable SIP debugging Enable/Disable SIP history List active SIP channels or subscriptions List statistics for active SIP channels Show detailed SIP channel info List our local SIP domains Show SIP dialog history List all inuse/limits Show MWI subscriptions List all SIP object allocations List defined SIP peers Show details on specific SIP peer List SIP registration status Present a report on the status of the scheduler q Show SIP global settings List TCP Connections List defined SIP users Show details on specific SIP user Unregister (force expiration) a SIP peer from the . queue rules.conf Delete a row from a RealTime database Used to print out RealTime variables. Store a new row into a RealTime database Used to update RealTime variables. or parameter Removes a channel from a specified queue Reset statistics for a queue Set penalty for a channel of a specified queue Show status of a specified queue Pause or unpause a queue member Show the rules defined in queuerules.manager show eventq manager show settings manager show users manager show user mixmonitor {start|stop} module load module reload module show [like] module unload moh reload moh show classes moh show files no debug channel originate parkedcalls show pri intense debug span queue add member queue reload {parameters|membe s queue remove member queue reset stats queue set penalty queue show queue {pause|unpause} member queue show rules realtime destroy realtime load realtime store realtime update realtime update2 reload rtcp set debug {on|off|ip} rtcp set stats {on|off} rtp set debug {on|off|ip} say load [new|old] sip notify sip prune realtime [peer|all] sip qualify peer sip reload sip set debug {on|off|ip|peer} sip set history {on|off} sip show {channels|subscriptio sip show channelstats sip show channel sip show domains sip show history sip show inuse sip show mwi sip show objects sip show peers sip show peer sip show registry sip show sched ueue sip show settings sip show tcp sip show users sip show user sip unregister registry List manager interface queued events Show manager global settings List configured manager users Display information on a specific manager user Execute a MixMonitor command Load a module by name Reload configuration for a module List modules and info Unload a module by name Reload MusicOnHold List MusicOnHold classes List MusicOnHold file-based classes Disable debugging on channel(s) <no description available> List currently parked calls <no description available> Add a channel to a specified queue Reload queues.

Entrar a Directorio de Asterisk cd /etc/asterisk .1 !cat /etc/asterisk/sip.conf > Recargar la configuración de Asterisk core reload > Detiene el Nucleo de Asterisk core stop now .com | SIP | Wi-Ma-Li | CAPITULO 5 .conf (Donde se crean los dispositivos SIP) mv sip.Crear nuevo Archivo .3cx.Linphone .Configuración de Extenciones SIP ///////// PBX Basico con 2 Extensiones ///////// -Requerimientos Servidor Asterix SoftPhone .Inicia el Nucleo de Asterisk /etc/init.168.zoiper.Trabajar con Archivos de Configuración sip.conf sip.com | wi-li-Ma-So | 3CX | www.com | Wi-Ip-An | X-Lite | www.d/asterisk start > Nivel de detalle desde CLI Asterisk de 3 a 20 core set verbose 20 > Muestra todas las aplicaciones disponibles en Asterisk core show applications ///////// Softphones Gratuitos ///////// + + + + + Linphone | www.com/x-lite.org | SIP | Wi-Li-Ma-Bl-Ip-An | Zoiper | www.linphone.html | Wi-Ma | Blink | icanblink.1.original (Renombrar el archivo original) .counterpath.stun set debug {on|off} timing test udptl set debug {on|off|ip} ulimit voicemail reload voicemail show users voicemail show zones Enable/Disable STUN debugging Run a timing test Enable/Disable UDPTL debugging Set or show process resource limits Reload voicemail configuration List defined voicemail boxes List zone message formats > Ejecutar comandos de Linux dentro del Shell de Asteriks se antepone el signo ! !ping 192.conf.

Deshabilita llamadas sin autentificación svrlookup=yes udpbindaddr=0.LinPhone Your SIP Identy: SIP Proxy address: Registrer at startup Password: sip:telefono1@192.invite context=users ///////// Ingresar a CLI Asterisk ///////// .conf [general] context=default allowguest=no .Editar archivo de extensiones mv extensions.original (renombrar archivo o .168.11 yes Passw0rd1 > Verificar la alta del dispositivo sip show peers > Verificar el detalle del dispositivo sip show peers telefono1 ///////// Configurar Archivo de extensiones ///////// .0.168.conf extensions.1.11 sip:192.1.0.0 trasnsport=udp [telefono1] type=friend secret=Passw0rd1 host=dynamic insecure=port.invite context=users [telefono2] type=friend secret=Passw0rd2 host=dynamic insecure=port.Ingresa a la Consola asterisk -rvvvvvv > Reconfigurar el comando SIP sip reload > Mostrar los dispositivos configurados sip show peers ///////// Configurar el SoftPhone ///////// .vim sip.conf.

Permite dividir el DialPlan en diferentes caracteristicas .Prioridades .1.conf) .Llamar de las extensiones P/E 2002 a la 2001 CAPITULO 6 .conf .Extenciones (extensions.riginal) vim extensions.Dial(SIP/telefono1.Configura los Contextos [users] exten => 2001.20) exten => 2001.Introducción al DialPlan ///////// Que es el Dialplan ///////// Es el corazon de PBX Coleccion de contextos Provee la logica del Sistema Consiste en una lista de Instrucciones * Al marcar a una extension el plan puede: Contestar Colgar Buzon de Voz ///////// Componentes ///////// -Contextos .UO de nivel superior .Permite establecer reglas y servicios a los usuarios PBX ***** Sintaxis ***** .Aplicaciones ///////// Contextos ///////// .Dial(SIP/telefono1.1.20) > Recargar la configuración de la extensiones dentro CLI Asterisk dialplan reload > Mostrar configuracion del dialplan dialplan show ///////// REALIZAR LA LLAMADA ///////// .General Setting for Extensions [general] static=yes writeprotect=no autofallthrough=yes clearglobalvars=no priorityjumping=no [globlas] .

Una extension es un conjunto de acciones ***** Sintaxis ***** exten => nombre(exten).1.conf([andhector]context=users -->|extensions.haga paso 1 exten => 1001.2.1.haga paso 2 exten => 1001.1.[contexto] [LlamadasInternas] [Usuarios] [LlamadasdeSalida] [Usuarios] exten => 1001.VoiceMailMain() exten => 1011.D(S/T)) CAPITULO 7 .prioridad.1.n.haga otra cosa ///////// Aplicaciones ///////// .1.1.Dial(SIP/dr_zoiper) ///////// Extensiones ///////// .Interactuando con el Dialplan ///////// Crear aplicacion Hola Mundo ///////// .No es solamente un telefono o puerto del PBX .Cada paso es procesado en orden secuencial .La prioridad debe iniciar siempre con 1 ***** Ejemplos ***** exten => 1001.haga paso 1 exten => 1001.Cada extension contiene un numero de pasos con un num prioridad .Directory() exten => 1001.Cada prioridad en el dialplan invoca una aplicacion .1.Dial(SIP/dr_3cx) include => opciones [opciones] exten = 1010.1.Dial(SIP/dr_zoiper) ///////// Prioridades ///////// .conf([users]ex ten => 2001.3.aplicacion exten => 1001.haga paso 2 exten => 1001.haga otra cosa exten => 1001.1.Dial(SIP/dr_zoiper) exten => 1002.n.Las aplicaciones realizan trabajos en las llamadas: Contestar o colgar llamada Reproducir sonidos Servir de puente entre llamadas Enviar una llamada a la cola ir al buzon de voz telefono|sip.

n.2002 para crear la exten sion virtual) [users] include => aplicaciones [Aplicaciones] exten => 9999.Hangup() a cuelga la llamad h (hangup) colgo Regresa (goto) e Llama la grabaci Llama la grabaci Regresa (goto) e Llama la grabaci Llama la grabaci Esperar la respu Grabacion o Llama un audio l Llama un audio l Espera un tiempo Contesta la llam .Background(press-1) lamada presione 1 exten => s.conf vim extensions.n.1) xtension "s" prioridad 1 exten => 2.WaitExten(3) esta durante tiempo (3) exten => 1..n.conf vim extensions.Playback(you-entered) on you-entered exten => 2.Hangup() > Ingresamos a la CLI dialplan reload ///////// creal el menu ///////// > ingresar a CLI y editar archivo extensions.1.NoOp (mensaje) exten => h.1.Playback(en/hello-world) ./var/lib/asterisk/sounds .Background(press-2) lamada presione 2 exten => s.n.1) xtension "s" prioridad 1 exten => h.Goto(s.Ingresar y editar el archivo extensions.Wait(1) (1) exten => s.La llamada va ser contestada a utomaticamente exten => 9999.n.Background(or) exten => s.1.conf (debajo de las extenciones 2001.1) [menu1] exten => s.n.n.1.n.Playback(digits/1) on de digito 1 exten => 1.Playback(digits/2) on de digito 2 exten => 2.n.Goto(menu1.1.n.conf [aplicaciones] exten => 9998.n.Answer() .s.1.Answer() ada exten => s.NoOP(Usuario a colgado!) .Reproduce un a udio exten => 9999.n.Goto(s.Playback(you-entered) on you-entered exten => 1.

1.VoiceMail(3001@default) [aplicaciones] exten => 9500.Hangup() CAPITULO 8 .Ingresar al archivo "voicemail. hector.n.Verificamos la creacion de los Archivos /var/spool/asterisk/voicemail/default/3005/INBOX msg0000.VoiceMailMain(@default) tar usuario y pass .n. PC Windows 7.dr4c0k@gmail.Answer() exten => 9500.Goto(s. Hector Contreras.conf" [default] 3001 => 7419635.3005 .Numero de la Extencion --> 9500 .com 3005 => 1478965.Contraseña 9500 .com ///////// Asignar los buzones a las extenciones ///////// .conf reload > voicemail.Debajo de las configuraciones de los SIP [andhector] mailbox=3001@default [pchabit] mailbox=3002@default ///////// Agregar los voicemail al dialplan ///////// .exten => t.con reload ///////// una vez relizado la grabacion del voicemail ///////// .Dial(SIP/andhector) exten => 2001.Numero de Voicemail .Playback(too-low) bacion demaciado lento exten => t.mensajes borrar escuchar ///////// Recargamos las configuraciones ///////// > sip.1478965 Menu para consul .Configurando Buzones de Voz ///////// Buzones de voz a extenciones ///////// t (time out) gra vuelve al menu i (invalido) aud cuelga .txt msg0000.Debajo de las extenciones se coloca el llamado a voicemail exten => 2001. khal_el@hotmail.1) exten => i.n.1.Playback(pbx-invalid) io opcion invalida exten => i.1.1.wav ///////// Consultar el Voicemail ///////// .n.

9999.Se genera una Extencion 9001 para generar el archivo bienvenida.n.n.Goto(Users.n.1.1.Answer() exten => s.1.escuchar mensaje CAPITULO 9 .Hangup() exten => i.2001.gsm) 9991.conf [svr-soporte] exten => s.1) exten => t.1) exten = 3.s.Goto(s.2003.1.Wait(0.Creando un IVR ///////// Creando el menu ///////// .1.5) 9991.Goto(ivr-soporte.Goto(s.1.n.n(Background(Bienvenidos) exten => s.n.Answer() 9991.1.Wait(1) exten => s.1) .WaitExten(5) exten = 1.1) exten = 4.Goto(Users.Playback(en/pbx-invalid) exten => i.1 .2002.n.1.n.Goto(Users.Playback(bienvenida-soporte) 9991.Playback(en/goodbye) exten => t.gsm pa ra grabarlo exten exten exten exten exten exten => => => => => => 9991.1) ///////// Generar los Archivos de Auido ///////// .Wait(0.1.n.5) 9991.1) exten = 2.1.n.edita el archivo extensions.Record(bienvenida-soporte.1) exten = *.Hangup() ///////// Activar la extencion 9000 para el menu principal ///////// exten => 9000.Goto(aplicaciones.