beonice
2005-Feb-11 09:36 UTC
[Asterisk-Users] Asterisk-MySQL: Not loading voicemail config from MySQL
Folks,
I'm trying to get Asterisk to load my voicemail
configuration from MySQL. I've followed the
instructions at:
http://www.voip-info.org/wiki-Asterisk+voicemail+database
I restarted Asterisk, but no luck: the voicemail.conf
does not get updated. I started with a sample
voicemail.conf that I found on the Wiki. Or was it
from Voicepulse? I can't remember. For initial
testing, I added extensions 9999 and 100 in the
[voicepulse_connect_context] with appropriate settings
in extensions.conf to direct incoming calls to those
mailboxes, and that works. I was expecting that after
I added in the db details, reloading or restarting
Asterisk would add the new extension from MySQL's
'users' table into the voicemail.conf. It doesn't.
As soon as I type 1111 (the beginning of the mailbox
and also the extension number), I get the message:
*CLI> Feb 11 08:38:38 WARNING[5224]:
app_voicemail.c:1539 leave_voicemail: No entry in
voicemail config file for '1111'
If I add a line for 1111 into my voicemail.conf, all
works well.
Please help me understand what is going on here!
Thanks,
Maya.
--- My configuration ---
My 'users' table has 1 row only, for testing purposes:
+---------------------------+------------+----------+--------------+-------------------+-------+------------+----------------+
| context | mailbox | password |
fullname | email | pager | options
| stamp |
+---------------------------+------------+----------+--------------+-------------------+-------+------------+----------------+
| voicemail_connect_context | 1111 | 1234 |
Moron Tester | me@mydmn.com | | attach=yes
| 00000000000000 |
+---------------------------+------------+----------+--------------+-------------------+-------+------------+----------------+
--
The appropriate settings from extensions.conf:
[voicepulse_connect_context] ; <-- Should match the
context you have
; under [voicepulse-in-01] in
iax.conf
exten => 100,1,Playback(tt-monkeys)
exten => 100,2,Record(/tmp/asterisk-recording:gsm)
;exten => 100,3,Wait(2)
exten => 100,3,Playback(/tmp/asterisk-recording)
;exten => 100,5,Wait(2)
exten => 9999,1,Playback(transfer,skip)
exten => 9999,2,VoiceMail,u9999
exten => 9999,102,VoiceMail,b9999
exten => 1111,1,VoiceMail,u1111
--
My complete voicemail.conf looks like this:
;
; Voicemail Configuration
;
[general]
; Default formats for writing Voicemail
;format=g723sf|wav49|wav
format=wav49|gsm|wav
; Who the e-mail notification should appear to come
from
serveremail=asterisk@linux-support.net
; Should the email contain the voicemail as an
attachment
attach=yes
; Maximum length of a voicemail message in seconds
;maxmessage=180
; Minimum length of a voicemail message in seconds
;minmessage=3
; Maximum length of greetings in seconds
;maxgreet=60
; How many miliseconds to skip forward/back when
rew/ff in message playback
skipms=3000
; How many seconds of silence before we end the
recording
maxsilence=10
; Silence threshold (what we consider silence, the
lower, the more sensitive)
silencethreshold=128
; Max number of failed login attempts
maxlogins=3
; If you need to have an external program, i.e.
/usr/bin/myapp
; called when a voicemail is left, delivered, or your
voicemailbox
; is checked, uncomment this:
;externnotify=/usr/bin/myapp
; If you need to have an external program, i.e.
/usr/bin/myapp
; called when a voicemail password is changed,
; uncomment this:
;externpass=/usr/bin/myapp
; For the directory, you can override the intro file
if you want
;directoryintro=dir-intro
; The character set for voicemail messages can be
specified here
;charset=ISO-8859-1
; The ADSI feature descriptor number to download to
;adsifdn=0000000F
; The ADSI security lock code
;adsisec=9BDBF7AC
; The ADSI voicemail application version number.
;adsiver=1
; Skip the "[PBX]:" string from the message title
pbxskip=yes
; Change the From: string
fromstring=The Asterisk PBX
;
;Change the From: string for pager messages
;pagerfromstring=The Asterisk PBX
;
; Change the email body and/or subject, variables:
; VM_NAME, VM_DUR, VM_MSGNUM, VM_MAILBOX,
VM_CALLERID, VM_DATE
;
; Note: The emailbody config row can be up to 512
characters due to a limitation in
; asterisk config files.
;emailsubject=New VM (${VM_MSGNUM}) - ${VM_DUR} long
in mailbox ${VM_MAILBOX} from ${VM_CALLERID}
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!
;
; You can override the default program to send e-mail
if you wish, too
;
;mailcmd=/usr/sbin/sendmail -t
;
; Users may be located in different timezones, or may
have different
; message announcements for their introductory message
when they enter
; the voicemail system. Set the message and the
timezone each user
; hears here. Set the user into one of these zones
with the tz= attribute
; in the options field of the mailbox. Of course,
language substitution
; still applies here so you may have several directory
trees that have
; alternate language choices.
;
; Look in /usr/share/zoneinfo/ for names of timezones.
; Look at the manual page for strftime for a quick
tutorial on how the
; variable substitution is done on the values below.
;
; Supported values:
; 'filename' filename of a soundfile (single ticks
around the filename required)
; ${VAR} variable substitution
; A or a Day of week (Saturday, Sunday, ...)
; B or b or h Month name (January, February, ...)
; d or e numeric day of month (first, second,
..., thirty-first)
; Y Year
; I or l Hour, 12 hour clock
; H Hour, 24 hour clock (single digit
hours preceded by "oh")
; k Hour, 24 hour clock (single digit
hours NOT preceded by "oh")
; M Minute
; P or p AM or PM
; Q "today", "yesterday" or ABdY (*note:
not standard strftime value)
; q "" (for today), "yesterday", weekday,
or ABdY (*note: not standard strftime value)
; R 24 hour time, including minute
;
;
;
; Each mailbox is listed in the form
<mailbox>=<password>,<name>,<email>,<pager_email>,<options>
; if the e-mail is specified, a message will be sent
when a message is
; received, to the given mailbox. If pager is
specified, a message will be sent there as well. If
the password is prefixed by '-' then it is considered
to be unchangable
;
; Advanced options example is extension 4069
; NOTE: All options can be expressed globally in the
general section, and overriden in the per-mailbox
; settings, unless listed otherwise.
;
; tz=central ; Timezone from zonemessages
above. Irrelevant if envelope=no.
; attach=yes ; Attach the voicemail to the
notification email *NOT* the pager email
; saycid=yes ; Say the caller id
information before the message. If not described,
; or set to no, it will be
in the envelope
; dialout=fromvm ; Context to dial out from
[option 4 from the advanced menu]
; if not listed, dialing
out will not be permitted
sendvoicemail=yes ; Context to Send voicemail
from [option 5 from the advanced menu]
; if not listed, sending
messages from inside voicemail will not be
; permitted
; callback=fromvm ; Context to call back from
; if not listed, calling
the sender back will not be permitted
; review=yes ; Allow sender to
review/rerecord their message before saving it [OFF by
default
; operator=yes ; Allow sender to hit 0
before/after/during leaving a voicemail to
; reach an operator [OFF
by default]
; envelope=no ; Turn on/off envelope
playback before message playback. [ON by default]
; This does NOT affect
option 3,3 from the advanced options menu
; delete=yes ; After notification, the
voicemail is deleted from the server. [per-mailbox
only]
; This is intended for use
with users who wish to receive their voicemail ONLY by
email.
; nextaftercmd=yes ; Skips to the next message
after hitting 7 or 9 to delete/save current message.
; [global option only at
this time]
;;
;; Configure to read from mySQL database
;;
dbuser=mydbuser
dbpass=mydbpass
dbhost=localhost
dbname=asterisk_vm
[zonemessages]
eastern=America/New_York|'vm-received' Q 'digits/at'
IMp
central=America/Chicago|'vm-received' Q 'digits/at'
IMp
central24=America/Chicago|'vm-received' q 'digits/at'
H 'digits/hundred' M 'hours'
[default]
1234 => 4242,Example Mailbox,root@localhost
;4200 => 9855,Mark
Spencer,markster@linux-support.net,mypager@digium.com,attach=no|serveremail=myaddy@digium.com|tz=central
;4300 => 3456,Ben Rigas,ben@american-computer.net
;4310 => -5432,Sales,sales@marko.net
;4069 => 6522,Matt
Brooks,matt@marko.net,,|tz=central|attach=yes|saycid=yes|dialout=fromvm|callback=fromvm|review=yes|operator=yes|envelope=yes
;4073 => 1099,Bianca
Paige,bianca@biancapaige.com,,delete=1
;4110 => 3443,Rob Flynn,rflynn@blueridge.net
;
; Mailboxes may be organized into multiple contexts
for
; voicemail virtualhosting
;
[other]
;The intro can be customized on a per-context basis
;directoryintro=dir-company2
1234 => 5678,Company2 User,root@localhost
[voicepulse_connect_context]
9999 => 1234,Test User,myaddress@mydomain.com
100 => 700,Test Voicemail,myaddress@mydomain.com
[zonemessages]
eastern=America/New_York|'vm-received' Q 'digits/at'
IMp
central=America/Chicago|'vm-received' Q 'digits/at'
IMp
central24=America/Chicago|'vm-received' q 'digits/at'
H 'digits/hundred' M 'hours'
[default]
1234 => 4242,Example Mailbox,root@localhost
;4200 => 9855,Mark
Spencer,markster@linux-support.net,mypager@digium.com,attach=no|serveremail=myaddy@digium.com|tz=central
;4300 => 3456,Ben Rigas,ben@american-computer.net
;4310 => -5432,Sales,sales@marko.net
__________________________________
Do you Yahoo!?
Take Yahoo! Mail with you! Get it on your mobile phone.
http://mobile.yahoo.com/maildemo
Matthew Boehm
2005-Feb-11 10:04 UTC
[Asterisk-Users] Asterisk-MySQL: Not loading voicemail config fromMySQL
What version of asterisk? -Matthew ----- Original Message ----- From: "beonice" <beonice@yahoo.com> To: "Asterisk Users Mailing List - Non-Commercial Discussion" <asterisk-users@lists.digium.com> Sent: Friday, February 11, 2005 10:36 AM Subject: [Asterisk-Users] Asterisk-MySQL: Not loading voicemail config fromMySQL> Folks, > > I'm trying to get Asterisk to load my voicemail > configuration from MySQL. I've followed the > instructions at: > > http://www.voip-info.org/wiki-Asterisk+voicemail+database > > I restarted Asterisk, but no luck: the voicemail.conf > does not get updated. I started with a sample > voicemail.conf that I found on the Wiki. Or was it > from Voicepulse? I can't remember. For initial > testing, I added extensions 9999 and 100 in the > [voicepulse_connect_context] with appropriate settings > in extensions.conf to direct incoming calls to those > mailboxes, and that works. I was expecting that after > I added in the db details, reloading or restarting > Asterisk would add the new extension from MySQL's > 'users' table into the voicemail.conf. It doesn't. > > As soon as I type 1111 (the beginning of the mailbox > and also the extension number), I get the message: > > *CLI> Feb 11 08:38:38 WARNING[5224]: > app_voicemail.c:1539 leave_voicemail: No entry in > voicemail config file for '1111' > > If I add a line for 1111 into my voicemail.conf, all > works well. > > Please help me understand what is going on here! > > Thanks, > Maya. > > --- My configuration --- > > My 'users' table has 1 row only, for testing purposes: > >+---------------------------+------------+----------+--------------+-------- -----------+-------+------------+----------------+> | context | mailbox | password | > fullname | email | pager | options > | stamp | >+---------------------------+------------+----------+--------------+-------- -----------+-------+------------+----------------+> | voicemail_connect_context | 1111 | 1234 | > Moron Tester | me@mydmn.com | | attach=yes > | 00000000000000 | >+---------------------------+------------+----------+--------------+-------- -----------+-------+------------+----------------+> > -- > The appropriate settings from extensions.conf: > > [voicepulse_connect_context] ; <-- Should match the > context you have > ; under [voicepulse-in-01] in > iax.conf > > exten => 100,1,Playback(tt-monkeys) > exten => 100,2,Record(/tmp/asterisk-recording:gsm) > ;exten => 100,3,Wait(2) > exten => 100,3,Playback(/tmp/asterisk-recording) > ;exten => 100,5,Wait(2) > exten => 9999,1,Playback(transfer,skip) > exten => 9999,2,VoiceMail,u9999 > exten => 9999,102,VoiceMail,b9999 > exten => 1111,1,VoiceMail,u1111 > -- > > My complete voicemail.conf looks like this: > ; > ; Voicemail Configuration > ; > [general] > ; Default formats for writing Voicemail > ;format=g723sf|wav49|wav > format=wav49|gsm|wav > ; Who the e-mail notification should appear to come > from > serveremail=asterisk@linux-support.net > ; Should the email contain the voicemail as an > attachment > attach=yes > ; Maximum length of a voicemail message in seconds > ;maxmessage=180 > ; Minimum length of a voicemail message in seconds > ;minmessage=3 > ; Maximum length of greetings in seconds > ;maxgreet=60 > ; How many miliseconds to skip forward/back when > rew/ff in message playback > skipms=3000 > ; How many seconds of silence before we end the > recording > maxsilence=10 > ; Silence threshold (what we consider silence, the > lower, the more sensitive) > silencethreshold=128 > ; Max number of failed login attempts > maxlogins=3 > ; If you need to have an external program, i.e. > /usr/bin/myapp > ; called when a voicemail is left, delivered, or your > voicemailbox > ; is checked, uncomment this: > ;externnotify=/usr/bin/myapp > ; If you need to have an external program, i.e. > /usr/bin/myapp > ; called when a voicemail password is changed, > ; uncomment this: > ;externpass=/usr/bin/myapp > ; For the directory, you can override the intro file > if you want > ;directoryintro=dir-intro > ; The character set for voicemail messages can be > specified here > ;charset=ISO-8859-1 > ; The ADSI feature descriptor number to download to > ;adsifdn=0000000F > ; The ADSI security lock code > ;adsisec=9BDBF7AC > ; The ADSI voicemail application version number. > ;adsiver=1 > ; Skip the "[PBX]:" string from the message title > pbxskip=yes > ; Change the From: string > fromstring=The Asterisk PBX > ; > ;Change the From: string for pager messages > ;pagerfromstring=The Asterisk PBX > ; > ; Change the email body and/or subject, variables: > ; VM_NAME, VM_DUR, VM_MSGNUM, VM_MAILBOX, > VM_CALLERID, VM_DATE > ; > ; Note: The emailbody config row can be up to 512 > characters due to a limitation in > ; asterisk config files. > ;emailsubject=New VM (${VM_MSGNUM}) - ${VM_DUR} long > in mailbox ${VM_MAILBOX} from ${VM_CALLERID} > 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! > ; > ; You can override the default program to send e-mail > if you wish, too > ; > ;mailcmd=/usr/sbin/sendmail -t > ; > ; Users may be located in different timezones, or may > have different > ; message announcements for their introductory message > when they enter > ; the voicemail system. Set the message and the > timezone each user > ; hears here. Set the user into one of these zones > with the tz= attribute > ; in the options field of the mailbox. Of course, > language substitution > ; still applies here so you may have several directory > trees that have > ; alternate language choices. > ; > ; Look in /usr/share/zoneinfo/ for names of timezones. > ; Look at the manual page for strftime for a quick > tutorial on how the > ; variable substitution is done on the values below. > ; > ; Supported values: > ; 'filename' filename of a soundfile (single ticks > around the filename required) > ; ${VAR} variable substitution > ; A or a Day of week (Saturday, Sunday, ...) > ; B or b or h Month name (January, February, ...) > ; d or e numeric day of month (first, second, > ..., thirty-first) > ; Y Year > ; I or l Hour, 12 hour clock > ; H Hour, 24 hour clock (single digit > hours preceded by "oh") > ; k Hour, 24 hour clock (single digit > hours NOT preceded by "oh") > ; M Minute > ; P or p AM or PM > ; Q "today", "yesterday" or ABdY (*note: > not standard strftime value) > ; q "" (for today), "yesterday", weekday, > or ABdY (*note: not standard strftime value) > ; R 24 hour time, including minute > ; > ; > > ; > ; Each mailbox is listed in the form > <mailbox>=<password>,<name>,<email>,<pager_email>,<options> > ; if the e-mail is specified, a message will be sent > when a message is > ; received, to the given mailbox. If pager is > specified, a message will be sent there as well. If > the password is prefixed by '-' then it is considered > to be unchangable > ; > ; Advanced options example is extension 4069 > ; NOTE: All options can be expressed globally in the > general section, and overriden in the per-mailbox > ; settings, unless listed otherwise. > ; > ; tz=central ; Timezone from zonemessages > above. Irrelevant if envelope=no. > ; attach=yes ; Attach the voicemail to the > notification email *NOT* the pager email > ; saycid=yes ; Say the caller id > information before the message. If not described, > ; or set to no, it will be > in the envelope > ; dialout=fromvm ; Context to dial out from > [option 4 from the advanced menu] > ; if not listed, dialing > out will not be permitted > sendvoicemail=yes ; Context to Send voicemail > from [option 5 from the advanced menu] > ; if not listed, sending > messages from inside voicemail will not be > ; permitted > ; callback=fromvm ; Context to call back from > ; if not listed, calling > the sender back will not be permitted > ; review=yes ; Allow sender to > review/rerecord their message before saving it [OFF by > default > ; operator=yes ; Allow sender to hit 0 > before/after/during leaving a voicemail to > ; reach an operator [OFF > by default] > ; envelope=no ; Turn on/off envelope > playback before message playback. [ON by default] > ; This does NOT affect > option 3,3 from the advanced options menu > ; delete=yes ; After notification, the > voicemail is deleted from the server. [per-mailbox > only] > ; This is intended for use > with users who wish to receive their voicemail ONLY by > email. > ; nextaftercmd=yes ; Skips to the next message > after hitting 7 or 9 to delete/save current message. > ; [global option only at > this time] > > ;; > ;; Configure to read from mySQL database > ;; > dbuser=mydbuser > dbpass=mydbpass > dbhost=localhost > dbname=asterisk_vm > > [zonemessages] > eastern=America/New_York|'vm-received' Q 'digits/at' > IMp > central=America/Chicago|'vm-received' Q 'digits/at' > IMp > central24=America/Chicago|'vm-received' q 'digits/at' > H 'digits/hundred' M 'hours' > > [default] > 1234 => 4242,Example Mailbox,root@localhost > ;4200 => 9855,Mark >Spencer,markster@linux-support.net,mypager@digium.com,attach=no|serveremailmyaddy@digium.com|tz=central> ;4300 => 3456,Ben Rigas,ben@american-computer.net > ;4310 => -5432,Sales,sales@marko.net > ;4069 => 6522,Matt >Brooks,matt@marko.net,,|tz=central|attach=yes|saycid=yes|dialout=fromvm|call back=fromvm|review=yes|operator=yes|envelope=yes> ;4073 => 1099,Bianca > Paige,bianca@biancapaige.com,,delete=1 > ;4110 => 3443,Rob Flynn,rflynn@blueridge.net > > ; > ; Mailboxes may be organized into multiple contexts > for > ; voicemail virtualhosting > ; > > [other] > ;The intro can be customized on a per-context basis > ;directoryintro=dir-company2 > 1234 => 5678,Company2 User,root@localhost > > [voicepulse_connect_context] > 9999 => 1234,Test User,myaddress@mydomain.com > 100 => 700,Test Voicemail,myaddress@mydomain.com > > > [zonemessages] > eastern=America/New_York|'vm-received' Q 'digits/at' > IMp > central=America/Chicago|'vm-received' Q 'digits/at' > IMp > central24=America/Chicago|'vm-received' q 'digits/at' > H 'digits/hundred' M 'hours' > > [default] > 1234 => 4242,Example Mailbox,root@localhost > ;4200 => 9855,Mark >Spencer,markster@linux-support.net,mypager@digium.com,attach=no|serveremailmyaddy@digium.com|tz=central> ;4300 => 3456,Ben Rigas,ben@american-computer.net > ;4310 => -5432,Sales,sales@marko.net > > > > > __________________________________ > Do you Yahoo!? > Take Yahoo! Mail with you! Get it on your mobile phone. > http://mobile.yahoo.com/maildemo > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users