Asterisk PBX
Asterisk è un'implementazione software di un sistema PBX. È un software libero che permette di gestire una rete telefonica privata e di connetterla a servizi di telefonia PSTN o VoIP.
Asterisk software | |
---|---|
Genere | Private branch exchange (non in lista) |
Sviluppatore | Digium, comunità e Russell Bryant |
Data prima versione | 1999 |
Ultima versione | 21.4.3 (5 settembre 2024) |
Sistema operativo | Multipiattaforma |
Linguaggio | C |
Licenza | GNU General Public License (licenza libera) |
Sito web | www.asterisk.org/ |
La prima stesura venne realizzata da Mark Spencer, un ingegnere informatico statunitense che, attorno all'anno 2000, aveva creato una società che sviluppava schede d'interfaccia FXS ed FXO. Per facilitarne la diffusione Spencer creò Asterisk e, permettendone la libera distribuzione, provocò l'interesse di una rete di sviluppatori e professionisti di tutto il mondo.
Oggi il prodotto ha un importante ruolo nel settore della telefonia in applicazioni come ad esempio la mediazione RTG/IP (centralini telefonici in grado cioè di utilizzare sia le linee telefoniche tradizionali sia i canali IP) e sistemi Centrex (PBX "virtuali" e centralizzati), applicazioni per la gestione di Call Center ed altro ancora.
Configurazione generale
modificaI moduli: modules.conf
modificaAsterisk, al suo avvio, carica un gruppo di moduli che permettono di utilizzare differenti applicazioni. Si può scegliere quali moduli devono essere caricati con il file modules.conf
.
I canali
modificaUn'interfaccia ISDN ha due canali, una PRI può averne 30. Asterisk identifica i tipi d'interfaccia sui quali si può telefonare con il termine canal, canale. Un canale può essere, per esempio, l'interfaccia ISDN (che si chiama canale CAPI) o l'interfaccia Ethernet per il VoIP. Ogni protocollo VoIP ha un canale diverso, quindi se si vuole telefonare con SIP o H.323, bisogna configurare un canale SIP o un canale H.323. La configurazione dei canali è fatta con dei file di configurazione *.conf, che si trovano nella directory /etc/asterisk.
Il Dialplan
modificaIl dialplan (ovvero "piano di chiamata") è la parte più interessante della configurazione di Asterisk, ed anche quella che richiede più tempo. Nel dialplan si definisce cosa deve fare il PBX quando riceve una chiamata, oppure quando un utente compone un numero.
Formato del dialplan
modificaIl file /etc/asterisk/extensions.conf contiene il dialplan di Asterisk, cioè un flusso di esecuzione per tutte le sue operazioni. Il dialplan controlla come le chiamate entranti e uscenti sono trattate e instradate: è qui che si configura il comportamento di tutte le connessioni che attraversano il PBX.
Il contenuto del file extensions.conf è organizzato in sezioni, che possono essere usate per delle configurazioni statiche e per delle definizioni, o per delle componenti eseguibili del dialplan, che si chiamano contesti o contexts. Le sezioni general e globals e i nomi dei contesti sono interamente definiti dall'amministratore di sistema. Un tipo speciale di contesti sono le macro, che sono delle procedure o insiemi di istruzioni riutilizzabili in fase di esecuzione, costruite in maniera simile ad linguaggio di programmazione.
Sezione general
modificaIn questa sezione si può definire qualche opzione generale che concerne l'uso della funzione save dialplan, che serve a salvare il dialplan se quest'ultimo è modificato in fase d'esecuzione da comandi di Asterisk.
Sezione globals
modificaNella sezione globals si definiscono le variabili globali per il dialplan. In pratica, le variabili globali di Asterisk non sono impiegate come variabili, ma come costanti. Abitualmente sono impiegate per avere un solo posto nel dialplan dove si possono indicare i valori che si potrebbero voler cambiare per cambiare delle configurazioni del PBX.
Contexts ed extensions
modificaLa parte principale e più interessante del dialplan è costituita dai contexts. I contexts
sono degli insiemi di extensions
(estensioni). Ogni estensione può essere costituita da più linee di istruzione, che Asterisk eseguirà se una certa condizione è soddisfatta.
Come si usa un context
modificaOgni chiamata che giunge ad Asterisk è attribuita ad un context. L'appartenenza di una chiamata ad un contesto può dipendere dal canale dal quale arriva, dall'ora, dal numero chiamante ed altre differenti possibilità.
IAX
modificaIl file iax.conf permette la configurazione del protocollo di comunicazione IAX. Si tratta di un protocollo specifico per Asterisk che permette l'implementazione di trunk (collegamento) tra diverse centraline con localizzazioni geografiche differenti. IAX permette di raggruppare un flusso di chiamate telefoniche ottimizzando la segnalazione e quindi riducendo significativamente l'overhead di banda. È un'alternativa al protocollo RTP. Nel file iax.conf è possibile creare delle entry provviste di autenticazione per dei PABX Asterisk esterni.
IAX è configurabile in modalità trunk o modalità no-trunk. Nel primo caso ottimizza la segnalazione riducendo significativamente l'overhead, inserendo in un unico pacchetto IP la segnalazione e il flusso media di più canali fonia. Nel secondo caso riduce la banda rispetto RTP, avendo 4byte di overhead invece di 12byte, ma in modo meno significativo in quanto ogni differente chiamata utilizza un differente pacchetto IP/UDP. Anche se non pensato per questa finalità è possibile utilizzare anche degli UAC SIP IAX, come telefoni hardware/software.
Bibliografia
modifica- Diego Gosmar, Giuseppe Innamorato, Dimitri Osler e Stefano Osler, Asterisk. Il mondo VoIP Open Source, collana Reti, vol. 2, Apogeo, 2010, ISBN 978-88-503-2742-3.
- (EN) Jim Van Meggelen, Leif Madsen e Jared Smith, Asterisk: The Future of Telephony, O'Reilly, 2005, ISBN 0-596-00962-3.
Voci correlate
modificaAltri progetti
modifica- Wikibooks contiene testi o manuali su Asterisk PBX
- Wikimedia Commons contiene immagini o altri file su Asterisk PBX
Collegamenti esterni
modifica- (EN) Sito ufficiale di Asterisk, su asterisk.org.
- (EN) Sito ufficiale della Digium, Inc., su digium.com.
- (IT) Sito in italiano dove trovare documentazione e tutorial sulle principali "distribuzioni" Asterisk-based su asterweb.org
- (EN) Asterisk - Installazione e configurazione, su en.voipforo.com. URL consultato il 4 settembre 2006 (archiviato dall'url originale il 3 settembre 2006).
- (EN) #asterisk - canale IRC di supporto per Asterisk su Libera Chat
- Astricon Archiviato l'8 agosto 2020 in Internet Archive. - Conferenza annuale su Asterisk e video ufficiali pubblicati
- Test Pbx Asterisk Archiviato il 22 ottobre 2018 in Internet Archive. - By TelcaVoIP International LTD (User Name=admin, Password=password)