Category: Dialplan

per chi come me fosse stato in vacanza occupandosi di tutto tranne che di voip, ecco una breve panoramica su quanto e’ accaduto nel mondo di asterisk nel frattempo.

30 Luglio - nella mailing list -users di Asterisk e’ copraso un Load balacer per IAX2, che non necessita di Asterisk. Al momento a detta dell’autore e’ in fase di sviluppo, ma da test fatti e’ gia possibile utilizzarlo.
http://www.gradwell.com/tmp/iax_proxy.tar.gz

1 Agosto - SiVuS , e’ stata rilasciata la nuova versione 1.10 per Linux, uno scanner di vulnerabilita SIP.

3 Agosto - [OT] Google Phone, ennesimo annuncio, chissa

5 Agosto - AsterCRM, e’ nata un alternativa al famoso SugarCRM, pensata per Asterisk, le funzionalita‘ sono ovviamente minori, anche se al momento gia mostra Pop-up when dial in, PoP-up when dial out, Auto-complete, Click-to-dial, Transfer e Exension manager.

7 Agosto - Asterisk 1.2.24 and 1.4.10 released, nel comunicato si consiglia l’upgrade a chi utilizza chan_skinny, che soffriva dell’ennesimo bug. Per il resto sono stati effettuati numerosi fix, in particolare sul chan IAX2.

8 Agosto - chan_mobile, in asterisk_addons. Attraverso questo chan e’ possibile utilizzare cellulari bluetooth come FXO ed il microfono come FXO, bello no :)

14 Agosto - Iaxclient Branching off 2.0, e’ stato aperto il ramo 2.0 contenente il supporto video in modo ufficiale, prima era presente solo in svn.

15 Agosto - Lightweight Home Security with Indigo and Asterisk, ovvero domotica targata Asterisk,

16 Agosto - [OT ma doveroso] 14 Compleanno di Debian :D

17 Agosto - Skype, caduto! Le dichiarazioni uffciali negano la possibilita’ di un attacco, ma non molto tempo prima e’ stato pubblicato questo… che abbia influito?!

#!/usr/bin/perl
# Simle Code by Maranax Porex ;D
# Ya Skaypeg!!

for ($i=256; $i>xCCCCC; $i=$i+256){
$eot=’AAAA’ x $i;
call_sp();
}
exit;

sub call_sp(){
$str=â€?\â€?C:\\Program Files\\Skype\\Phone\\Skype.exe\â€? \â€?/uri:$eot\â€?”;
}

Asterisk e Bluethooth, Nerd Vittles, ha pubblicato un articolo in cui spiega passo passo come utilizzarlo.

L’articolo e’ pensato per Bluetooth + Asterisk + iPhone, ma come noterete l’idea alla base e’ molto semplice e utilizzabile con qualsiasi dispositivo.

Il funzionamento e’ molto semplice, vi e’ uno script che verifica la presenza di apparti bluetooth, nel caso in cui trovasse quello “richiesto” inserisce un valore nel DB del nostro asterisk. Sara sufficente modificare il nostro Dialplan e far comportare il nostro asterisk in modo diverso in base alla presenza o meno di un dato valore nel DB.

Attraverso SinoLogic sono venuto a conosccenza di Nrenum.net.

What is nrenum.net?

nrenum.net provides countries, where the Golden ENUM Tree (e164.arpa) is not (yet) available, with the possibility to publish ENUM data. The nrenum.net tree is queried by the participating partners in case no ENUM data is found in the Golden Tree. Those countries that have already access to the Golden Tree cannot get a delegation in nrenum.net. As soon as the Golden Tree is available in a country, e164.arpa shall be used, and the delegation in nrenum.net will be revoked.

In pratica Nrenum fornisce supporto enum, ai paesi in cui non e’ ancora attivo. Tra questi c’e’ l’Italia a quanto ne so in fase di sperimentazione da diverso tempo, ora pero’ in qualche modo accessibile.

Country NREN CC Populates tree Queries trees Populates NAPTR types Queries NAPTR
Italy GARR +39 nrenum.net e164.arpa, nrenum.net sip, h323 sip, h323

Vengono inoltre forniti how-to per i seguenti programmi/telefoni:
* How-to use GnuGK with nrenum.net
* How-to use OpenSER with nrenum.net
* How-to use Asterisk with nrenum.net
* How-to use snom 360 Softphone with nrenum.net
* How to use NAPTR / SRV records for H.323 / SIP with nrenum.net

In realta il titolo doveva essere “Confcall Application For Asterisk 1.2 Released”, l’applicazione non e’ inclusa in Asterisk o Asterisk-addons, l’autore pero’ e’ di tutto rispetto, ovvero il creatore di FreeSwitch, ma anche uno dei maggiori contributori di Asterisk, infatti e’ ancora tra i piu “decorati” nalla hall of fame del bugtrack di digium (il numero 3), appena dopo Olle. e un gradino prima di Luigi Rizzo.

L’applicazione come spesso avviene in quelle da lui aggiunte, implementa funzionalita’ mancanti in Asterisk. I dettagli di questa release li potete leggere qui.

Altre sue release sono:
* app_backtrick: esegue un comando e restituisce l’output su una variabile
* app_changrab: acquisisce un canale specificato e lo mette in collegamento con il chiamante.
* app_event: invia un evento da dialplan o AGI.

Ed altre che potete trovare in questo repository.

A volte puo’ essere utile poter registrare selettivamente parte di una conversazione telefonica, alcuni telefoni come ad esempio gli Snom320 hanno un tasto “record” per gli altri e’ possibile abilitare un particolare codice.

Snom320 Record

Vediamo come bisogna fare per abilitare il monitoring su Asterisk.

nel file features.conf, nella sezione featuremap inserire se non presente la chiave automon con la combinazione scelta, nell’esempio “*1


[featuremap]
automon => *1

I file vengono poi salvati in una sotto directory di /var/spool/asterisk o quella da voi specificata dalla variabile astspooldir in asterisk.conf chiamata monitor (alcune distribuzioni che pacchettizzano asterisk non la creano di default )

Il nome dei file e’ nel formato auto-${EPOCH}-caller-calee-(in|out).wav
Epoch rappresenta la data, caller e callee diventano il chan_id del chiamante e del chiamato, mentre in o out determina quale flusso della telefonata e’ registrata nel file. IL formato come vedremo in seguito si puo’ modificare.

Proseguendo la nostra mini guida in extension.conf possiamo inserire nella sezione global alcune variabili per personalizzare il servizio, queste variabili posso anche essere configurate nel da una qualche exten nel caso servisse ovviamente.


TOUCH_MONITOR = valore ;Il valore scritto nella variabile va a sostituire la scritta "caller-callee" nel nome del file

TOUCH_MONITOR_FORMAT = formato; Ridefinisce i lformato con qui vengono salvati i file, di default e' "wav" ma puo' essere modificato con quello preferito supportato da asterisk ad esempio gsm.

Le variabile scritte posso essere anche utilizzate per leggere i valori, alle quali si aggiunge


${TOUCH_MONITOR_OUTPUT} che contiene il nome del file salvato dopo la registrazione.

L’applicazione dial mette poi a disposizione due opzioni “wW” che permettono nell’ordine al chiamto e/o al chiamte di usufruire del servizio


exten => 100, 1, Dial(SIP/100, 30, wW)

Tutto qui. Facile no.

Come abbiamo accennato ogni conversazione viene salvata in due file, uno con il lato chiamante ed uno con quello del chiamato, ovviamente a noi farebbe comodo avere un unico file con entrambe le voci nella giusta sequenza. Asterisk fortunatamente registra una le voci in canali (sinisto e destro) distinti, questo ci permette di riunirli con facilita’ usufruendo del comando soxmix contenuto nelle sox.


soxmix *in.wav *out.wav output.wav

Eventualmente possiamo convertire poi il file in mp3 per salvare spazio


lame --preset voice -v -B 64 -a output.wav output.mp3

Attraverso l’applicazione ControlPlayback potete offrire un servizo per riascoltare le registrazioni con tanto di comandi pause, fast ff, rev etc classi di un player.

Il resto va a fantasia :)

Altre informazioni le potet trovare:

Autore: Leif Madsen http://www.leifmadsen.com/
Data: Wednesday August 31st, 2005

Problema: Con delle estensioni numeriche, avete bisogno di ricordare il numero assegnato ad ogni registrazione o dovete rinominarla appena registrata.

Soluzione: Asterisk supporta esetensioni alfanumeriche, percio’ possiamo nominare il file con l’estesione chiamata utilizzando ad esempio un comunissimo softphone o telefoni come il Cisco 7960.
» Read the rest of the entry..