Free Support Notes Free Support Notes Windows Linux Macintosh

15mar/11Off

Configurazione del sistema di Call Pickup

Il sistema di call pickup consente a un interno di prendere la chiamata destinata ad un altro interno mentre sta ancora suonando. L'uso piu` ovvio e` prendere la chiamata destinata ad un collega assente quando si sente che il suo telefono suona.

Il call pickup va configurato in modo da definire chi puo` prendere le chiamate di chi, fondamentalmente. Le configurazioni del pickup si fanno in due posti: il primo e` il file che definisce i telefoni interni (diciamo sip.conf nella maggior parte dei casi, ma potrebbe anche essere altro, se si usano interni con protocolli diversi dal SIP), il secondo e` nel file extensions.conf, necessario solo se si vogliono fare funambulismi particolari. Il comando di default per effettuare il pickup e` chiamare il numero "*8". E` possibile modificarlo in features.conf.

Usando il comando di pickup "generico", cioe` "*8" (di default) si prende la ultima chiamata che ha suonato in ordine di tempo. Se ci sono piu` chiamate che suonano contemporaneamente (nel proprio pickup group) allora sarebbe meglio usare un pickup "diretto" che prende la chiamata. Per farlo, si puo` usare il comando "pickup" (asterisk 1.2)

Configurazione in sip.conf

Nella definizione di un terminale ci sono due voci relative al pickup, una e` callgroup e l'altra e` pickupgroup.

La direttiva callgroup indica a quale gruppo appartiene il terminale
La direttiva pickupgroup indica che il terminale in questione puo` fare il pickup per le chiamate dirette al gruppo indicato nella voce callgroup.
So che non e` molto chiaro, ma un esempio aiutera`. Supponiamo di avere degli interni in protocollo sip, e di volere che uno di questi interni possa prendere le chiamate degli altri.

Tutti i telefoni interni avranno la direttiva callgroup=1
Il telefono che puo` prendere le chiamate degli altri, avra` la direttiva pickupgroup=1
E` consentito appartenere a un solo gruppo, quindi callgroup non ha parametri multipli, mentre e` possibile avere il diritto di fare pickup da piu` di un gruppo, quindi pickupgroup puo` avere parametri multipli, per esempio pickupgroup=1,2,3 oppure range pickupgroup=1-5 o un misto dei due 1-5,8,12.

Per fare funzionare il comando di pickup diretto per gruppo in extensions.conf, occorre mettere ogni telefono in un callgroup privato, in cui c'e` solo lui.

Questo e` un esempio di file sip.conf in cui tutti e due i telefoni appartengono allo stesso gruppo e possono prendersi le chiamate a vicenda.

[Int101]
type=friend
context=interni
username=Int101
secret=password101
host=dynamic
dtmf=rfc2833
allow=alaw
callerid= "Interno 101" <101>
canreinvite=no
pickupgroup=1
callgroup=1

[Int102]
type=friend
context=interni
username=Int102
secret=password102
allow=alaw
host=dynamic
callerid= "Interno 102" <102>
canreinvite=no
pickupgroup=1
callgroup=1
Questo e` un esempio di configurazione in cui ogni telefono e` in un callgroup privato (in cui c'e` solo lui) e pero` ogni telefono e` autorizzato a fare il pickup di tutti i gruppi. In pratica cosi` il comando di pickup generico (*8) funziona come nel caso precedente, pero` posso usare il comando pickup in extensions.conf per fare un pickup di una singola linea.

[10]
type=friend
context=interni
username=Int101
secret=password101
host=dynamic
dtmf=rfc2833
allow=alaw
callerid= "Interno 10" <10>
canreinvite=no
pickupgroup=0-63
callgroup=10

[11]
type=friend
context=interni
username=Int102
secret=password102
allow=alaw
host=dynamic
callerid= "Interno 11" <11>
canreinvite=no
pickupgroup=0-63
callgroup=11
Attenzione, i pickup group sono limitati da 0 a 63, quindi in teoria sono limitato a 63 interni singolarmente prendibili con il comando pickup. Inoltre per comodita` sarebbe meglio tenere, se si vuole configurare un pickupgroup per interno, il numero del gruppo uguale a quello dell'interno, questo vincola gli interni ad avere di fatto i numeri da 10 a 63. (se si vuole mantenere la regola che gli interni hanno due cifre)

Configurazione in extensions.conf

In extensions.conf posso mettere una configurazione che consente di fare il pickup degli interni

Esempio:

exten => _**.,1,Pickup(${EXTEN:2})
exten => _**.,2,Hangup
Questa configurazione consente di fare il pickup di una singola chiamata che sta suonando su un singolo interno chiamando il numero "**interno" (ad esempio, **10). Questa configurazione funziona con i telefoni GXP2000 e superiori, che chiamano il numero "**interno" se si preme il tasto del BLF mentre l'interno in questione sta suonando, e consente di fare il pickup usando i tasti del BLF.

Comando pickupchan

In teoria il comando pickupchan dovrebbe consentire di fare il pickup di un canale specifico, e potrebbe essere usato per evitare di dover definire un callgroup per ogni interno. Purtroppo in asterisk 1.2 e` bacato, e rimuove il il numero di interno dal canale, in pratica il comando sarebbe:

exten => _**.,1,PickupChan(SIP/${EXTEN:2})
exten => _**.,2,Hangup
Purtroppo pero` questo viene interpretato come se non avessi specificato l'estensione. Il comando pickupchan(SIP/11) di fatto fa il pickup di "SIP" e non di "SIP/11", quindi prende l'ultimo canale SIP che ha iniziato a suonare, e non, come vorrei io, il canale SIP 11.

fonte: http://casa.kurgan.org

20dic/09Off

Trixbox e callpickup (Thomson e Snom)

Una delle funzioni più utili in un centralino è sicuramente quella del call pickup, ovvero “prendere” una chiamata diretta verso altre estenzioni.
Ma non voglio parlare delle funzione in se, per la quale vi rimando qui, ma su come implementare questa funzione con i tasti BLF dei telefoni Thomson ST2030 e Snom 3X0.
Innanzittutto aggiornate entrambi i telefoni alle ultime versioni del firmware, la 1.52.1 per lo ST2030 e la 6.5.2 per i vari Snom 300, 320 e 360.
Per monitorare le linee tramite i BLF dovrete configurare come Supervised Line i tasti nel Thomson e come Extension sugli Snom.
In questo modo vedrete i led lampeggiare quando le linee ricevono una telefonata e fissi se sono occupati.
Ma mentre lampeggiano, se cliccate sul tasto non succederà niente, anzi magari partirà un altra chiamata verso quella estenzione.
A questo punto in features.conf dovrete scrivere pickupexten => *8 nel contesto general e poi in extensions_custom.conf create questo contesto

[app-pickup-custom]
exten => _*8.,1,Noop(Attempt to Pickup ${EXTEN:2} by ${CALLERID(num)})
exten => _*8.,n,Pickup(${EXTEN:2})

A patto di avere

[app-pickup]
include => app-pickup-custom
exten => _**.,1,Noop(Attempt to Pickup ${EXTEN:2} by ${CALLERID(num)})
exten => _**.,n,Pickup(${EXTEN:2})

   

Social Widgets powered by AB-WebLog.com.