Asterisk PBX

Asterisk è un’implementazione software di un sistema PBX. Asterisk è un software libero che permette di gestire una rete telefonica e di connetterla a servizi di telefonia PSTN o VoIP.

La prima stesura di Asterisk venne realizzata da Mark Spencer, un ingegnere informatico statunitense che, attorno all’anno 2000, aveva creato una società che sviluppa schede d’interfaccia FXS ed FXO, per facilitarne la diffusione Spencer creò Asterisk e, permettendone la libera distribuzione, solleticò l’interesse di una rete di sviluppatori e professionisti.
Oggi Asterisk 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 di Asterisk
I moduli: modules.conf
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 wikitesto]
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
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
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 generale
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
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
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
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
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.

fonte: it.wikipedia.org

Questo sito non rappresenta una testata giornalistica e viene aggiornato senza alcuna periodicità, esclusivamente sulla base della disponibilità del materiale. Pertanto, non è un prodotto editoriale sottoposto alla disciplina di cui all’art. 1, comma III della L. n. 62 del 7.03.2001.© Tutto il materiale è di proprietà e il copyright dei rispettivi proprietari.