Asterisk-addons que es y como se instala.

noviembre 25, 2008

Asterisk Addons es un paquete que permite integrar a nuestra central de telefonia ip, PICA tres funcionalidades muy importantes como son:

  1. Tener un registro de las llamadas en un database usando MySql (si deseamos con base de datos)
  2. Poder utilizar archivos MP3 para la musica en espera
  3. Añadir el protocolo H.323 fue diseñado con un objetivo principal: Proveer a los usuarios con tele-conferencias que tienen capacidades de voz, video y datos sobre redes de conmutación de paquetes.

A continuacion describire como se instala este archivo:

Damos los siguientes comandos:

make clean
./configure
make make install
make samples

Los diversos mensajes que arroja la compilacion cuando es satisfactorio, aqui estan:

./configure
[LD] res_config_mysql.o -> res_config_mysql.so
+—-    AsteriskAddons Build Complete   —-+
+                                             +
+    Addons has successfully been built .     +
+    If you would like to install it :        +
+                                             +
+                make install                  +
+———————————————+

make install

+—- AsteriskAddons Installation Complete —-+
+                                               +
+    Addons has successfully been installed.    +
+    If you would like to install the sample    +
+    configuration files (overwriting any       +
+    existing config files), run:               +
+                                               +
+               make samples                    +
+———————————————–+
make samples
[ferney@asterisk asteriskaddons-1.4.7]$ sudo make samples
mkdir -p /etc/asterisk
for x in configs/*.sample; do \
if [ -f /etc/asterisk/`basename $x .sample` ]; then \
if [ “y” = “y” ]; then \
if cmp -s /etc/asterisk/`basename $x .sample` $x ; then \
echo “Config file $x is unchanged”; \
continue; \
fi ; \
mv -f /etc/asterisk/`basename $x .sample` /etc/asterisk/`basename $x .sample`.old ; \
else \
echo “Skipping config file $x”; \
continue; \
fi ;\
fi ; \
/usr/bin/install -c -m 644 $x /etc/asterisk/`basename $x .sample` ;\
done

Aqui ya tenemos asterisk-addons instalado.


Anuncios

Que es libpri, compilar e instalar.

noviembre 21, 2008

Libpri permite dar soporte para conexiones digitales.

De acuerdo a la instalacion que desee hacer con asterisk, usted decide si sirve o no este paquete, por lo pronto la manera como se instala es al igual que los demas, pero en este caso solamente empleamos:

make y make install.

A continuacion un video de como compilamos libpri



Videos compilar asterisk

noviembre 21, 2008

A continuacion aparecen una serie de videos de la compilacion de asterisk:

Opcion make clean y ./configure:

Opcion make menuselect:

Opcion make y make install:

Opcion make samples y make progdocs:


Compilar asterisk, opcion make menuselect

noviembre 21, 2008

La opcion make menuselect al compilar el modulo de asterisk nos brinda las siguientes opciones:

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

1.  Applications
2.  Call Detail Recording
3.  Channel Drivers
4.  Codec Translators
5.  Format Interpreters
6.  Dialplan Functions
7.  PBX Modules
8.  Resource Modules
9.  Voicemail Build Options
10. Compiler Flags
11. Module Embedding
12. Core Sound Packages
13. Music On Hold File Packages
14. Extras Sound Packages

Empecemos ahora una por una y ver que opciones se escogen

1. aplications

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  app_adsiprog
[*] 2.  app_alarmreceiver
[*] 3.  app_amd
[*] 4.  app_authenticate
[*] 5.  app_cdr
[*] 6.  app_chanisavail
[*] 7.  app_channelredirect
[*] 8.  app_chanspy
[*] 9.  app_controlplayback
[*] 10. app_dahdibarge
[*] 11. app_dahdiras
[*] 12. app_dahdiscan
[*] 13. app_db
[*] 14. app_dial
[*] 15. app_dictate
[*] 16. app_directed_pickup
[*] 17. app_directory
[*] 18. app_disa
[*] 19. app_dumpchan
[*] 20. app_echo
[*] 21. app_exec
[*] 22. app_externalivr

[*] 23. app_festival

[*] 24. app_flash
[*] 25. app_followme
[*] 26. app_forkcdr
[*] 27. app_getcpeid
[*] 28. app_hasnewvoicemail
[*] 29. app_ices
[*] 30. app_image
[ ] 31. app_ivrdemo
[*] 32. app_lookupblacklist
[*] 33. app_lookupcidname
[*] 34. app_macro
[*] 35. app_meetme
[*] 36. app_milliwatt
[*] 37. app_mixmonitor
[*] 38. app_morsecode
[*] 39. app_mp3
[*] 40. app_nbscat
XXX 41. app_osplookup
[*] 42. app_page
[*] 43. app_parkandannounce
[*] 44. app_playback
[*] 45. app_privacy
[*] 46. app_queue

[*] 47. app_random

[*] 70. app_verbose
[*] 71. app_voicemail
[*] 72. app_waitforring
[*] 73. app_waitforsilence
[*] 74. app_while
[*] 75. app_zapateller

[*] 48. app_read
[*] 49. app_readfile
[*] 50. app_realtime
[*] 51. app_record
[ ] 52. app_rpt
[*] 53. app_sayunixtime
[*] 54. app_senddtmf
[*] 55. app_sendtext
[*] 56. app_setcallerid
[*] 57. app_setcdruserfield
[*] 58. app_settransfercapability
[ ] 59. app_skel
[*] 60. app_sms
[*] 61. app_softhangup
[*] 62. app_speech_utils
[*] 63. app_stack
[*] 64. app_system
[*] 65. app_talkdetect
[*] 66. app_test
[*] 67. app_transfer
[*] 68. app_url
[*] 69. app_userevent

2. Call Detail Recording

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  cdr_csv
[*] 2.  cdr_custom
[*] 3.  cdr_manager
[*] 4.  cdr_odbc
XXX 5.  cdr_pgsql
XXX 6.  cdr_radius
XXX 7.  cdr_sqlite
XXX 8.  cdr_tds

3. Channel Drivers
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

1.  Applications
2.  Call Detail Recording
—> 3.  Channel Drivers
4.  Codec Translators
5.  Format Interpreters
6.  Dialplan Functions
7.  PBX Modules
8.  Resource Modules
9.  Voicemail Build Options
10. Compiler Flags
11. Module Embedding
12. Core Sound Packages
13. Music On Hold File Packages
14. Extras Sound Packages

4. Codec Translators
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  codec_adpcm
[*] 2.  codec_alaw
[*] 3.  codec_a_mu
[*] 4.  codec_dahdi
[*] 5.  codec_g726
[*] 6.  codec_gsm
[ ] 7.  codec_ilbc
[*] 8.  codec_lpc10
XXX 9.  codec_speex
[*] 10. codec_ulaw

5. Format Interpreters
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  format_g723
[*] 2.  format_g726
[*] 3.  format_g729
[*] 4.  format_gsm
[*] 5.  format_h263
[*] 6.  format_h264
[*] 7.  format_ilbc
[*] 8.  format_jpeg
[*] 9.  format_ogg_vorbis
[*] 10. format_pcm
[*] 11. format_sln
[*] 12. format_vox
[*] 13. format_wav
[*] 14. format_wav_gsm

6. Dialplan Functions
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  func_base64
[*] 2.  func_callerid
[*] 3.  func_cdr
[*] 4.  func_channel
[*] 5.  func_curl
[*] 6.  func_cut
[*] 7.  func_db
[*] 8.  func_enum
[*] 9.  func_env
[*] 10. func_global
[*] 11. func_groupcount
[*] 12. func_language
[*] 13. func_logic
[*] 14. func_math
[*] 15. func_md5
[*] 16. func_moh
[*] 17. func_odbc
[*] 18. func_rand
[*] 19. func_realtime
[*] 20. func_sha1
[*] 21. func_strings
[*] 22. func_timeout
[*] 23. func_uri

7. PBX Modules
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  pbx_ael
[*] 2.  pbx_config
[*] 3.  pbx_dundi
XXX 4.  pbx_gtkconsole
[*] 5.  pbx_loopback
[*] 6.  pbx_realtime
[*] 7.  pbx_spool

8. Resource Modules

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  res_adsi
[*] 2.  res_agi
[*] 3.  res_clioriginate
[*] 4.  res_config_odbc
XXX 5.  res_config_pgsql
[*] 6.  res_convert
[*] 7.  res_crypto
[*] 8.  res_features
[*] 9.  res_indications
XXX 10. res_jabber
[*] 11. res_monitor
[*] 12. res_musiconhold
[*] 13. res_odbc
[*] 14. res_smdi
XXX 15. res_snmp
[*] 16. res_speech

9.  Voicemail Build Options
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

( ) 1.  ODBC_STORAGE
[*] 2.  IMAP_STORAGE //porque almacenaremos nuestros mensajes en ser. correo electronico

10. Compiler Flags
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[ ] 1.  DONT_OPTIMIZE
[ ] 2.  DEBUG_CHANNEL_LOCKS
[ ] 3.  DEBUG_THREADS
[ ] 4.  LOW_MEMORY
[ ] 5.  MALLOC_DEBUG
[ ] 6.  RADIO_RELAX
[ ] 7.  STATIC_BUILD
[ ] 8.  IAX_OLD_FIND
[*] 9.  LOADABLE_MODULES

11. Module Embedding

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  apps
[*] 2.  cdr
[*] 3.  channels
[*] 4.  codecs
[*] 5.  formats
[*] 6.  funcs
[*] 7.  pbx
[*] 8.  res

12. Core Sound Packages

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[ ] 1.  CORE-SOUNDS-EN-WAV
[ ] 2.  CORE-SOUNDS-EN-ULAW
[ ] 3.  CORE-SOUNDS-EN-ALAW
[ ] 4.  CORE-SOUNDS-EN-GSM
[ ] 5.  CORE-SOUNDS-EN-G729
[ ] 6.  CORE-SOUNDS-EN-G722
[*] 7.  CORE-SOUNDS-ES-WAV
[*] 8.  CORE-SOUNDS-ES-ULAW
[*] 9.  CORE-SOUNDS-ES-ALAW
[*] 10. CORE-SOUNDS-ES-GSM
[*] 11. CORE-SOUNDS-ES-G729
[*] 12. CORE-SOUNDS-ES-G722
[ ] 13. CORE-SOUNDS-FR-WAV
[ ] 14. CORE-SOUNDS-FR-ULAW
[ ] 15. CORE-SOUNDS-FR-ALAW
[ ] 16. CORE-SOUNDS-FR-GSM
[ ] 17. CORE-SOUNDS-FR-G729
[ ] 18. CORE-SOUNDS-FR-G722

13. Music On Hold File Packages
**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[*] 1.  MOH-FREEPLAY-WAV
[ ] 2.  MOH-FREEPLAY-ULAW
[ ] 3.  MOH-FREEPLAY-ALAW
[ ] 4.  MOH-FREEPLAY-GSM
[ ] 5.  MOH-FREEPLAY-G729
[ ] 6.  MOH-FREEPLAY-G722

14. Extras Sound Packages

**************************************************
Asterisk Module and Build Option Selection
**************************************************

Press ‘h’ for help.

[ ] 1.  EXTRA-SOUNDS-EN-WAV
[ ] 2.  EXTRA-SOUNDS-EN-ULAW
[ ] 3.  EXTRA-SOUNDS-EN-ALAW
[ ] 4.  EXTRA-SOUNDS-EN-GSM
[ ] 5.  EXTRA-SOUNDS-EN-G729
[ ] 6.  EXTRA-SOUNDS-EN-G722

Luego de dar las aopiones de make menuselect, procedemos a dar make y make install por separado y despues de compilar asterisk (algunos minutos), aparece un mensaje como el siguiente:

configure: creating ./config.status
config.status: creating build_tools/menuselect-deps
config.status: creating makeopts
config.status: creating channels/h323/Makefile
config.status: creating include/asterisk/autoconfig.h

.$$$$$$$$$$$$$$$=..
.$7$7..          .7$$7:.
.$$:.                 ,$7.7
.$7.     7$$$$           .$$77
..$$.       $$$$$            .$$$7
..7$   .?.   $$$$$   .?.       7$$$.
$.$.   .$$$7. $$$$7 .7$$$.      .$$$.
.777.   .$$$$$$77$$$77$$$$$7.      $$$,
$$$~      .7$$$$$$$$$$$$$7.       .$$$.
.$$7          .7$$$$$$$7:          ?$$$.
$$$          ?7$$$$$$$$$$I        .$$$7
$$$       .7$$$$$$$$$$$$$$$$      :$$$.
$$$       $$$$$$7$$$$$$$$$$$$    .$$$.
$$$        $$$   7$$$7  .$$$    .$$$.
$$$$             $$$$7         .$$$.
7$$$7            7$$$$        7$$$
$$$$$                        $$$
$$$$7.                       $$  (TM)
$$$$$$$.           .7$$$$$$  $$
$$$$$$$$$$$$7$$$$$$$$$.$$$$$$
$$$$$$$$$$$$$$$$.

configure: Package configured for:
configure: OS type  : linux-gnu
configure: Host CPU : i686
[ferney@asterisk asterisk-1.4.22]$

Si no aparece este mensaje, es porque no quedo bien compilado.


Compilar asterisk.

octubre 15, 2008

Que es compilar?

bueno, sabemos que estamos en un proyecto de grado donde todo se esta implementando, para esto debemos descargar las fuentes y compilarlas para que el sistema operativo reconozca la plataforma, en Linux se deben cumplir algunos pasos, pero valga la aclaracion, existen modulos en paquetes ya compilados o en .rpm o .deb (debian), pero para el caso del proyecto PICA se realizara esta operacion.

Casi siempre en todos los paquetes que se descargan para compilar existe un archivo denominado README y alli nos dice que debemos hacer, es importante primero suplir las dependencias del sistema operativo en cuanto a librerias para que se pueda lograr una satisfactoria compilacion.

Hay una serie de comandos para compilar que se explican aqui, y para asterisk se debe tener claro que:

1. Primero compilamos zaptel

2. Segundo compilamos asterisk

3. Tercero compilamos libpri

4. Compilamos asterisk addons

Los archivos vienen en formatos empaquetados y compresos .tar.gz y lo primero que se debe hacer es desempaquetarlos y descomprimirlos asi como en el siguiente ejemplo:

tar -xvzf zaptel.tar.gz

Este se desempaqueta creando un directorio donde vienen las instrucciones claras para compilar.


A compilar se dijo…

febrero 21, 2008

Primero que todo, verificamos el kernel, actualizamos el kernel al ultimo que este y sus respectivos paquetes rpm -q es el comando para verificar, mas NO para instalarlos, para eso se emplea un repositorio y la herramienta yum, asi:

xxxxx]$ sudo yum install nombre_paquete

y los que no tengan configurado sudo, sino que lo hacen directamente por el usuario root asi se realiza:

xxxxx]# yum install nombre_paquete

Atencion: debe tener repositorios configurados para utilizar la herramienta yum, en esta version de centos 5.2 todos estos paquetes se encuentran y verifique que el nuevo kernel corresponda a las versiones de kernel-devel y kernel-headers, de lo contrario NO se compilara.

Paquetes del kernel:

yum update kernel (actualizar kernel)

rpm -q kernel-devel
rpm -q kernel-headers
(estos paquetes deben tener la misma version del kernel, en caso de estar instalados con otra version, emplea el comando yum update)

Paquetes para instalar asterisk:

rpm -q xinetd
rpm -q libusb
rpm -q libusb-devel
rpm -q bison
rpm -q bison-devel
rpm -q ncurses
rpm -q ncurses-devel
rpm -q zlib
rpm -q zlib-devel
rpm -q openssl
rpm -q openssl-devel
rpm -q gnutls-devel
rpm -q gcc
rpm -q gcc-c++
rpm -q libtermcap
rpm -q libtermecap-devel
rpm -q newt
rpm -q newt-devel
rpm -q zlib
rpm -q zlib-devel
rpm -q libtool
rpm -q make

Paquetes por si deseamos interactuar con base de datos:

rpm -q mysql.i386
rpm -q mysql-connector-odbc.i386
rpm -q mysql-devel.i386
rpm -q mysql-server.i386
rpm -q unixODBC
rpm -q unixODBC-devel
rpm -q libtool-ltdl
rpm -q libtool-ltdl-devel

Nos ubicamos dentro del directorio donde desempaquetamos astersik version 1.4.21 y procedemos a compilar de la siguiente manera:

make clean
./configure
make menuselect
make install
make samples (instalar ejemplos)
make progdocs (instalar doxygen yum install doxygen)documentacion asterisk
make config

No olvidemos que si necesitamos un servicio imap debemos leer esta documentacion, ademas si necesitamos una base de datos, es importante primero configurar el odbc como aparece aqui, esto se hace ANTES DE COMPILAR.

Este video los ilustrara un poco mas.