Instalación de Linux en una memoria SD
Utilizaremos una memoria sd de 8Gb para la instalación
Se descargará la imagen del sitio web de raspbian (Distribución linux escogida para la instalación del software que correrá la centralita)
Desde la terminal se ejecutará el siguiente comando
Se descargará el archivo 2014-09-09-wheezy-raspbian.zip
Luego se ejecutará desde una terminal
#unzip 2014-09-09-wheezy-raspbian.zip
y se copiará la imagen hacia la memoria microSD
#dd if= 2014-09-09-wheezy-raspbian.img /dev/mmcblk0
Donde 2014-09-09-wheezy-raspbian.img es la imagen descomprimida y /dev/mmcblk0 es la memoria microSD en donde instalaremos el sistema operativo
dd no muestra ningún mensaje de error pero si todo salió bien se podrá ver algo como lo siguiente:
Luego insertamos la sd en la raspberry pi y deberá iniciar sin problemas
Para conectarnos vía ssh hacia la raspberry pi es necesario habilitar el servidor de ssh
y contar con un cliente ssh (en linux es probable que se encuentre instalado, en windows se puede utilizar putty)
Para conectarnos utilizaremos el comando
$ ssh pi@10.42.0.62
En donde pi es el usuario con el que iniciaremos sesion y 10.42.0.62 es la dirección ip de la raspberry.
Nos saldrá el siguiente mensaje
Aceptamos que si y veremos lo siguiente con lo cual todos los comandos que ejecutemos en esta consola serán ejecutados en la raspberry pi.
Instalación del software necesario para asterisk (librerías y soporte de hardware)
Primero necesitaremos descargar todo el software necesario para la instalación
Como son asterisk, freepbx, la librería dahdi, la libreria ss7 (libss7), la libreria pri (libpri)
Estas sirven para que la centralita se pueda comunicar con otro hardware de pbx dedicado asi como tener salida a la red de telefonia publica
Crearemos una carpeta en donde estará descargado todo el software que no instalemos desde los repositorios de debian
$mkdir software
Luego nos dirigimos al sitio web de asterisk en la sección de descargas podremos ver listadas las librerías y el software necesario para instalar
cambiamos al directorio donde guardaremos las descargas con $cd software y realizamos la descarga del software
DAHDI
$wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
Libss7
$wget http://downloads.asterisk.org/pub/telephony/libss7/libss7-2.0.0.tar.gz
Libpri
$wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz
Asterisk (versión 11 por cuestiones de estabilidad)
$wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz
Descomprimimos el software descargado con
DAHDI
$ tar -xzvf dahdi-linux-complete-current.tar.gz
Libss7
tar -xzvf libss7-1.0-current.tar.gz
Libpri
$ tar -xzvf libpri-1.4-current.tar.gz
Asterisk
$ tar -xzvf asterisk-11-current.tar.gz
movemos los archivos descomprimidos a la carpeta donde se encuentran las fuentes
moviendo las fuentes al directorio de fuentes /usr/local/src
# mv dahdi-linux-complete-2.10.0.1+2.10.0.1/ /usr/local/s
sbin/ share/ src/
# mv dahdi-linux-complete-2.10.0.1+2.10.0.1/ /usr/local/src/
# mv asterisk-11.14.1/ /usr/local/src/
# mv libpri-1.4.15/ /usr/local/src/
# mv libss7-1.0.2/ /usr/local/src/
root@raspberrypi:/home/pi/software# ls /usr/local/src/
asterisk-11.14.1 dahdi-linux-complete-2.10.0.1+2.10.0.1 libpri-1.4.15 libss7-1.0.2
Compilación DAHDI
Es posible que al querer compilar DAHDI no se encuentren disponibles las fuentes del kernel para la versión instalada de raspbian.
Por cuestiones de compatibilidad y ciertos errores que se dan al compilar DAHDI con el kernel instalado por defecto se utilizará el kernel 3.6 de linux y su respectivo código fuente con:
apt-get install linux-image-3.6-trunk-rpi linux-headers-3.6-trunk-rpi
editar el archivo /boot/config.txt
agregar las siguientes líneas al final del archivo
kernel=vmlinuz-3.6-trunk-rpi
initramfs initrd.img-3.6-trunk-rpi followkernel
Reiniciar la raspberry pi para que cargue este kernel 3.6
cambiarse al directorio /usr/local/src/dahdi-linux-complete-2.10.0.1+2.10.0.1
ejecutar los comandos
# make
# make install
# make config
compilación libpri (Es necesario antes haber instalado la libreria DAHDI)
cambiarse al directorio /usr/local/src/libpri-1.4.15/
ejecutar
# make
# make install
compilación librería libss7-1.0.2
cambiarse al directorio /usr/local/src/libss7-2.0.0/
ejecutar
# make
# make install
compilación asterisk
instalamos dependencias para compilación de asterisk
# apt-get install libsqlite3-dev libxml2-dev libncurses5-dev
iniciamos sesión como root o adquirimos permisos de root con sudo su
Nos movemos al directorio donde se encuentran las fuentes de asterisk
#cd /usr/local/src/asterisk-11.14.1/
se ejecuta el comando make
# make
y luego make install
# make install
Seguido de make config
# make config
Make config se encarga de agregar asterisk al inicio del sistema modificando los scripts rc.d
Instalación de freepbx
Freepbx es una interfaz gráfica web para configurar asterisk
Se obtiene la direccion de descarga a partir del sitio web de freepbx (http://www.freepbx.org/)
desde la raspberry se descarga el freepbx (Versión 2.11 por razones de estabilidad)
pi@raspberrypi ~/software $ wget http://mirror.freepbx.org/freepbx-2.11.0.40.tgz
se instalan los requerimientos de freepbx (un servidor apache, mysql y)
sudo apt-get install apache2 mysql-server php5 php5-cli php5-mysql php-pear libapache2-mod-php5 php5-gd php5-curl mysql-client
se agrega usuario de asterisk
Creamos el usuario para asterisk y asignamos los permisos necesarios
adduser asterisk --disabled-password --gecos
"Asterisk User"
chown
asterisk.
/var/run/asterisk
chown
-R asterisk.
/etc/asterisk
chown
-R asterisk.
/var/
{lib,log,spool}
/asterisk
chown
-R asterisk.
/usr/lib/asterisk
mkdir
/var/www/html
chown
-R asterisk.
/var/www/
Luego creamos las bases de datos de asterisk
# mysql -u root -p
create database asteriskcdrdb;
create database asterisk;
agregamos los permisos de acceso a la base de datos
mysql> GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'cos215';
mysql> GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'cos215';
Creamos la base de datos de asteriskcdrdb en base a los archivos de ejemplo de SQL de freepbx
mysql -u asteriskuser -pcos215 asteriskcdrdb < usr/local/src/freepbx/SQL/cdr_mysql_table.sql
Creamos la base de datos de asterisk en base a los archivos de ejemplo de SQL de freepbx
mysql -u asteriskuser -pcos215 asterisk < usr/local/src/freepbx/SQL/newinstall.sql
ejecutamos ./install_amp y seguimos las instrucciones
Freepbx funcionando
Si todo ha salido bien se tendrá asterisk funcionando y freepbx también para acceder a la interfaz de freepbx solo se tiene que poner la ip del dispositivo
y se verá la siguiente interfaz
Poniéndolo en español
Seleccionamos Advanced settings en el menu settings
Nos dirigimos a la sección GUI Behavior
y ponemos Show Language setting en true y guardamos haciendo click en la icono verde de cheque save
Se podra ver un menú de idiomas a la par de la opción de logout
Al seleccionar Spanish la interfaz cambiará a español (nota: la traducción al español de freepbx parece ser un tanto incompleta)
Creando extensiones
Seleccionamos Extensiones en Applications
Se mostrará una pantalla para añadir una extensión, para nuestro ejemplo crearemos una extensión utilizando SIP pero si desea crear una extensión IAX2 solo tiene que seleccionarlo del menú.
Las siguientes configuraciones sirven tanto si selecciono SIP o IAX.
Agregamos el número de la extensión y el nombre a mostrar
Y en la sección de dispositivo seleccionamos la contraseña para la extensión en la sección secret
Todos los demás valores se dejan con los valores por defecto. Finalmente seleccionamos enviar.
Podremos ver el numero y nombre de la extensión abajo del cuadro de cerrar sesión
INSTALANDO CLIENTES
Para revisar el funcionamiento de las extensiones creadas en asterisk por medio de FreePBX ocuparemos programas como EKIGA y ZOIPER que sirven para hacer videoconferencias, llamadas por VOIP entre otros.
Para instalar EKIGA en Debian se procede de la siguiente manera:
EKIGA se encuentra en los repositorios de debian por lo que ejecutamos lo siguiente en consola:
# aptitude install ekiga
Nos aparecera lo siguiente:
#Se instalarán los siguiente paquetes NUEVOS:
ekiga libcapi20-3{a} libodbc1{a} libopal3.10.4{a} libpt2.10.4{a}
Se ELIMINARÁN los siguientes paquetes:
gnash-common{u} libboost-program-options1.49.0{u}
libboost-thread1.49.0{u} libmozjs24d{u} xulrunner-24.0{u}
0 paquetes actualizados, 5 nuevos instalados, 5 para eliminar y 1 sin actualizar.
Necesito descargar 16,0 MB de ficheros. Después de desempaquetar se liberarán 23,0 MB.
¿Quiere continuar? [Y/n/?]
Presionamos Y y continuamos la instalación.
Una vez instalado habrimos EKIGA
Cuando es primera vez nos aparecera la siguiente ventana:
Presionamos adelante en toda la configuración. Habrán opciones que pedirá usuario y contraseña para los servicios que posee EKIGA en Internet pero podemos decirle que no los necesitamos.
Así lucirá la ventana de EKIGA:
Para agregar una cuenta SIP Editar->Cuentas:
Luego Cuentas-> Añadir Una cuenta SIP
Llenamos con los datos correspondientes de la extensión, y luego click en Aceptar, no olvidar que en servidor de registro se pone la direccion ip de la central telefonica para este caso 192.168.0.102
Si el servidor esta de asterisk esta correctamente configurado en la columna Estado aparece como Registrado.
Realice estos mismos pasos en cada máquina cliente, es decir una por extensión.
Para poder realizar llamadas escriba (en la pantalla principal de Ekiga) la extensión destino y haga clic en el icono del teléfono (verde). El cliente destino debe aceptar la llamada para que haya comunicación.
Por el momento Ekiga no soporta el protocolo IAX por lo que si creamos este tipo de extensiones debemos usar como cliente a Zoiper (que ademas soporta SIP tambien).
Para agregar la cuenta IAX nos dirigimos a Settings -> Create new account, en el nuevo menú seleccione, como tipo de cuenta, IAX y haga clic en NEXT. LLene el formulario con sus credenciales y vuelva hacer clic en NEXT y nuevamente en NEXT, si todo marcho bien su cuenta habrá sido verificada y agregada.
Referencias
- Guia de instalacion de freepbx http://wiki.freepbx.org/display/HTGS/Installing+FreePBX+on+Debian+Wheezy#InstallingFreePBXonDebianWheezy-InstallandConfigureFreePBX
- Asterisk: The Future of Telephony http://cdn.oreilly.com/books/9780596510480.pdf
No hay comentarios:
Publicar un comentario
Tu opinión es importante solo abstenerse de comentarios ofensivos, racistas y spam.