Posts Tagged ‘asterisk 1.8’

Voip PBX with Google Talk

08 set 2011

No Comments »

L’ultima novità in casa VoiceOne è la fresca integrazione con il mondo Google a partire da Google Talk il servizio di chat testuale, ma soprattutto vocale di Google e dalla sua ultima espansione nel mondo della telefonia attraverso il servizio di Google Voice. La versione 1.8.420 apre quindi la strada ad un mondo di possibili integrazioni tra VoiceOne ed il mondo Google, alcune già realizzate, altre in cantiere e molte ancora da pensare.

Con l’aggionamento all’utlima versione di VoiceOne sono stati integrati nella configurazione i moduli Jabber e GTalk di Asterisk. Le novità si concretizzano nella possibilità di creare trunk ed extension con la tecnologia di GTalk.

Un trunk GTalk non è altro che una linea associata ad un account della piattaforma Google e quindi un normalissimo account Gmail oppure, se si utilizzano le Google Apps, un indirizzo email della nostra società. Questa linea può essere utilizzata in ingresso ed in uscita per chiamare ed essere chiamati da altri account GTalk e, con l’avvento di Google Voice, chiamare in uscita numeri di telefonia fissa e mobile ricaricando il credito come si fa con Skype. In uscita la linea si comporta esattamente con un tradizionale trunk voip, mentre in ingresso è utilizzata per ricevere le chiamate da altri utenti GTalk che chiamano l’account associato alla linea stessa.

Un extension GTalk, invece, è un numero d’interno del centralino a cui è associato un account GTalk. Chiamando quel numero di interno, la chiamata verrà inoltrata dal sistema all’utente GTalk che la riceverà sul pannello web di Gmail/Google Apps oppure su un client software che supporti questo tipo di tecnologia. Se l’account GTalk configurato come interno chiama in ingresso l’account associato ad una linea GTalk del centralino, il sistema converte l’indirizzo email del chiamante in numero di interno, permettendo quindi agli utenti di richiamarlo in maniera del tutto trasparente.

Ed è solo l’inizio. Infatti a breve sarà possibile disporre di numerazioni geografiche da utilizzare attraverso Google Voice, mentre è già possibile chattare con utenti GTalk attraverso macro di Asterisk create ad hoc per la gestione di messaggi ed alert testuali, da inviare e ricevere. La porta sul mondo delle Google Apps è aperta!

CDR (Call Detail Report) on VoiceOne

15 lug 2011

No Comments »

La principale novità della versione 1.8.410 di VoiceOne è l’interfaccia di consultazione dello storico delle chiamate, inserita nella parte Personal al tab History. Questa interfaccia permette di visualizzare la complicata tabella di asterisk che riporta i dati relativi alle chiamate, in maniera semplice ed immediata.

Nella tabella principale sono riportati la data della chiamata, il chiamante, il chiamato, il tipo di chiamata (interna, in ingresso o in uscita) rappresentato da un’icona, la linea, la durata e l’esito della stessa (risposta, non risposta, occupata, ecc…). Se il numero coinvolto nella comunicazione è un interno, posizionando il mouse sopra lo stesso comparirà il nominativo associato allo stesso; mentre se il numero è di rete pubblica ed è presente in rubrica posizionandoci sopra il mouse comparirà il nominativo del contatto associato. In quest’ultimo caso sulla riga della chiamata compare un’icona che segnala la presenza del contatto in rubrica e ne permette un rapido accesso alla scheda cliccando l’icona stessa.

Sulla colonna sinistra è presente un filtro che permette di ricercare le chiamate per utente, tipologia, numero, intervallo temporale ed esito. E’ possibile anche specificare l’ordinamento, che può essere in base alla data di esecuzione della chiamata o alla durata, dal maggiore al minore o viceversa. La scelta dell’utente è bloccata nel caso di utente standard, mentre utenti del tipo configuratore o super utente possono scegliere se filtrare le chiamate per utente o visualizzare tutte le chiamate. Nel campo numero è possibile indicare un numero completo oppure utilizzare la wildcard % che permette ricerche avanzate, come ad esempio 348% (tutte le chiamate da e verso numerazioni che iniziano per 348), %067 (tutte le chiamate da e verso numerazioni che finiscono per 067), %555% (tutte le chiamate da e verso numerazioni che contengono 555)

Gli amministratori ed i super utenti hanno visibilità su tutte le chiamate mentre gli utenti standard, quelli normalmente associati agli interni, hanno una visibilità limitata alle chiamate che li coinvolgono. Questo permette di preservare la privacy di ogni interno garantendo al tempo stesso la completa supervisione dell’amministratore.

La sezione History è ancora in fase di sviluppo e molte altre funzionalità saranno presto disponibili:

  1. la possibilità di ricercare le chiamate per contatto presente in rubrica, ovvero la possibilità di visualizzare tutte le chiamate effettuate e ricevute da e per tutti i numeri associati al contatto nella scheda contatto
  2. il click-to-call dei numeri risultanti dalla ricerca
  3. un link rapido per aggiungere il numero in rubrica creando un nuovo contatto se non già presente

Fatene buon uso.

Solved “peers unreachable” problem on “sip reload” with Asterisk 1.8

11 lug 2011

No Comments »

Nelle le ultime versioni di VoiceOne con Asterisk 1.8, era stato introdotto un fastidioso problema. Ogni volta che veniva modificato qualcosa in VoiceOne che richiedesse un “sip reload” in Asterisk, alcuni peers diventavano unreachable finchè non si riregistravano in Asterisk. Questo problema è abbastanza comune nelle configurazioni in realtime come potete vedere in questi link:

http://forums.digium.com/viewtopic.php?f=1&t=69317
http://asteriskfaqs.org/2010/09/15/asterisk-users/bug-with-realtime.html
http://asterisk.inmte.com/viewtopic.php?t=17796

Nel nostro caso questo comportamento è stato introdotto con il passaggio ad Asterisk 1.8 il quale necessita di aver settata a yes l’opzione SIP “ignoreregexpire” (impostazione di default dalla versione di voiceone 1.8.410 in poi).

In questo modo quando il peer viene recuperato in realtime, le informazioni di registrazione verranno utilizzate indipendentemente dal fatto che siano scadute o meno, se scade mentre il peer in tempo reale è ancora in memoria (a causa di caching o altri motivi), le informazioni non saranno rimosse dal database. Quindi anche dopo un “sip reload” Asterisk proverà a contattare il peer all’ultimo indirizzo che conosceva anche nel caso in cui la sua registrazione sia scaduta.

Show the Caller ID on attended transfers

06 lug 2011

No Comments »

Il passaggio dell’identificativo chiamante (numero di telefono) durante il trasferimento consultativo è un problema noto all’interno del mondo Asterisk. Con il passaggio di VoiceOne dall’uso della versione 1.2 alla versione 1.8 di Asterisk il problema è stato in parte risolto, ma in parte rimane una questione aperta. Vediamo nello specifico.

Lo scenario vede generalmente una chiamata entrante da parte di un cliente, che supponiamo a titolo di esempio abbia il numero 0456677889, la quale viene risposta dall’interno 201 della nostra organizzazione. Prima di rispondere, come dopo aver risposto, il nostro interno 201 vede sul monitor del proprio telefono il numero chiamante 0456677889. Supponiamo ora che il chiamante chieda di parlare con l’interno 202. L’intreno 201 mette quindi in attesa la chiamata esterna e chiama l’interno 202. L’interno 202 vede comparire sul proprio telefono una chiamata in arrivo dall’interno 201. Risponde, e si sente annunciare che il cliente vuole parlare con lui. A questo punto l’interno 201 procede al trasferiemento, mettendo in comunicazione diretta il cliente con l’interno 202. Contestualemente al passaggio della chiamata, e questa è la grossa novità, viene passato anche l’identificativo chiamante del cliente, ovvero l’interno 202 smette di vedere a monitor il numero 201 che viene sostituito dal numero 0456677889. Nel vecchio Asterisk 1.2 questo ultimo passaggio non avveniva e l’interno 202 continuava a vedere il riferimento dell’interno 201 che lo aveva chiamato per annunciargli il trasferimento, anche una volta che questo era avvenuto ed era in linea con il cliente 0456677889.

Per avere questa funzionalità attiva su VoiceOne è necessario verificare che nella sezione Technologies, all’interno delle General Technology Options della tecnologia SIP,  il campo Sendrpid sia spuntato e valorizzato a PAI (impostazione di default dalla versione di voiceone 1.8.410 in poi).

Questa impostazione infatti permette l’attivazione della funzionalità sui telefoni Snom. Sui telefoni Yealink, invece, è necessario anche assicurarsi di aver valorizzato il campo Caller Id Header a RPID-PAI-FROM nella sezione Account >> Advanced.

Tutto perfetto? Quasi. Perchè se è vero che sono sempre di più i telefoni che supportano il passaggio dell’identificativo su trasferimento consultativo (ad es. Snom e Yealink lo supportano), questi registrano la chiamata come ricevuta salvando però il primo identificativo chiamante (quello dell’interno 201 nel caso precedente) e non lo aggiornano con quello passato nel trasferimento. Questo vuol dire che non comparirà quella conversazione nel nostro elenco delle chiamate, ma soprattutto che non potremo decidere di richiamare il cliente navigando tra le chiamate ricevute.

La questione rimane quindi aperta in attesa che i produttori di telefoni salvino l’identificativo della chiamata trasferita o almeno permettano di scegliere se farlo o meno.

Video calls on VoiceOne

04 lug 2011

No Comments »

VoiceOne supporta le videochiamate effettuate tra interni e trunk SIP. Il motore Asterisk 1.8, infatti, supporta all’interno delle sessioni di chiamata SIP, il passaggio (in passthrough) di un flusso video associato alla chiamata. Per realizzare una videochiamata tra due interni, quindi, la sola necessità è che i telefoni supportino la videochiamata e riescando a catturare e mostrare il flusso video dei partecipanti oltre al flusso audio.

La sola configurazione lato VoiceOne riguarda la possibilità di effettuare videochiamate e di utilizzare i codec video all’interno della chiamata (ad es. h263,h263p,h264,…). Per dare questa possibilità al sistema, è necessario verificare che nella sezione Technologies, all’interno delle General Technology Options della tecnologia SIP, il campo videosupport sia spuntato e valorizzato a yes. Inoltre è necessario aggiungere all’elenco dei codec abilitati anche i valori h263,h263p,h264 o solo quello che si vuole venga utilizzato. Per farlo è sufficiente verificare che nella stessa schermata di configurazione il campo allow sia spuntato e all’interno dei valori separati da virgola ci sia almeno uno dei codec video supportati dai nostri telefoni. L’attivazione e la valorizzazione di questi parametri è già il default nella versione di VoiceOne 1.8.410 e nelle successive.

E’ qundi sufficiente effettuare una videochiamata tra due telefoni che supportino il flusso video perchè i due interlocutori si vedano oltre che si sentono. Un esempio di videochiamata è facilmente realizzabile utilizzando softphone BRIA installati su computer muniti di webcam. Nessuna particolare impostazione è richiesta, solo l’inserimento dei parametri SIP per la normale registrazione SIP a VoiceOne.

N.B. Nella versione 1.8.407 e precedenti un bug rende necessario specificare i codec video nella configurazione avanzata di ogni interno, spuntando e popolando il campo allow come fatto nella sezione delle opzioni generali del SIP.

No more missed calls with ring group

29 giu 2011

No Comments »

Una sostanziale differenza nell’uso dei gruppi tra il vecchio VoiceOne 1.0 ed il nuovo VoiceOne 1.8 è rappresentata dal fatto che le chiamate che allertano un gruppo di telefoni e che vengono risposte da uno di questi, non vengono più registrate come perse dagli altri. La differenza è dovuta principalmente al passaggio da Asterisk 1.2 ad Asterisk 1.8 ed è visibile su tutti quei telefoni (ad esempio Snom e Yealink) che supportano la segnalazione che Asterisk manda a tutti gli interni del gruppo se uno di questi risponde alla chiamata. Nella vecchia versione di Asterisk, così come per tutti quei telefoni hardware o software che non supportano questa specifica segnalazione, quando una chiamata faceva squillare un gruppo di interni ed uno di questi rispondeva, quest’ultimo si vedeva la chiamata registrata correttamente come “Chiamata Entrante” mentre gli altri la registravano come “Chiamata Persa”. Bastava quindi assentarsi dall’ufficio per una mezza giornata che, al rientro, si potevano trovare sul telefono decine di chiamate perse. Molte di queste chiamate però potevano essere state risposte da altri interni appartenenti agli stessi gruppi nei quali eravamo inclusi anche noi. Ora siamo sicuri che se al nostro rientro troviamo chiamate perse queste non sono effettivamente state risposte nè da noi, nè da un nostro collega.

Asterisk 1.8 queues in VoiceOne

28 giu 2011

2 Comments »

Con le ultime due release di asterisk (1.6 e 1.8) il funzionamento e l’utilizzo delle code è cambiato molto, limitandone l’uso allo stretto indispensabile e togliendo alcune possibilità utili nelle configurazioni di tutti i gironi.

Nella prima versione di VoiceOne (la 1.0), che si appoggiava all’ormai vecchio ma stabile asterisk 1.2, le code erano gestite in maniera statica, associando ad ognuna di esse uno o più agenti come member della coda. Ad ogni interno era infatti associato un agente il quale poteva essere volontariamente registrato o deregistrato dall’utente con delle apposite applicazioni. In questa maniera era possibile per ogni interno decidere dinamicamente di smettere di ricevere chiamate dalle code di cui faceva parte (deregistrando l’agente), senza dover inserire il DND e senza quindi rendersi irreperibile per tutti gli altri tipi di chiamata (interne, dirette, ecc…). L’interno poteva poi registrare nuovamente l’agente, abilitandosi alla ricezione delle chiamate in coda.

Il comando di Asterisk che permetteva questo funzionamento era l’ AgentCallbackLogin che è stato deprecato nella versione 1.4,  rimosso nella versione 1.6 e pertanto assente nella versione 1.8 di Asterisk. L’uso degli agenti si è ridotto quindi alla sola implementazione di call center avanzato, in cui gli utenti, una volta registrati alla coda con il comando AgentLogin, instaurano una chiamata permanente tra interno e centralino e sono di fatto sempre in linea. Su questo canale ricevono automaticamente le chiamate che arrivano in coda e vengono segnalate all’utente con un beep e possono venire riagganciate con la pressione di un tasto ed il conseguente invio di un tono dtmf. Questa soluzione però non è adatta all’uso che solitamente viene richiesto in fase di configurazione, ovvero che le chiamate vengano messe in coda e da li facciano squillare i telefoni in un ordine di priorità assegnata, saltando da telefono a telefono fino a ricevere risposta. Non si può infatti pretendere che chi risponde rimanga per tutta la durata della sua presenza in ufficio in linea con il centralino, tenendo pertanto occupato l’interno, in attesa che arrivi una chiamata.

La logica degli agenti rimane quindi attiva su Asterisk ma solo per usi avanzati che poco spesso, se non quasi mai, vengono richiesti. L’alternativa è l’uso diretto degli interni come member della coda. In VoiceOne 1.8 è infatti possibile indicare per ogni member la tecnologia che si desidera utilizzare:

  1. SIP/IAX: l’interno viene chiamato direttamente senza scatenare nessuna macro di gestione della chiamata
  2. Agent: la chiamata viene passata all’agente che deve essere registrato
  3. Local: viene chiamato l’interno associato attraverso le macro e la gestione della chiamata di VoiceOne

Delle tre la configurazione di default è la prima, ovvero quella che prevede l’utilizzo della tecnologia dell’interno. Il primo limite di questa configurazione è l’impossibilità di de-registrarsi dalle code, smettendo di ricevere chiamate da esse. Un altro punto dolente è l’impossibilità di far suonare un gruppo di interni e successivamente un altro gruppo di interni indicando per gli interni che si vuole suonino insieme la stessa priorità. In caso di interni con uguale priorità, Asterisk allerterà sempre e solo un interno, il primo libero. E’ quindi possibile far suonare tutti i membri della coda (con la strategia ringall) oppure un membro alla volta, scegliendolo pseudo-casualmente (strategia random) con memoria (stategia rrmemory) o in ordine di priorità (strategia linear). Il vantaggio rispetto all’uso dei canali Local è che nel CDR di Asterisk apparirà solo una riga, indipendentemente da quanti salti sono stati effettuati prima che la chiamata venisse risposta. Con l’uso dei canali Local (come avveniva con l’uso dei vecchi Agenti) infatti viene generata una chiamata ogni volta che viene allertato un telefono con un’esplosione di righe di log nel CDR e la conseguente difficoltà di lettura.

L’unico modo di far suonare diversi gruppi di telefoni in coda sembra essere descritto qui attraverso l’uso del QUEUE_MAX_PENALTY. Una gestione di questo tipo deve essere però stabilita con una macro apposita e altamente personalizzata in funzione della configurazione desiderata, risultando difficilmente manutenibile nel tempo e poco chiara.

Un’alternativa c’è ed è quella di gestire le chiamate con una macro che allerti prima un gruppo di interni ed in mancanza di risposta ne allerti un’altro, per poi tornare eventualmente al primo gruppo formando un ciclo; il tutto riproducendo al chiamante una muscia d’attesa. Chiaramente in questo caso si perdono alcune funzionalità proprie della coda come: il mantenimento della priorità delle chiamate e il messaggio periodico. Queste limitazioni, tuttavia, sono sopportabili se il traffico telefonico non è elevato ed il tempo di risposta medio è basso.

La questione rimane tuttavia aperta, a questa guida ne seguiranno altre che approfondiranno ulteriormente il problema e forniranno nuovi strumenti per lavorare con le code.

VoiceOne and Asterisk 1.8

03 dic 2010

No Comments »

Il team di VoiceOne sta lavorando in questi giorni all’aggiornamento ad Asterisk 1.8 del proprio sistema. Questo aggiornamento porterà una serie di nuove features al sistema VoiceOne, tra le quali:

  1. integrazione con Skype
  2. possibilità di chattare con gli interni e vederne lo stato da pc
  3. gestione dei fax in T.38

    Queste sono solo alcune delle nuove features che saranno presenti nelle prossime versioni di VoiceOne. In concomitanza con l’uscita delle nuove versioni commerciali, verrà anche rilasciato il codice open source aggiornato alla community.