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