Configurazione Asterisk su Linea Vodafone

Configurazione Asterisk su Linea VodafoneConfigurazione Asterisk su Linea Vodafone

Con questa guida si completa la trilogia su come configurare ed utilizzare il proprio modem e linea telefonica, senza utilizzare il terminale del proprio provider. Questo grazie alla delibera AGCOM 348/18/CONS, per il modem libero. Io ho gia creato con successo un centralino Asterisk funzionante su linea Telecom FTTH e FTTC, quello che mi mancava era la configurazione su Linea Vodafone, senza workaround. Io ho testato tutto sulla mia linea Vodafone FTTC, utilizzando un modem/router Asus DSL-AC68U. un raspberry pi 3, con RaspbianAsterisk 14 e FreePBX 14. Utilizzando questo sistema, adesso NON ci sarà più bisogno di moduli ATA, o di telefoni analogici collegati sulla tel1/fxs1, ma si sfrutta la propria rete, per avere Voip puro, con telefoni/App voip. Naturalmente servono le credenziali del proprio numero voip, da richiedere al 190 Vodafone.

Configurazione Trunk

Outgoing PEER Details:

type=peer
username=+3902xxxxxxx
secret=password_linea_voip
keepalive=yes
qualify=no
srvlookup=yes
auth=+390xxxxxxx@ims.vodafone.it
outboundproxy=voipN.fixed.vodafone.it
insecure=invite,port
host=ims.vofadone.it
fromuser=+3902xxxxxxx
fromdomain=ims.vodafone.it
dtmfmode=RFC2833
disallow=all
allow=alaw&ulaw
context=from-trunk

sopra ho messo qualify=no, insieme a keepalive=yes, altrimenti il trunk risultava quasi sempre Unreachable.

Incoming:

Register String:

+3902xxxxxxx@ims.vodafone.it:password_linea_voip:+3902xxxxxxx@ims.vodafone.it@83.224.127.3:5060/+3902xxxxxxx

Questo Trunk si autenticherà direttamente su SBC Vodafone.

In questo caso trattandosi di ip dinamico, nat=yes, in Settings-Asterisk Sip Settings-Chan Sip Settings.

Ready ?

enjoy 😉

Configurazione HT 503 con Asterisk 14 e FreePBX 14

 

Configurazione HT 503 con Asterisk 14 e FreePBX 14

Configurazione HT 503 con Asterisk 14 e FreePBX 14

Configurazione HT 503 con Asterisk 14 e FreePBX 14 

Dopo avere installato Asterisk 14 e Freepbx 14 su Raspbian Stretch Lite, ho dovuto configurare il modulo Ata Grandstream HT 503, con qualche differenza rispetto alla guida principale che avevo fatto un po' di tempo fa, e che comunque attualmente funziona con Asterisk 13 e Freepbx 13, ma "stranamente" non funzionante con la versione 14. In Freepbx sia il Trunk che le estensioni sono in chan_sip, ed ho camabiato la porta di default in 5060 in SIP Settings/Chan SIP Settings. Di seguito condividerò alcuni screenshots per una configurazione funzionante su HT 503:

IP HT 503=192.168.1.80
IP SERVER= 192.168.1.84

Configurazione HT 503 con Asterisk 14 e FreePBX 14 Configurazione HT 503 con Asterisk 14 e FreePBX 14Configurazione HT 503 con Asterisk 14 e FreePBX 14 Configurazione HT 503 con Asterisk 14 e FreePBX 14 Configurazione HT 503 con Asterisk 14 e FreePBX 14 Configurazione HT 503 con Asterisk 14 e FreePBX 14

Configurazione HT 503 con Asterisk 14 e FreePBX 14

enjoy 😉

Asterisk 14 Freepbx 14 e Raspbian Stretch

 Asterisk 14 Freepbx 14 e Raspbian Stretch

Asterisk 14 Freepbx 14 e Raspbian Stretch

Installazione su Raspberri py 3 con OS Raspbian Stretch Lite, di Asterisk 14 e Freepbx 14. Guida testata e funzionante. La mia è una installazione ex novo minimale, dove ho collegato per eseguire i test un modulo Ata HT503, il tutto funzionante sia con chiamate in entrata che in uscita.

Aggiungere i repository jessie per php5 ed aggiornare il sistema:

sudo echo "deb https://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi" | sudo tee /etc/apt/sources.list.d/jessie.list
sudo apt update; sudo apt upgrade -y
sudo reboot

Installare tutto l'occorrente:

sudo apt install -y build-essential openssh-server apache2 mysql-server mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php5-gd curl sox libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git subversion unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev libiksemel-dev libiksemel-utils libiksemel3 libjansson-dev libapache2-mod-php5 libmyodbc sendmail dirmngr mongodb

Cambiare versione php dallla 7 alla 5:

sudo update-alternatives --config php

Mettere in sicurezza il db:

sudo mysql_secure_installation

Installare nodejs e riavviare:

sudo curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs
sudo reboot

Scaricare Jansson, Asterisk 14, Freepbx 14

cd /usr/src
sudo wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-14-current.tar.gz
sudo wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.10.tar.gz
sudo wget https://mirror.freepbx.org/modules/packages/freepbx/freepbx-14.0-latest.tgz

Installare Jansson:

cd /usr/src
sudo tar vxfz jansson.tar.gz
sudo rm -rf jansson.tar.gz
cd jansson-*
sudo autoreconf -i
sudo ./configure
sudo make -j4
sudo make install

Installare Asterisk 14:

cd /usr/src
sudo tar xvfz asterisk-14-current.tar.gz
sudo rm -rf asterisk-14-current.tar.gz
cd asterisk-14.*
sudo contrib/scripts/get_mp3_source.sh
sudo ./contrib/scripts/install_prereq install
sudo ./configure
sudo make menuselect

a questo punto inserire il prefisso internazionale, nel nostro caso 39:

Asterisk 14 Freepbx 14 e Raspbian Stretch

Asterisk 14 Freepbx 14 e Raspbian Stretch

e poi abilitare  format_mp3:

Asterisk 14 Freepbx 14 e Raspbian Stretch

Asterisk 14 Freepbx 14 e Raspbian Stretch

sudo make -j4
sudo make install
sudo make config
sudo ldconfig

adesso bisogna verificare che asterisk funzioni correttamente:

sudo /etc/init.d/asterisk start
sudo asterisk -rvvv

Installazione e configurazione di Apache2 e permessi:

sudo /etc/init.d/asterisk stop
sudo groupadd asterisk
sudo useradd -d /var/lib/asterisk -g asterisk asterisk
sudo chown -R asterisk:asterisk /var/spool/asterisk /var/run/asterisk /etc/asterisk /var/{lib,log,spool}/asterisk /usr/lib/asterisk /var/www
sudo sed -i 's/#AST_USER="asterisk"/AST_USER="asterisk"/g' /etc/default/asterisk
sudo sed -i 's/#AST_GROUP="asterisk"/AST_GROUP="asterisk"/g' /etc/default/asterisk
sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
sudo sed -i 's/AllowOverride None/AllowOverride All/'  /etc/apache2/apache2.conf
sudo sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
sudo mv /var/www/html /var/www/html.bak

Configurazione ODBC:

sudo nano /etc/odbcinst.ini

ed incollare dentro:

[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/arm-linux-gnueabihf/odbc/libmyodbc.so
Setup = /usr/lib/arm-linux-gnueabihf/odbc/libodbcmyS.so
FileUsage = 1

ricordo che per verificare l'esatta ubicazione e nome dei driver, eseguire il comando sotto:

$ sudo find / -name libmyodbc.so

poi:

sudo nano /etc/odbc.ini

ed incollare dentro:

[MySQL-asteriskcdrdb]
Description=MySQL connection to 'asteriskcdrdb' database
driver=MySQL
server=localhost
database=asteriskcdrdb
Port=3306
Socket=/var/run/mysqld/mysqld.sock
option=3

a questo punto riavviare:

sudo reboot

al riavvio:

sudo a2enmod rewrite

ultima modifica da fare:

sudo nano /etc/php5/apache2/php.ini

e nel menu Resource Limits settare memory_limit = 256M, ed ancora nel menu File Uploads settare upload_max_filesize = 120M

sudo systemctl restart apache2

Installazione di Freepbx 14:

cd /usr/src
sudo tar vxfz freepbx-14.0-latest.tgz
sudo rm -rf freepbx-14.0-latest.tgz
cd freepbx
sudo ./start_asterisk start
sudo ./install -n
sudo fwconsole chown
sudo fwconsole reload
sudo fwconsole restart

se tutto è andato bene il server Asterisk è raggiungibile all'indirizzo https://ip_raspberry. La prima cosa da fare è quella di scegliere nome utente, password e mail, per accedere al pannello di amministrazione. Andare poi nel menu Admin-Module Admin e scaricare ed aggiornare tutti i moduli.

Asterisk 14 Freepbx 14 e Raspbian Stretch

enjoy 😉

Grandstream HT 503 con Vodafone Station Revolution

 

Grandstream HT 503 con Vodafone Station Revolution

Grandstream HT 503 con Vodafone Station Revolution

Un po' di tempo fa aveva fatto una guida sulla Configurazione Grandstream HT 503 con Asterisk e FreePBX, collegato ad una linea pstn, ma passando alla fibra FTTC di Vodafone, il numero si trova sulla Tel 1 della Vodafone Station Revolution, e quindi la configurazione fatta a suo tempo sulla FX0 del HT 503 non va bene. I problemi che ho riscontrato sono:

  1. Inizialmente il telefono Voip chiamandolo faceva 1 o 2 squilli solamente
  2. Se dopo aver squillato, dall'altra parte si chiudeva subito la comunicazione, il telefono squillava in eterno.

Le modifiche che ho adottato sono quelle in figura:

Grandstream HT 503 con Vodafone Station RevolutionGrandstream HT 503 con Vodafone Station Revolution

e riguardano la sezione PSTN Disconnect Tone, che ho settato con i parametri:

f1=425@-12,f2=425@-12,c=200/200-200/200;

e Stage Method (1/2) che ho settato su 1. Tutte le altre piccole modifiche non sono importanti.

Grandstream HT 503 con Vodafone Station Revolution

enjoy 😉

 

Asterisk 14 Freepbx 14 su Debian 8.8

 

Asterisk 14 Freepbx 14 su Debian 8.8

Guida su come Installare Asterisk 14 e Freepbx 14 su Debian 8.8 Jessie. Questa guida è stata fatta su una nuova installazione di Debian Stable e tutti i comandi sono stati eseguiti come utente ROOT.

Aggiornare il sistema:

# apt update; apt upgrade

se viene installato un nuovo kernel riavviare.

Scaricare le dipendenze ed i servizi necessari:

# apt install -y build-essential linux-headers-`uname -r` openssh-server apache2 mysql-server mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php5-gd curl sox libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git subversion unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev libiksemel-dev libiksemel-utils libiksemel3 libjansson-dev libapache2-mod-php5 libmyodbc sudo

a metà installazione verrà chiesto per tre volte di settare una password per Mysql, LASCIARE IL CAMPO VUOTO. La password verrà generata in maniera automatica e sicura.

Scaricare l'occorrente: Pjproject, Jansson, Asterisk, Freepbx:

# cd /usr/src
# wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-14-current.tar.gz
# wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.10.tar.gz
# wget https://www.pjsip.org/release/2.6/pjproject-2.6.tar.bz2
# wget https://mirror.freepbx.org/modules/packages/freepbx/freepbx-14.0-latest.tgz

Installare Pjproject:

# cd /usr/src
# tar -xjvf pjproject-2.6.tar.bz2
# cd pjproject-2.6
# CFLAGS='-DPJ_HAS_IPV6=1' ./configure --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr
# make dep
# make -j4
# make install

 

Installare Jansson:

# cd /usr/src
# tar vxfz jansson.tar.gz
# cd jansson-*
# autoreconf -i
# ./configure
# make -j4
# make install

 Installare Asterisk 14:

# cd /usr/src
# tar xvfz asterisk-14-current.tar.gz
# cd asterisk-14.*
# contrib/scripts/get_mp3_source.sh
# ./contrib/scripts/install_prereq install
# ./configure
# make menuselect

a questo punto conviene dare un occhiata ed abilitare qualche modulo in più, come format_mp3:

Installare Asterisk 13 con Freepbx 12 su Raspberry pi 2 e Debian Jessie

# make -j4
# make install
# make config
# ldconfig

non fare caso all'errore sotto:

Asterisk 14 Freepbx 14 su Debian 8.8

Asterisk 14 Freepbx 14 su Debian 8.8

adesso bisogna verificare che asterisk funzioni correttamente:

# /etc/init.d/asterisk start
# asterisk -rvvv

output:

root@debianbox:/home/edmond# asterisk -rvvv
Asterisk 14.4.0, Copyright (C) 1999 - 2016, Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 14.4.0 currently running on debianbox (pid = 1461)
debianbox*CLI>

Installazione e configurazione di Mysql ed Apache2 e relativi permessi:

# /etc/init.d/asterisk stop
# pear install Console_Getopt
# groupadd asterisk
# useradd -d /var/lib/asterisk -g asterisk asterisk
# chown -R asterisk:asterisk /var/spool/asterisk /var/run/asterisk /etc/asterisk /var/{lib,log,spool}/asterisk /usr/lib/asterisk /var/www
# sed -i 's/#AST_USER="asterisk"/AST_USER="asterisk"/g' /etc/default/asterisk
# sed -i 's/#AST_GROUP="asterisk"/AST_GROUP="asterisk"/g' /etc/default/asterisk
# mv /var/www/html /var/www/html.bak
# cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
# sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php5/apache2/php.ini
# sed -i 's/AllowOverride None/AllowOverride All/'  /etc/apache2/apache2.conf
# sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
# service apache2 restart
# nano /etc/odbcinst.ini

ed incollare dentro:

[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage = 1

il percorso dei driver potrebbe essere diverso se non si è su una macchina x86_x64, per verificare il percorso:

# find / -name libmyodbc.so

poi ancora:

# nano /etc/odbc.ini

ed incollare dentro:

[MySQL-asteriskcdrdb]
Description=MySQL connection to 'asteriskcdrdb' database
driver=MySQL
server=localhost
database=asteriskcdrdb
Port=3306
Socket=/var/run/mysqld/mysqld.sock
option=3

a questo punto riavviare:

# reboot

al riavvio:

# a2enmod rewrite
# service apache2 restart

Installazione di Freepbx 14:

# cd /usr/src
# tar vxfz freepbx-14.0-latest.tgz
# cd freepbx
# ./start_asterisk start
# ./install -n

se tutto è andato bene il server Asterisk è raggiungibile all'indirizzo https://ip_raspberry.

Asterisk 14 Freepbx 14 su Debian 8.8

Asterisk 14 Freepbx 14 su Debian 8.8

  1. La prima cosa da fare è quella di scegliere nome utente, password e mail, per accedere al pannello di amministrazione.
  2. Andare nel menu Admin-Module Admin e scaricare ed aggiornare tutti i moduli

Errori

Error(s) have occured, the following is the retrieve_conf output:exit: 1

Asterisk 14 Freepbx 14 su Debian 8.8

installare il modulo framework:

# fwconsole chown
# fwconsole reload
# fwconsole ma upgrade framework
# fwconsole restart

Can Not Connect to Asterisk

Asterisk 14 Freepbx 14 su Debian 8.8

andare in Settings-Advanced Settings-Asterisk Manager e ricaricare la voce .

Asterisk 14 Freepbx 14 su Debian 8.8

enjoy 😉

 

Telefonare e Ricevere Gratis nel mondo con Asterisk iPhone e Vpn

 

      

 

Telefonare e Ricevere Gratis nel mondo con Asterisk iPhone e Vpn. Si può fare! Se si possiede un PBX Asterisk in casa o in ufficio, ed è giustamente configurato, si può decidere di essere sempre raggiungibile anche sul cellulare. Ci sono diversi modi per fare questo, basta creare una estensione in FreePBX, o mettere il numero di cellulare in un gruppo di squillo, ecc. ecc. Fino a che ci si trova all'interno della casa o dell'ufficio collegati alla propria rete locale, non ci sono problemi nel ricevere telefonate o effettuarle, passando dal centralino virtuale, il "problema" invece si pone quando ci si trova all'esterno e quindi di conseguenza non siamo più un interno telefonico. Anche in questo caso ci sono diverse soluzioni, per poter chiamare o ricevere le chiamate, una su tutte, si potrebbe configuare Asterisk/FreePBX dopo qualche squillo di girarci la chiamata sul telefono ecc. ecc, oppure usare un client voip opportunamente configurato. Ma secondo me invece il modo migliore è quello di essere sempre o quando si ha la necessità, connessi alla propria rete locale. Sembra difficile, ma in realtà è molto più semplice di quanto si pensi. Quello di cui si ha bisogno, oltre ad un minimo di conoscenza, sono:

  1. Una estensione configurata su FreePBX
  2. Un client Voip che supporti la VPN, come Bria iPhone
  3. Una VPN

 

Per quanto riguarda la configurazione di una Estensione su FreePBX ci sono molte guide sul web, ed anche in questo blog. Per quanto riguarda invece la VPN, bisogna avere un router (consigliato) con cui poterla creare, oppure un firewall. A livello domestico/ufficio si potrebbe prendere in considerazione l'acquisto di un router, per esempio un Linksys E1200-EZ v2, su cui poi installare DD-WRT, come ho fatto io. Infine serve acquistare per 8€ circa l'app per telefoni apple o android di Bria. Per quanto riguarda la configurazione è molto semplice:

Telefonare e Ricevere Gratis nel mondo con Asterisk iPhone e Vpn Telefonare e Ricevere Gratis nel mondo con Asterisk iPhone e Vpn Telefonare e Ricevere Gratis nel mondo con Asterisk iPhone e Vpn


Quindi se ci si trova lontani da casa, in Italia, basta collegarsi col proprio piano dati telefonico, alla VPN, per poi poter essere un interno e quindi chiamare e ricevere le chiamate. Se si è in vacanza all'estero, si può approfittare degli hotspot pubblici o dell'albergo per poter avviare la VPN, e poi fare una chiamata Gratis come se ci si trovasse a casa propria. Telefonare e Ricevere Gratis nel mondo con Asterisk iPhone e Vpn

enjoy 😉

 

Configurazione Grandstream HT 503 con Asterisk e FreePBX

 

Configurazione Grandstream HT 503 con Asterisk e FreePBX

Configurazione Grandstream HT 503 con Asterisk e FreePBX. Questa guida mostra come configurare un Grandstream HT 503 con Asterisk e FreePBX. Il Grandstream HT 503 non è niente altro che un gateway/modulo ATA, che serve per utilizzare la propria linea telefonica all'interno di un PBX, nel mio caso lo utilizzo con Raspbx installato su un Raspberry pi 2. Di seguito mi limiterò a condividere gli screenshot della mia configurazione funzionante. Nell'immagine sopra si vedono due porte rj45 e 2 porte rj11, e si potrebbero utilizzare nel modo seguente:

  1. Line=FX0: bisogna inserire il cavo della propria linea telefonica.
  2. Phone=FXS: dove eventualmente andrà collegato un telefono analogico.
  3. WAN: inserire il cavo di rete.
  4. LAN: si può collegare direttamente un telefono voip.

Quindi l'obiettivo sarà quello di girare le chiamate che arrivano sulla nostra linea tradizionale ad un interno voip o analogico collegato al modulo ATA. L'indirizzo di default del Grandstream HT 503 è 192.168.2.1. In questa guida la rete è strutturata in questo modo:

  1. HT 503= 192.168.1.80
  2. Server PBX= 192.168.1.83
  3. numero principale= 023xxxxxx
  4. interno che squilla=101, ed essendo un telefono voip è collegato alla porta Lan

Status:

Grandstream HT 503 Asterisk e FreePBX

Basic setup:

è consigliabile settare l'ip dell'ATA in modo statico, nel mio caso ci pensa direttamente il router:

Grandstream HT 503 Asterisk e FreePBXGrandstream HT 503 Asterisk e FreePBX

in Unconditional Call Forward to Voip, inserire il proprio numero di telefono.

Advanced Settings:

Grandstream HT 503 Asterisk e FreePBX

f1=425@-12,f2=425-12,c=200/200-600/1000;
f1=425@-20,c=1000/4000;
f1=425@-20,c=500/500;
f1=425@-12,c=250/250;
f1=350@-11,f2=440@-11,c=100/100-100/100-100/100;
f1=425@-12,f2=425-12,f3=425@-12,c=400/200-600/100/100;
f1=350@-13,f2=440@-13,c=0/0;

FXS:

se non si usa si può lasciare non configurata.

fxs

fxs2

FX0:

Grandstream Device Configuration

sopra ci sono User ID e password, le quali poi saranno riportate al momento della crezione del Trunk in FreePBX.

Grandstream Device Configuration Grandstream Device Configuration Grandstream Device Configuration Grandstream Device Configuration

Adesso passare alla configurazione lato FreePBX, creando un Trunk con la linea principale:

trunk Configurazione Grandstream HT 503 con Asterisk e FreePBX

host=192.168.1.80
type=peer
context=from-trunk
authname=023xxxxxxx
secret=XXXXXXXXXX
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
nat=no
port=5062
disallow=all
allow=alaw&ulaw

come si vede il trunk punta al modulo ATA HT 503. Adesso bisogna creare l'Estensione 101, mettendo la stessa password anche sul telefono Voip che si andrà a configurare.

estensione

a questo punto bisogna dirottare le chiamate in entrata verso l'estensione 101, oppure verso un IVR o un gruppo di squillo. Andare in Connectivity-Inbound Routes:

inbound

poi andare in Connectivity-Outbound Routes:

outbound routes outbound routes

se tutto è andato bene, adesso si potranno ricevere e fare telefonate dalla nostra linea principale, passando dal centralino.

status

Updated: 12/06/2017

enjoy 😉