[asterisk-dev] Fwd: Realtime Voicemail Password Change Not Working

JR Richardson jmr.richardson at gmail.com
Wed Jan 17 15:24:42 MST 2007


Hi all,

I'm struggling with an issues trying to debug further, need some
pointers.  I've been through the standard debugs, logs for asterisk
and mysql.  I'm not seeing where asterisk is sending the update
password statement to mysql. All other read/write activity is
functioning properly.  Changing the password works in the
voicemail.conf file, just not to the mysql database, more info below.
Question:
How do I get more advanced debugging, C code level, on what is
happening in the asterisk process associated with mysql driver?  I've
done some gdb bactraces but shows no errors, all processes seem ok.
Is there another tool I can use to see in detail what asterisk is
doing, how it is interacting with mysql realtime driver?

Thanks.
JR

---------- Forwarded message ----------
From: JR Richardson <jmr.richardson at gmail.com>
Date: Jan 17, 2007 2:14 PM
Subject: Re: Realtime Voicemail Password Change Not Working
To: asterisk-users at lists.digium.com


> On 1/17/07, JR Richardson <jmr.richardson at gmail.com> wrote:
> > > I'm using asterisk 1.2.9.1 and mysql 3.23, asterisk add-ons 1.2.3.
> > > All seems to work normally with realtime voicemail, reads vmbox
> > > parameters from the db fine.  When I try to change the password,
> > > asterisk operates normally, "enter new password" ok, "re-enter new
> > > password" ok, "password has been changed"
> > >
> > > There are no entries in the mysql.log setting the new password in the
> > > database.  How can I isolate between asterisk, realtime driver, and
> > > mysql?
> >
> > I updated to asterisk 1.2.14 and add-ons 1.2.5 with no luck.  I still don't
> > see any update statement in the mysql.log when I change a password.  I built
> > a vmbox in the voicemail.conf file and can change that password just fine.
> > Any suggestions?
>
> JR,
>
> I'm just pulling things out of the air here, but if realtime voicemail
> works like realtime users/peers, loading everything into memory from
> MySQL, then there would need to be some type or prune command to force
> the re-read of the voicemail table, this is asuming you change the
> password via MySQL and not on the handset. Maybe something like DBput
> would work to update astdb as well. Again just throwing out ideas...
>
> It sounds like you are using the handset to update the password. Is
> this correct?

Yes, I'm using the handset to change the vm password, throught the vm
advanced features.  I can directly change the db as expected, just not
through the vm application.

> Not sure about how you log in MySQL but using ODBC, in your
> odbcinst.ini or a similar file for Mysql, which keeps the settings for
> your db driver etc, you should be able to turn on logging. I can in
> odbcinst and it creates logs.
>
> The problem you have seems more like a permission problem however, the
> user you're using to log into the DB doesn't seem to have the
> permission to write to the table which keeps the user information OR
> the voicemail database itself. This problem becomes a bit trickier
> when your vm user table is actually a view of tables that hold
> subscriber/user information and is compounded by the fact if
> voicemails are being stored in a different db than where the sip/iax
> user information is being stored to derive sipusers and sippeers
> family values as then the user that asterisk is using to connect to
> the voicemail db will also need write permission in the db that stores
> user information.

I use the same database for the sip, iax, exten and vm, different
tables.  When a sip device registers, asterisk writes to the database
with updates to the sip table ipaddress, port and regseconds, so I
don't think there is a write permissions issue from asterisk res_mysql
to the mysql database.  I thought of that also and changed the user to
full access, but that didn't help.  Mysql logs all database
transactions in the /var/log/mysql.log file.  I see all the query
selects from the voicemail table and i see all the query updates to
the sip table, but never see any query updates for the vmpasswd to the
voicemail table.  I would assume there would at least be errors if
there was a permissions problem.  I don't see where asterisk is trying
to update the vmpassword through the realtime driver.

How is your voicemail.conf file setup?

Thanks.

JR
--
JR Richardson
Engineering for the Masses


-- 
JR Richardson
Engineering for the Masses


More information about the asterisk-dev mailing list