VoiceGuide IVR Software Main Page
Jump to content

Database Connection Problem

Recommended Posts

I've noticed that more and more calls that we have going out are not being assigned a DlgcVoice or a DlgcNetwork. The values that should be there are replaced with the string of RV that voiceguide should be reading for the calls meant to go out. Please help us solve this issue.

Share this post


Link to post

Could you please advise what is that actual issue that is observed occurring on this system.

 

It sounds like there is some script related problem?

 

Please post vgEngine trace capturing the call on which the problem you experiencing occurred and advise what call/time we should be looking at.

 

After seeing the traces we can see what happened on system and advise.

Share this post


Link to post

Looking further into the logs, I'm noticing there is an issue with the connection to the server but I cannot tell where the connection error is in the voiceguide script. Is there a way to tell where the database connection error lives based on that vgEngine log so I can correct it?

Share this post


Link to post

Please post vgEngine trace capturing the call on which the problem you experiencing occurred and advise what call/time we should be looking at.

 

After seeing the traces we can see what happened on system and advise.

Share this post


Link to post

I have attached a copy of part of the error message we've been experiencing. Just looking at the log, I can tell there is a MySQL connection error, however I cannot trace where the error lives in order to correct it. Based on the log, will you be able to assist me in troubleshooting where the issue is?

Share this post


Link to post

No trace file has been attached. Please .ZIP up the trace file and try attaching again.

 

If the cause is a connectivity error with your database then the log file would usually only show that no connection could be made, and often the cause would not show in the log file.

We can advise better once we can see the log file.

Share this post


Link to post

Attached trace excerpt shows:

100248.292  31   2   1 ERROR v7.4.5424.20898 (07-Nov-14 11:36:37.32) ConnectAndRun_Odbc init : ERROR [HY000] [MySQL][ODBC 5.1 Driver]Can't connect to MySQL server on '192.168.112.52' (10060)
ERROR [HY000] [MySQL][ODBC 5.1 Driver]Can't connect to MySQL server on '192.168.112.52' (10060)

This looks to be the outcome of a database connection attempt from a "Database Query" module. The trace excerpt is short and start of database connection attempt is not shown.

 

The attached trace also shows that outgoing 'Dialer' calls are being made, and the connection to main 'Backend' database is working:

100248.081  11               db    PerformWork_RunCoreSql ExecuteNonQuery call: INSERT INTO cdrout (Account, Src, Dst, Dcontext, Clid, Channel, Dstchannel, Lastapp, Lastdata,     
                                dtStart, dtAnswer, dtHangup, Duration, Billsec, Disposition, Amaflags, Usr) VALUES ('','13042638911','13045963347','','','','','C:\voiceguide\Scripts\human-machine30018.vgs','<accountid>30018</accountid><callid>4B33E26B-1861-976B-7D8D-6FC416B2D2DC</callid><dname>practice name</dname><pname>SHAWN GREEN</pname><xfernumber>13042638911</xfernumber><appdate>Saturday April 22 2017</appdate><appdateSP>Sabado Abril 22 2017</appdateSP><apptime>9:45 AM</apptime><officephone>three, zero, four, two, six, three, eight, nine, one, one,</officephone><officephoneSP>tres, cero, cuatro, dos, seis, tres, ocho, nueve, uno, uno,</officephoneSP><provideraudio>C:\voiceguide\Sounds\30018\Audio\human\providers\Our_Office.wav</provideraudio><provideraudioSP></provideraudioSP><greeting1></greeting1><specialaudio></specialaudio><locationaudio></locationaudio><locationaudioSP></locationaudioSP><specialaudios></specialaudios><ttslocation>at our practice name location</ttslocation><ttslocationSP>en nuestra practice name  localidad</ttslocationSP><ttsprovider>with Doctor OFFICE</ttsprovider><ttsproviderSP>con el doctor OFFICE</ttsproviderSP><special></special><specialSP></specialSP><ttsAddress></ttsAddress><ttsAddressSP></ttsAddressSP><OutDial_RetriesLeft>1</OutDial_RetriesLeft><OutDial_CampaignName></OutDial_CampaignName><OutDial_ID>7005661</OutDial_ID><OutDial_GUID>00000000-0000-0000-0000-000000000000</OutDial_GUID><STARTTIME>2017-04-20 10:02:42</STARTTIME><DEVICEID>116</DEVICEID><DlgcVoice>dxxxB10C4</DlgcVoice><DlgcNetwork>dtiB2T16</DlgcNetwork><CIDNAME></CIDNAME><DNIS></DNIS><ISDN_SETUP></ISDN_SETUP><DIALEDNUMBER>13045963347</DIALEDNUMBER><ScriptStart_Time>2017-04-20 10:02:42</ScriptStart_Time><ScriptStart_CalledFrom_Module>Hangup</ScriptStart_CalledFrom_Module><Hangup Source>module [setoutcomeDelivered] not found</Hangup Source><Hangup Source>Hangup Module</Hangup Source><DropCall_Source>Hangup</DropCall_Source><Hangup Source>LsDbQuery timeout not found</Hangup Source><DropCall_Source>Hangup</DropCall_Source><CallHangupTime>2017-04-20 10:02:47</CallHangupTime>','2017-04-20 10:02:07','2017-04-20 10:02:42','2017-04-20 10:02:47',41,5,'ANSWERED','','')
...
100248.113  11               db    PerformWork_RunCoreSql cmd_CoreSql.ExecuteNonQuery returned

(This is the main VoiceGuide database that holds the outgoing calls to be made, and stores CDRs and statistical data etc.)

 

 

 

From that one error line it can be seen that the connection is being attempted though the ODBC driver, so the first thing to test would be to check the settings for that connection in Windows' ODBC Administrator.

 

Please see: http://www.voiceguide.com/vghelp/source/html/configdatasource.htm

 

Note that you need to install the 32 bit drivers and use the 32 bit ODBC Administrator application in Windows, not the 64-bit versions.

 

Alternatively, you could try connecting to this MySQL database using MySQL's .NET Data Provider, instead of ODBC.

Share this post


Link to post

After correcting the error with the ODBC drivier, I am noticing that a result variable is having an issue retrieving information. The error I'm getting is located inside of the zipped file I attached to this thread.

 

Can you please advise as to why the values of the $RV[outcome] would replace itself to return blank?

Share this post


Link to post

Looks like $RV[outcome] was never created/set during that call.

 

$RVs that do not hold a value are replaced by an empty (ie: blank) string.

 

The attached trace excerpt shows an entry advising that this $RV is not set:

100810.973   7               rv    dbg   rv_retrieve did not find [outcome]

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×