Hace algunos años, estuve trabajando con el proyecto Asterisk. En ese momento no existía la telefonía IP actual con las compañías de teléfonos y las tarifas planas eran un sueño. Entonces se trabajaba a través de canales que conmutaban y sacaban las llamadas a través de lineas analógicas.
Recientemente he recuperado el proyecto para intentar registrar mi linea SIP de mi compañía en mi casa dando las múltiples opciones que una centralita permite.
El primer problema aparece cuando intentamos sacar los datos de la cuenta SIP. Todas las compañías en España, tienen prohibido facilitar a los usuarios los datos de su conexión, viva por la libertad de uso de los servicios que pagamos!
Tras este paso, conseguir los datos de la cuenta SIP y de paso los del registro de la fibra, podíamos pasar al siguiente paso. Aunque posteriormente haré algún post sobre esto, ya que por cambio de residencia me veré obligado de nuevo a sacar los datos de la compañía que toque y sera otra odisea ya que ahora han complicado mas aun esta tarea.
Bien volviendo al tema de VoIP. Tras varias pruebas, pasando por FreePBX y Issabel, sin conseguir prácticamente nada, solo llamadas entrantes, llegue a la conclusión tras leer varios foros, de que la única manera de tener el registro de la linea SIP estable es con Asterisk sin entorno gráfico y con soporte PJSIP.
Segundo problema. Que la versión de PJSIP, sea compatible con la version de ASterisk.
Actualmente tengo funcionando Asterisk en su versión 13.21-cert3 junto a PJSP en su versión 2.4.5.
Ha sido lanzada la versión estable de Asteriskl 16 que en teoría permite la instalación de PJSIP de forma automatizada. Y esas pruebas son las que actualmente estoy haciendo. Pero centrándonos en Asterisk 13, anterior versión estable, tras varias semanas de consultas por foros, llegue a este concrétamente:
https://www.sinologic.net/2016-03/como-instalar-configurar-pjsip-en-asterisk-13.html
Inicialmente instale la versión de Raspbian mas actual, concrétamente la RASPIAB STRETCH LITE.
https://www.raspberrypi.org/downloads/raspbian/
El programa que uso para grabar la imagen en la SD es Etcher, solo seleccionamos imagen, destino y adelante.
Posteriormente y antes de nada se configura la región, teclado e idioma con el comando
- raspi-config
Aquí podemos ver como se configura este menuú en castellano: Configuración básica Raspbian
Dentro del mismo habilitamos el soporte SSH y configuramos el idioma.
Posteriormente habilitamos el acceso de root por este método.
Para ello vamos a modificar el archivo sshd_config:
- cd /etc/ssh
- nano sshd_config
Vamos a la linea #PermitRootLogin without-password y la cambiamos por PermitRootLogin yes
Recordad, que para guardar con nano, pulsamos Ctrl+O y aceptamos, posteriormente salimos con Ctrl+X.
Reiniciamos la raspberry:
-Reboot now
También modifico las contraseñas con passwd. Tanto la de pi, como la de root, para la que haremos sudo su, y posteriormente passwd.
Además actualizaremos el sistema con los siguientes comandos:
- sudo apt-get -y update
- sudo apt-get -y upgrade
- sudo rpi-update
Ahora ya podemos instalar nuestro Asterisk!
Empezamos instalando el proyecto PJSIP:
Instalamos las dependencias mínimas
- apt-get -y install git aptitude bzip2 wget
Ahora iniciamos la instalación del proyecto
cd /usr/src wget -c "http://www.pjsip.org/release/2.4.5/pjproject-2.4.5.tar.bz2"
tar xvfj pjproject-2.4.5.tar.bz2
cd pjproject-2.4.5
./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr CFLAGS='-O2 -DNDEBUG'
make dep && make && make install
Ahora podemos instalar Asterisk:
cd /usr/src
wget -c "http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.21.0.tar.gz"
tar xvfz asterisk-13.21.0.tar.gz
cd asterisk-13.21.0/contrib/scripts
./install_prereq install
cd /usr/src/asterisk-13.21.0
./configure
Ahora entraremos al menu de instalación de Asterisk, comprobaremos que esta el proyecto PJSIP y añadiremos los módulos que queramos.
cmake menuselect
cmake && make install
Se instala una mínima versión de Asterisk con PJSIP
make basic-pbx
make config
Reiniciamos
reboot
Ya tenemos instalado Asterisk, ahora a disfrutar!