b776fd60d9ae4f474e244b824ee8ebaeb8da74a5
[asterisk/asterisk.git] / configs / voicemail.conf.sample
1 ;
2 ; Voicemail Configuration
3 ;
4
5 ;
6 ; NOTE: Asterisk has to edit this file to change a user's password.  This does
7 ; not currently work with the "#include <file>" directive for Asterisk
8 ; configuration files, nor when using realtime static configuration.
9 ; Do not use them with this configuration file.
10 ;
11
12 [general]
13 ; Formats for writing Voicemail.  Note that when using IMAP storage for
14 ; voicemail, only the first format specified will be used.
15 ;format=g723sf|wav49|wav
16 format=wav49|gsm|wav
17 ;
18 ; WARNING:
19 ; If you change the list of formats that you record voicemail in
20 ; when you have mailboxes that contain messages, you _MUST_ absolutely
21 ; manually go through those mailboxes and convert/delete/add the
22 ; the message files so that they appear to have been stored using
23 ; your new format list. If you don't do this, very unpleasant
24 ; things may happen to your users while they are retrieving and
25 ; manipulating their voicemail.
26 ;
27 ; In other words: don't change the format list on a production system
28 ; unless you are _VERY_  sure that you know what you are doing and are
29 ; prepared for the consequences.
30 ;
31 ; Who the e-mail notification should appear to come from
32 serveremail=asterisk
33 ;serveremail=asterisk@linux-support.net
34 ; Should the email contain the voicemail as an attachment
35 attach=yes
36 ; Maximum number of messages per folder.  If not specified, a default value
37 ; (100) is used.  Maximum value for this option is 9999.  If set to 0, a
38 ; mailbox will be greetings-only.
39 ;maxmsg=100
40 ; Maximum length of a voicemail message in seconds
41 ;maxsecs=180
42 ; Minimum length of a voicemail message in seconds for the message to be kept
43 ; The default is no minimum.
44 ;minsecs=3
45 ; Maximum length of greetings in seconds
46 ;maxgreet=60
47 ; How many milliseconds to skip forward/back when rew/ff in message playback
48 skipms=3000
49 ; How many seconds of silence before we end the recording
50 maxsilence=10
51 ; Silence threshold (what we consider silence: the lower, the more sensitive)
52 silencethreshold=128
53 ; Max number of failed login attempts
54 maxlogins=3
55 ;
56 ; Move heard messages to the 'Old' folder automagically.  Defaults to on.
57 ;moveheard=yes
58 ;
59 ; Forward an urgent message as an urgent message.  Defaults to no so
60 ; sender can set the urgency on the envelope of the forwarded message.
61 ;forward_urgent_auto=no
62 ;
63 ; User context is where entries from users.conf are registered.  The
64 ; default value is 'default'
65 ;
66 ;userscontext=default
67 ;
68 ; If you need to have an external program, i.e. /usr/bin/myapp
69 ; called when a voicemail is left, delivered, or your voicemailbox
70 ; is checked, uncomment this.
71 ;externnotify=/usr/bin/myapp
72
73 ; If you would also like to enable SMDI notification then set smdienable to yes.
74 ; You will also need to make sure smdiport is set to a valid port as specified in
75 ; smdi.conf.
76 ;smdienable=yes
77 ;smdiport=/dev/ttyS0
78
79 ; If you need to have an external program, i.e. /usr/bin/myapp
80 ; called when a voicemail password is changed, uncomment this. The
81 ; arguments passed to the application are: <context> <mailbox> <newpassword>
82 ; Note: If this is set, the password will NOT be changed in voicemail.conf
83 ; If you would like to also change the password in voicemail.conf, use
84 ; the externpassnotify option below instead.
85 ;externpass=/usr/bin/myapp
86 ;externpassnotify=/usr/bin/myapp
87
88 ; If you would like to have an external program called when a user changes the
89 ; voicemail password for the purpose of doing validation on the new password,
90 ; then use this option.  The script can decide whether or not the new password
91 ; meets minimum password strength requirements before the Voicemail application
92 ; accepts the password.  If the script decides that the password is not acceptable,
93 ; the user will be informed that the new password does not meet minimum password
94 ; requirements, and they will be asked to enter another password.
95 ;
96 ; The arguments passed to this script are <mailbox> <context> <old pw> <new pw>.
97 ;
98 ; The script should print "VALID" to stdout to indicate that the new password
99 ; is acceptable.  If the password is considered too weak, the script should print
100 ; "INVALID" to stdout.
101 ;
102 ; There is an example script in the contrib/scripts/ directory, voicemailpwcheck.py,
103 ; which implements some basic password checking, and can be used as a starting point
104 ; for use with this option.
105 ;
106 ;externpasscheck=/usr/local/bin/voicemailpwcheck.py
107
108 ; For the directory, you can override the intro file if you want
109 ;directoryintro=dir-intro
110 ; The character set for voicemail messages can be specified here
111 ; default: ISO-8859-1
112 ;charset=UTF-8
113 ; The ADSI feature descriptor number to download to
114 ;adsifdn=0000000F
115 ; The ADSI security lock code
116 ;adsisec=9BDBF7AC
117 ; The ADSI voicemail application version number.
118 ;adsiver=1
119 ; Skip the "[PBX]:" string from the message title
120 ;pbxskip=yes
121 ; Change the From: string
122 ;fromstring=The Asterisk PBX
123 ; Permit finding entries for forward/compose from the directory
124 ;usedirectory=yes
125 ; Voicemail can be stored in a database using the ODBC driver.
126 ; The value of odbcstorage is the database connection configured
127 ; in res_odbc.conf.
128 ;odbcstorage=asterisk
129 ; The default table for ODBC voicemail storage is voicemessages.
130 ;odbctable=voicemessages
131 ;
132 ; Change the from, body and/or subject, variables:
133 ;     VM_NAME, VM_DUR, VM_MSGNUM, VM_MAILBOX, VM_CALLERID, VM_CIDNUM,
134 ;     VM_CIDNAME, VM_DATE
135 ; Additionally, on forwarded messages, you have the variables:
136 ;     ORIG_VM_CALLERID, ORIG_VM_CIDNUM, ORIG_VM_CIDNAME, ORIG_VM_DATE
137 ; You can select between two variables by using dialplan functions, e.g.
138 ;     ${IF(${ISNULL(${ORIG_VM_DATE})}?${VM_DATE}:${ORIG_VM_DATE})}
139 ;
140 ; Note: The emailbody config row can only be up to 512 characters due to a
141 ;       limitation in the Asterisk configuration subsystem.
142 ;emailsubject=[PBX]: New message ${VM_MSGNUM} in mailbox ${VM_MAILBOX}
143 ; The following definition is very close to the default, but the default shows
144 ; just the CIDNAME, if it is not null, otherwise just the CIDNUM, or "an unknown
145 ; caller", if they are both null.
146 ;emailbody=Dear ${VM_NAME}:\n\n\tjust wanted to let you know you were just left a ${VM_DUR} long message (number ${VM_MSGNUM})\nin mailbox ${VM_MAILBOX} from ${VM_CALLERID}, on ${VM_DATE}, so you might\nwant to check it when you get a chance.  Thanks!\n\n\t\t\t\t--Asterisk\n
147 ;
148 ; Note: ${IF()} strips spacing at the beginning and end of its true and false
149 ; values, so a newline cannot be placed at either location.  The word 'so' is
150 ; therefore duplicated, in order for the newline to be interpreted correctly.
151 ;emailbody=Dear ${VM_NAME}:\n\n\tjust wanted to let you know you were just ${IF($["${VM_CIDNUM}" = "${ORIG_VM_CIDNUM}"]?left:forwarded)} a ${VM_DUR} long message (number ${VM_MSGNUM})\nin mailbox ${VM_MAILBOX} from ${VM_CALLERID}, on ${VM_DATE},\n${IF($["${VM_CIDNUM}" = "${ORIG_VM_CIDNUM}"]?so:(originally sent by ${ORIG_VM_CALLERID} on ${ORIG_VM_DATE})\nso)} you might want to check it when you get a chance.  Thanks!\n\n\t\t\t\t--Asterisk\n
152 ;
153 ; You can also change the Pager From: string, the pager body and/or subject.
154 ; The above defined variables also can be used here
155 ;pagerfromstring=The Asterisk PBX
156 ;pagersubject=New VM
157 ;pagerbody=New ${VM_DUR} long msg in box ${VM_MAILBOX}\nfrom ${VM_CALLERID}, on ${VM_DATE}
158 ;
159 ; Set the date format on outgoing mails. Valid arguments can be found on the
160 ; strftime(3) man page
161 ;
162 ; Default
163 emaildateformat=%A, %B %d, %Y at %r
164 ; 24h date format
165 ;emaildateformat=%A, %d %B %Y at %H:%M:%S
166 ;
167 ; Default for pager use
168 pagerdateformat=%A, %B %d, %Y at %r
169 ; Short 24h date format for pager use
170 ;pagerdateformat=%T %D
171 ;
172 ; You can override the default program to send e-mail if you wish, too
173 ;
174 ;mailcmd=/usr/sbin/sendmail -t
175 ;
176 ;pollmailboxes=no    ;   If mailboxes are changed anywhere outside of app_voicemail,
177 ;                    ; then this option must be enabled for MWI to work.  This
178 ;                    ; enables polling mailboxes for changes.  Normally, it will
179 ;                    ; expect that changes are only made when someone called in
180 ;                    ; to one of the voicemail applications.
181 ;                    ;   Examples of situations that would require this option are
182 ;                    ; web interfaces to voicemail or an email client in the case
183 ;                    ; of using IMAP storage.
184 ;                    ; Default: no
185 ;pollfreq=30         ;   If the "pollmailboxes" option is enabled, this option
186 ;                    ; sets the polling frequency.  The default is once every
187 ;                    ; 30 seconds.
188 ;
189
190 ; -----------------------------------------------------------------------------
191 ; IMAP configuration settings only
192 ;   These settings are only applicable when Asterisk is compiled with IMAP support.
193 ;
194 ;imapgreetings=no        ; If using IMAP storage, specify whether voicemail greetings
195                          ; should be stored via IMAP. If no, then greetings are stored
196                          ; as if IMAP storage were not enabled.
197 ;greetingsfolder=INBOX   ; If imapgreetings=yes, then specify which folder to store
198                          ; your greetings in. If you do not specify a folder, then INBOX
199                          ; will be used
200 ;imapparentfolder=INBOX  ; Some IMAP server implementations store folders under INBOX
201                          ; instead of using a top level folder (ex. INBOX/Friends).  In
202                          ; this case, user imapparentfolder to set the parent folder. For
203                          ; example, Cyrus IMAP does NOT use INBOX as the parent. Default
204                          ; is to have no parent folder set.
205 ;imapserver=localhost    ; The address of the IMAP server
206 ;imapport=143            ; The port of the IMAP server
207 ;imapflags=ssl           ; Optional flags to pass to the IMAP server in the IMAP mailbox
208                          ; name.  For example, setting this to 'ssl' will enable OpenSSL
209                          ; encryption, assuming the IMAP libraries were compiled with
210                          ; OpenSSL support.
211 ;imapfolder=INBOX        ; The folder in which to store voicemail messages on the IMAP
212                          ; server.  By default, they are stored in INBOX.
213 ;authuser=user           ; The master user to use for connecting to the IMAP server, if
214                          ; the server is configured with a single user that has access to
215                          ; all mailboxes
216 ;authpassword=password   ; The password for the authuser, if used
217 ;imapopentimeout=60      ; The TCP open timeout (in seconds)
218 ;imapclosetimeout=60     ; The TCP close timeout (in seconds)
219 ;imapreadtimeout=60      ; The TCP read timeout (in seconds)
220 ;imapwritetimeout=60     ; The TCP write timeout (in seconds)
221
222 ; -----------------------------------------------------------------------------
223 ;
224
225 ; Each mailbox is listed in the form <mailbox>=<password>,<name>,<email>,<pager_email>,<options>
226 ; if the e-mail is specified, a message will be sent when a message is
227 ; received, to the given mailbox. If pager is specified, a message will be
228 ; sent there as well. If the password is prefixed by '-', then it is
229 ; considered to be unchangeable.
230 ;
231 ; Advanced options example is extension 4069
232 ; NOTE: All options can be expressed globally in the general section, and
233 ; overridden in the per-mailbox settings, unless listed otherwise.
234 ;
235 ; tz=central            ; Timezone from zonemessages below. Irrelevant if envelope=no.
236 ; locale=de_DE.UTF-8    ; set the locale for generation of the date/time strings (make 
237                         ; sure the locales are installed in your operating system; e.g
238                         ; on Debian Linux you can use "dpkg-reconfigure locales").
239                         ; If you use UTF-8 locales, make sure to set the "charset" option
240                         ; to UTF-8 too. If you mix different locales for different users
241                         ; you should avoid words in the emaildateformat specification, e.g.:
242                         ; emaildateformat=%A, %d %B %Y, %H:%M:%S
243 ; attach=yes            ; Attach the voicemail to the notification email *NOT* the pager email
244 ; attachfmt=wav49       ; Which format to attach to the email.  Normally this is the
245                         ; first format specified in the format parameter above, but this
246                         ; option lets you customize the format sent to particular mailboxes.
247                         ; Useful if Windows users want wav49, but Linux users want gsm.
248                         ; [per-mailbox only]
249 ; saycid=yes            ; Say the caller id information before the message. If not described,
250                         ;     or set to no, it will be in the envelope. When enabled, if a recorded file 
251                         ;     with the same name as the caller id exists in 
252                         ;     <astspooldir>/recordings/callerids, then that file will be played as a name
253                         ;     rather than saying each digit as a phone number.
254 ; cidinternalcontexts=intern    ; Internal Context for Name Playback instead of
255                         ; extension digits when saying caller id.
256 ; sayduration=no        ; Turn on/off the duration information before the message. [ON by default]
257 ; saydurationm=2        ; Specify the minimum duration to say. Default is 2 minutes
258 ; dialout=fromvm ; Context to dial out from [option 4 from mailbox's advanced menu].
259                  ; If not specified, option 4 will not be listed and dialing out
260                  ; from within VoiceMailMain() will not be permitted.
261 sendvoicemail=yes ; Allow the user to compose and send a voicemail while inside
262                   ; VoiceMailMain() [option 5 from mailbox's advanced menu].
263                   ; If set to 'no', option 5 will not be listed.
264 ; searchcontexts=yes    ; Current default behavior is to search only the default context
265                         ; if one is not specified.  The older behavior was to search all contexts.
266                         ; This option restores the old behavior [DEFAULT=no]
267                         ; Note: If you have this option enabled, then you will be required to have
268                         ; unique mailbox names across all contexts. Otherwise, an ambiguity is created
269                         ; since it is impossible to know which mailbox to retrieve when one is requested.
270 ; callback=fromvm       ; Context to call back from
271                         ;     if not listed, calling the sender back will not be permitted
272 ; exitcontext=fromvm    ; Context to go to on user exit such as * or 0
273                         ;     The default is the current context.
274 ; review=yes            ; Allow sender to review/rerecord their message before saving it [OFF by default
275 ; operator=yes      ; Allow sender to hit 0 before/after/during leaving a voicemail to
276                     ; reach an operator.  This option REQUIRES an 'o' extension in the
277                     ; same context (or in exitcontext, if set), as that is where the
278                     ; 0 key will send you.  [OFF by default]
279 ; envelope=no           ; Turn on/off envelope playback before message playback. [ON by default]
280                         ;     This does NOT affect option 3,3 from the advanced options menu
281 ; delete=yes            ; After notification, the voicemail is deleted from the server. [per-mailbox only]
282                         ;     This is intended for use with users who wish to receive their
283                         ;     voicemail ONLY by email. Note:  "deletevoicemail" is provided as an
284                         ;     equivalent option for Realtime configuration.
285 ; alias=Bongo       ; Use this additional string for comparison while looking
286                     ; for a match in the Directory application.  This option
287                     ; may be specified multiple times to specify additional
288                     ; strings [per-mailbox only]
289 ; volgain=0.0           ; Emails bearing the voicemail may arrive in a volume too
290                         ;     quiet to be heard.  This parameter allows you to specify how
291                         ;     much gain to add to the message when sending a voicemail.
292                         ;     NOTE: sox must be installed for this option to work.
293 ; nextaftercmd=yes      ; Skips to the next message after hitting 7 or 9 to delete/save current message.
294 ; forcename=yes         ; Forces a new user to record their name.  A new user is
295                         ;     determined by the password being the same as
296                         ;     the mailbox number.  The default is "no".
297 ; forcegreetings=no     ; This is the same as forcename, except for recording
298                         ;     greetings.  The default is "no".
299 ; hidefromdir=yes       ; Hide this mailbox from the directory produced by app_directory
300                         ;     The default is "no".
301 ; tempgreetwarn=yes     ; Remind the user that their temporary greeting is set
302
303 ; passwordlocation=spooldir
304                     ; Usually the voicemail password (vmsecret) is stored in
305                     ; this configuration file.  By setting this option you can
306                     ; specify where Asterisk should read/write the vmsecret.
307                     ; Supported options:
308                     ;   voicemail.conf:
309                     ;     This is the default option.  The secret is read from
310                     ;     and written to voicemail.conf (or users.conf).
311                     ;   spooldir:
312                     ;     The secret is stored in a separate file in the user's
313                     ;     voicemail spool directory in a file named secret.conf.
314                     ;     Please ensure that normal Linux users are not
315                     ;     permitted to access Asterisk's spool directory as the
316                     ;     secret is stored in plain text.  If a secret is not
317                     ;     found in this directory, the password in
318                     ;     voicemail.conf (or users.conf) will be used.
319                     ; Note that this option does not affect password storage for
320                     ; realtime users, which are still stored in the realtime
321                     ; backend.
322 ; messagewrap=no    ; Enable next/last message to wrap around to
323                     ; first (from last) and last (from first) message
324                     ; The default is "no".
325 ; minpassword=0 ; Enforce minimum password length
326
327 ; vm-password=custom_sound
328                         ;     Customize which sound file is used instead of the default
329                         ;     prompt that says: "password"
330 ; vm-newpassword=custom_sound
331                         ;     Customize which sound file is used instead of the default
332                         ;     prompt that says: "Please enter your new password followed by
333                         ;     the pound key."
334 ; vm-passchanged=custom_sound
335                         ;     Customize which sound file is used instead of the default
336                         ;     prompt that says: "Your password has been changed."
337 ; vm-reenterpassword=custom_sound
338                         ;     Customize which sound file is used instead of the default
339                         ;     prompt that says: "Please re-enter your password followed by
340                         ;     the pound key"
341 ; vm-mismatch=custom_sound
342                         ;     Customize which sound file is used instead of the default
343                         ;     prompt that says: "The passwords you entered and re-entered
344                         ;     did not match."
345 ; vm-invalid-password=custom_sound
346                         ;     Customize which sound file is used instead of the default
347                         ;     prompt that says: ...
348 ; vm-pls-try-again=custom_sound
349                         ; Customize which sound file is used instead of the
350                         ; default prompt that says "Please try again."
351 ; vm-prepend-timeout=custom_sound
352                         ; Customize which sound file is used when the user
353                         ; times out while recording a prepend message instead
354                         ; of the default prompt that says "then press pound"
355                         ; note that this will currently follow vm-pls-try-again.
356                         ; this behavior is subject to change in the near future.
357 ; listen-control-forward-key=#  ; Customize the key that fast-forwards message playback
358 ; listen-control-reverse-key=*  ; Customize the key that rewinds message playback
359 ; listen-control-pause-key=0    ; Customize the key that pauses/unpauses message playback
360 ; listen-control-restart-key=2  ; Customize the key that restarts message playback
361 ; listen-control-stop-key=13456789      ; Customize the keys that interrupt message playback, probably all keys not set above
362
363 ; Maximum number of messages allowed in the 'Deleted' folder. If set to 0
364 ; or no then no deleted messages will be moved. If non-zero (max 9999) then up
365 ; to this number of messages will be automagically saved when they are
366 ; 'deleted' on a FIFO basis.
367 ; defaults to being off
368 ; backupdeleted=100
369
370
371 [zonemessages]
372 ; Users may be located in different timezones, or may have different
373 ; message announcements for their introductory message when they enter
374 ; the voicemail system. Set the message and the timezone each user
375 ; hears here. Set the user into one of these zones with the tz= attribute
376 ; in the options field of the mailbox. Of course, language substitution
377 ; still applies here so you may have several directory trees that have
378 ; alternate language choices.
379 ;
380 ; Look in /usr/share/zoneinfo/ for names of timezones.
381 ; Look at the manual page for strftime for a quick tutorial on how the
382 ; variable substitution is done on the values below.
383 ;
384 ; Supported values:
385 ; 'filename'    filename of a soundfile (single ticks around the filename
386 ;               required)
387 ; ${VAR}        variable substitution
388 ; A or a        Day of week (Saturday, Sunday, ...)
389 ; B or b or h   Month name (January, February, ...)
390 ; d or e        numeric day of month (first, second, ..., thirty-first)
391 ; Y             Year
392 ; I or l        Hour, 12 hour clock
393 ; H             Hour, 24 hour clock (single digit hours preceded by "oh")
394 ; k             Hour, 24 hour clock (single digit hours NOT preceded by "oh")
395 ; M             Minute, with 00 pronounced as "o'clock"
396 ; N             Minute, with 00 pronounced as "hundred" (US military time)
397 ; P or p        AM or PM
398 ; Q             "today", "yesterday" or ABdY
399 ;               (*note: not standard strftime value)
400 ; q             "" (for today), "yesterday", weekday, or ABdY
401 ;               (*note: not standard strftime value)
402 ; R             24 hour time, including minute
403 ;
404 eastern=America/New_York|'vm-received' Q 'digits/at' IMp
405 central=America/Chicago|'vm-received' Q 'digits/at' IMp
406 central24=America/Chicago|'vm-received' q 'digits/at' H N 'hours'
407 military=Zulu|'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p'
408 european=Europe/Copenhagen|'vm-received' a d b 'digits/at' HM
409
410
411
412 [default]
413
414 1234 => 4242,Example Mailbox,root@localhost
415 ;4200 => 9855,Mark Spencer,markster@linux-support.net,mypager@digium.com,attach=no|serveremail=myaddy@digium.com|tz=central|maxmsg=10
416 ;4300 => 3456,Ben Rigas,ben@american-computer.net
417 ;4310 => -5432,Sales,sales@marko.net
418 ;4069 => 6522,Matt Brooks,matt@marko.net,,|tz=central|attach=yes|saycid=yes|dialout=fromvm|callback=fromvm|review=yes|operator=yes|envelope=yes|moveheard=yes|sayduration=yes|saydurationm=1
419 ;4073 => 1099,Bianca Paige,bianca@biancapaige.com,,delete=1|emailsubject=You have a new voicemail.|emailbody=Click on the attachment to listen.|rip=2010-06-04
420 ;4110 => 3443,Rob Flynn,rflynn@blueridge.net
421 ;4235 => 1234,Jim Holmes,jim@astricon.ips,,Tz=european
422
423
424 ;
425 ; Mailboxes may be organized into multiple contexts for
426 ; voicemail virtualhosting
427 ;
428
429 [other]
430 ;The intro can be customized on a per-context basis
431 ;directoryintro=dir-company2
432 1234 => 5678,Company2 User,root@localhost
433
434 ; example for our acme compartmentalized company
435 ;
436 ; Pete telecommutes from Chicago, so we'll customize timestamps for him.
437 ;
438 ;[acme]
439 ;111 => 7383,Pete,pete@acme-widgets.com,,tz=central
440 ;112 => 6262,Nancy,nancy@acme-widgets.com
441 ;
442
443 ; ---------------------------------------------------------------------------
444 ; IMAP user settings and overrides.  These are only applicable when Asterisk is
445 ; compiled with IMAP support.
446 ;
447 ; imapuser=username                ; The IMAP username of the mailbox to access
448 ; imappassword=password            ; The IMAP password of the user
449 ; imapvmshareid=xxxx               ; A shared mailbox ID to use for the IMAP mailbox
450                                    ; login, as opposed to the mailbox dialed
451 ; imapfolder                       ; Overrides the global imapfolder setting
452 ; imapserver                       ; Overrides the global imapserver setting
453 ; imapport                         ; Overrides the global imapport setting
454 ; imapflags                        ; Overrides the global imapflags setting
455
456 ;
457 ;[imapvm]
458 ;4324 => 7764,Ellis Redding,red@buxton.us,,imapuser=eredding|imappassword=g3tbusy|imapfolder=notinbox
459 ;4325 => 2392,Andrew Dufresne,andy@dufresne.info,,imapuser=adufresne|imappassword=rockh@mmer