Home > Articolo Tecnico, Voip > Asterisk – VoiceMail e Directory [sesta parte]

Asterisk – VoiceMail e Directory [sesta parte]

February 16th, 2009 Leave a comment Go to comments

L’applicazione VoiceMail()

Una delle funzioni più interessanti di Asterisk è quella della VoiceMail. Grazie a questa applicazione ogni utente può avere la propria segreteria telefonica a cui può accedere secondo le specifiche stabilite.

Inoltre è possibile settare Asterisk in modo tale da far inviare alla caselle di posta un email con l’allegato wave del messaggio lasciato in segreteria. Vediamo come implementare tutto questo.

Aggiungiamo la VoiceMail agli interni

voicemail.conf



...

[default]
6001 => 1234,Polycom,pol@iol.it
6002 => 1234,Zoiper,zoip@iol.it


sip.conf



;*******************************************
;*** GLOBAL SETTING

[general]
context=default
realm=class.digium.com
bindport=5060
bindaddr=0.0.0.0
srvlookup=yes
disallow=all
allow=ulaw
allow=gsm
language=en

;*******************************************
;*** REGISTER STATEMENTS

;*******************************************
;*** FRIENDS, USER AND PEERS…

[6001]
type=friend
host=dynamic
secret=zoiper
context=users
mailbox=6001@default ; serve solo per mandare la notifica al telefono

[6002]
type=friend
host=dynamic
secret=polycom
context=users
mailbox=6002@defaul

extensions.conf



;*******************************************
;*** GLOBAL SETTING FOR EXTENSION

[general]
static=yes
writeprotect=no
autofallthrough=yes
clearglobalvars=no
priorityjumping=no

;*******************************************
;*** GLOBAL SETTING FOR variables

[globals]

;*******************************************
;*** EXTENSION CONTEXT

[users]
exten => 6001,1,Dial(SIP/6001,20)
exten => 6001,n,VoiceMail(6001@default)

exten => 6002,1,Dial(SIP/6002,20)
exten => 6002,n,VoiceMail(6002@default)

;exten => _600x,1,Dial(SIP/${EXTEN},20)
include => features

[features]
exten => 6599,1,Answer()
exten => 6599,n,Playback(hello-world)
exten => 6599,n,wait(2)
exten => 6599,n,Playback(good-evening)
exten => 6599,n,Hangup()
exten => 6598,1,Goto(demo-menu,s,1)

;per ascoltare i messaggi
exten => 6500,1,Answer()
exten => 6500,n,VoiceMailMain(@default)

[demo-menu]
exten => s,1,Answer()
exten => s,n,Wait(1)
exten => s,n,Background(press-1)
exten => s,n,Background(or)
exten => s,n,Background(press-2)
exten => s,n,WaitExten(3) ;aspetta 3 secondi passati i quali va all’estensione t

exten => 1,1,Playback(you-entered)
exten => 1,n,Playback(digits/1)
exten => 1,n,Goto(s,1) ;

exten => 2,1,Playback(you-entered)
exten => 2,n,Playback(digits/2)
exten => 2,n,Goto(s,1)

exten => h,1,NoOp(Shucks, they hung up!!!)

exten => t,1,Playback(too-low)
exten => t,n,Hangup()

exten => i,1,Playback(pbx-invalid)
exten => i,n,Hangup()

Servizio Directory

Con il servizio Directory è possibile chiedere ad Asterisk l’interno di una persona inserendo da tastiera (come con la modalità T9) le prime tre lettere del cognome. Se ci sono più match corrispondenti alla stessa digitazione il sistema legge l’elenco delle persone matchate e per ciascuna di esse chiede conferma all’utente.

extension.conf



...

[users]
exten => 6001,1,Dial(SIP/6001,20)
exten => 6001,n,VoiceMail(6001@default)

exten => 6002,1,Dial(SIP/6002,20)
exten => 6002,n,VoiceMail(6002@default)

;exten => _600x,1,Dial(SIP/${EXTEN},20)
include => features

[features]
exten => 6599,1,Answer()
exten => 6599,n,Playback(hello-world)
exten => 6599,n,wait(2)
exten => 6599,n,Playback(good-evening)
exten => 6599,n,Hangup()
exten => 6598,1,Goto(demo-menu,s,1)

exten => 6601,1,Goto(day-menu,s,1) ;ACCESS EXTENSION

;Record The Day Menu
exten => 6600,1,Answer()
exten => 6600,n,Wait(0,5)
exten => 6600,n,Record(day-menu.gsm)
exten => 6600,n,Wait(1)
exten => 6600,n,Playback(day-menu)

[day-menu]
exten => s,1,Answer()
exten => s,n,Wait(0.5)
exten => s,n,Background(day-menu)
exten => s,n,WaitExten(5)

exten => 1,1,Goto(users,6001,1)

exten => 2,1,Goto(users,6002,1)

exten => 9,1,Directory(default,users,e)

exten => *,1,Goto(s,1)

exten => t,1,Playbach(goodbay)
exten => t,n,Hangup()

exten => i,1,Playback(pbx-invalid)
exten => i,n,Goto(s,1)

Le applicazioni Authenticate e VMAuthenticate()

Forniscono un modo semplice per autenticare la chiamata (per es per permettere le chiamate internazionali)

exten => 6101,n,Authenticate(1234)

con VMAuthenticate si può usare il PIN della mailbox

exten => => 6101,n,VMAuthenticate([mailbox][@context])

Categories: Articolo Tecnico, Voip Tags:
  1. No comments yet.
  1. No trackbacks yet.
You must be logged in to post a comment.