Asterisk PBX

Da Wikipedia, l'enciclopedia libera.
bussola Disambiguazione – "Asterisk" rimanda qui. Se stai cercando il singolo degli Orange Range, vedi Asterisk (singolo).
Asterisk
Sviluppatore Digium, Inc.
Ultima versione 10.6.1 (16 luglio 2012)
Sistema operativo Multipiattaforma
Linguaggio
Genere Private branch exchange (non in lista)
Licenza GPL
(Licenza libera)
Sito web http://www.asterisk.org

Asterisk è una implementazione libera di un software per sistemi PBX che permette di ottenere le stesse funzionalità offerte da altri sistemi proprietari a fronte di una spesa decisamente inferiore ed una maggiore flessibilità.

La prima stesura di Asterisk venne realizzata da Mark Spencer, un ingegnere informatico statunitense che, attorno all'anno 2000, fondò una società che sviluppa schede d'interfaccia FXS ed FXO. Spencer sviluppò Asterisk per favorire la diffusione delle interfacce Digium e, permettendone la libera distribuzione, solleticò l'interesse di moltissimi utilizzatori professionali ed appassionati, diffondendone largamente così la conoscenza.

Asterisk è oggi un punto di riferimento nel settore dei PBX: la completezza dei suoi contenuti e la sua affidabilità lo rendono infatti una piattaforma ideale per una vasta gamma di applicazioni, ad esempio come elemento portante per la realizzazione di mediatori RTG/IP (centralini telefonici in grado cioè di utilizzare sia le linee telefoniche tradizionali sia i canali IP), sistemi Centrex (PBX "virtuali" e centralizzati), applicazioni per la gestione di Call Center ed altro ancora.

Configurazione generale di Asterisk[modifica | modifica sorgente]

I moduli: modules.conf[modifica | modifica sorgente]

Asterisk, 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[modifica | modifica sorgente]

Un'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[modifica | modifica sorgente]

Il 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[modifica | modifica sorgente]

Il 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[modifica | modifica sorgente]

In 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[modifica | modifica sorgente]

Nella 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[modifica | modifica sorgente]

La 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[modifica | modifica sorgente]

Ogni 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[modifica | modifica sorgente]

Il 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 | modifica sorgente]

  • Diego Gosmar, Giuseppe Innamorato, Dimitri Osler, Stefano Osler. Asterisk. Il mondo VoIP Open Source, Apogeo, ISBN 978-88-503-2742-3
  • (EN) Jim Van Meggelen, Leif Madsen, Jared Smith. Asterisk: The Future of Telephony, O'Reilly, ISBN 0-596-00962-3

Voci correlate[modifica | modifica sorgente]

Altri progetti[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

Software libero Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero