Il Software Open Source viene indicato come il prossimo driver tecnologico
per il mondo dell’Information Technologies. Sono Open Source
alcune degli applicativi IT più usati nei sistemi di produzione.
Basti citare il web server Apache o il database MySql, ma la lista
è veramente lunga. Anche in un mondo “chiuso”,
come tradizionalmente è stato quelle delle telecomunicazioni,
in cui spesso le applicazioni implementano protocolli proprietari,
alcuni progetti Open Source si stanno affermando come valide alternative
ai sistemi commerciali.
Se utilizzare un progetto Open Source per realizzare una applicazione
di telefonia è una strategia vincente, rimane da scegliere
quale progetto utilizzare tra quelli attualmente presenti nella
comunità Open Source.
A seguire, analizziamo e presentiamo i progetti software Open Source
più promettenti per la realizzazione di una piattaforma VoIP
evoluta. In particolare vengono presi in considerazione progetti
software Open Source che implementano la funzionalità di
Proxy VoIP, di MediaGateway ed altre funzionalità avanzate
(Instant Messaging, VoiceMail, …) legate al mondo Voice Over
IP e in particolare all'utilizzo del protocollo SIP (Session Initial
Protocoll).
In dettaglio i software presi in considerazione sono:
• Asterisk
• Sip Express Router (SER)
• SipXpbx
• Jain-Sip
Sono stati analizzati anche i seguenti progetti:
• Partysip
(Link Esterno)
• Sipd
(Link Esterno)
• Vocal (Link Esterno)
Abbiamo però deciso di accantonare questi ultimi, in quanto
nessuno ha raggiunto le dimensioni, dal punto di vista della diffusione
e del numero di sviluppatori coinvolti, tali da garantire, a nostro
avviso, l’evoluzione del progetto.
Per effettuare una scelta ottimale del progetto Open Source da installare
per realizzare il proprio PBX, molto dipende dalle esigenze specifiche
di progetto. Di seguito proponiamo una analisi comparativa dei quattro
progetti Open Source presi in considerazione, in cui abbiamo scelto
come fattori per effettuare la comparazione i seguenti aspetti:
Funzionalità implementate:
in particolare quali funzioni del protocollo SIP siano implementate
(proxy server, redirect, register ecc.), e quali moduli aggiuntivi
od interfacce siano presenti (Voicemail, IVR, Media gateway, instant
messaging, conferenza ecc.)
Sviluppo e diffusione:
si è cercato di capire lo sviluppo delle community associate
al progetto Open Source, in particolare quella degli sviluppatori
e se esso abbia raggiunto un livello di diffusione sufficiente,
la presenza di mailing list di supporto, di documentazione di supporto
e di study cases.
Architettura: si è
analizzata l'architettura generale del software, la modularità,
la scelta del linguaggio di programmazione nel quale è implementato,
le librerie utilizzate, le performance e i requisiti del sistema
richiesti, la facilità ad implementare e le funzionalità
aggiuntive.
API: si è verificata
la presenza di API che permettano ad altri software di interagire
per l'implementazione di servizi avanzati, in particolare si sono
analizzati la gestione degli eventi e la possibilità di integrarsi
con Application Server esterni.
Dopo aver presentato e descritto brevemente le caratteristiche principali
dei vari Software Open Source trattati, presenteremo le nostre conclusioni.
Considerazioni finali
Premesso che per poter scegliere in maniera ottimale il proprio
middleware telefonico è necessario conoscere esattamente
i propri requisiti progettuali, possiamo comunque fornire delle
indicazioni di massima.
In tabella abbiamo comparato le principali funzionalità supportate
o non dai middleware analizzati.
Come si evince dalla tabella comparativa, attualmente Asterisk è
il middleware più ricco di funzionalità, in particolare
se è necessario implementare un MediaGateway per interfacciare
linee telefoniche tradizionali, sia FXO che ISDN. Asterisk offre
inoltre una lunga lista di funzionalità complesse come IVR,
VoiceMail, gestione delle chiamate (call forward, call parking,
…). Presenta inoltre API potenti per essere interfacciato
con applicativi esterni, come CRM ed ERP. La comunità che
supporta Asterisk è molto ampia ed attiva, inoltre sono presenti
sul mercato diverse aziende che offrono servizi professionali.
Asterisk presenta però due svantaggi: non è ancora
stata sviluppata una interfaccia di configurazione user friendly
(la configurazione del PBX è su file), non è un SIP
Proxy ma solo un User Agent.
SER è invece un PROXY SIP “leggero” ma molto
potente e versatile, ma manca completamente del supporto di MediaGateway.
SER è implementato con una architettura modulare e con la
possibilità di interagire con altri software, si dimostra
comunque un software con poca “intelligenza”, non esponendo
tra l’altro delle API di integrazione, più orientato,
quindi, ad avere elevate performance per quanto riguarda la sua
funzione principale di proxy server Può invece lavorare bene
con Asterisk e numerosi sono gli esempi di integrazione tra i due
applicativi.
SipX è un progetto molto interessante da monitorare con la
massima attenzione. Scritto in Java implementa la massima modularita’
ed offre una interfaccia utente molto user friendly, permettendo
di aggiornare da remoto anche la configurazione XML dei telefoni.
Mancano alcune funzionalità base come il supporto per i CDR,
che però sono state annunciate nelle prossime release. Manca
inve la generazione di eventi, utile per l’integrazione con
CRM esterni.
JAIN è solo di fatto un contenitore delle classi JAVA sviluppate
da SUN, adatto per chi desidera sviluppare ex novo un nuovo prodotto,
anche carrier grade.
Alla fine di questa discussione, ci sentiamo quindi di consigliare
Asterisk, come software da installare, se desiderate implementare
anche la funzionalità di MediaGateway verso la telefonia
tradizionale PSTN. Se invece siete interessati solo a creare un’isola
VoIP nella vostra azienda, sia SipX che SER sono degli ottimi candidati.
Caratteristiche
|