VoiceGuide IVR Software Main Page
Jump to content

Database Not Updating(Time,email)

Recommended Posts

Sir Good Day, I just want to know why my email coming form the data base not working, and also the current

date in not updating, instead the year is 2010 the year is may be 1946,see my script as well as my log file

 

 

Attached:

Sales_afterhagup.zip

Share this post


Link to post

I think this is similar question to this earlier post from you: http://voiceguide.com/forums/index.php?showtopic=6669

 

Are you using an English type version of Windows?

 

What Region are you in and what is the Language selected for use on your computer?

 

What is the Date set to on your computer?

 

The $RV_DATE that you are using in the Email message is just replaced by VoiceGuide with whatever the current date is set to on the system used.

Share this post


Link to post

Regrading the "I just want to know why my email coming form the data base not working" question:

 

Traces shows that when running the email module this error is returned:

 

132637.765 6 ERROR v7.1.3583.22027 (2009-10-23 12:14:15.00) AddEmailToSend SendAsync: A recipient must be specified.

 

Looks like the email is not sent as no email recipients are specified.

 

Looking at the script that you have attached we can see that the email module uses an $RV to specify the email recipient, and that $RV is not set - so the "To:" field becomes blank.

 

Form looking at the script the $RV in the email module should be $RV[NoteMeProfile_SalesEmail] and not $RV[NoteMeProfile_Email] but it also looks like you have some problems with the Database query modules which retrieves those values from database in first place:

 

132637.765 23 5 3 ERROR v7.1.3583.22027 (2009-10-23 12:14:15.00) ConnectAndRun_OleDb : No value given for one or more required parameters.

 

From looking at your current database SQL query:

 

SELECT SalesEmail, SalesLanguage FROM NoteMe WHERE SalesLanguage=$RV[Lang];

 

you my need to change it to:

 

SELECT SalesEmail, SalesLanguage FROM NoteMe WHERE SalesLanguage='$RV[Lang]';

 

 

(put quotes around $RV[Lang]) is the SalesLanguage column in your database is a char/text type field.

 

 

 

132637.765 6 AddEmailToSend from:saving@eim.ae|, to:, cc:, bcc:, reply:saving@eim.ae, subj:NoteMe, att:, usertoken:(<to></to><subject>NoteMe</subject><guid>811a1e83-d36d-4439-b6da-5b8a396b01e0</guid>) smtp:mail.emirates.net.ae|0 timeout:1800sec

132637.765 6 SmtpClient created ok

132637.765 6 .Host=mail.emirates.net.ae .Port=25 .EnableSsl=False sCredentialUserName=[note]

132637.765 6 SmtpClient clientEs configured ok

132637.765 6 ERROR v7.1.3583.22027 (2009-10-23 12:14:15.00) AddEmailToSend SendAsync: A recipient must be specified.

132637.765 6 5 3 email not queued for sending.

132637.765 6 5 3 rv add [NoteMeEmail_SendResult]{A recipient must be specified.}

Share this post


Link to post

Good Day Sir, yes I put quotes to the RV query but still not sending email, the language and time is current time

see the attached image and log file.

 

 

 

Attached:

regional.zip

Share this post


Link to post

The trace shows the error is same as before:

 

102337.423 6 ERROR v7.1.3583.22027 (2009-10-23 12:14:15.00) AddEmailToSend SendAsync: A recipient must be specified.

 

The Database query now seems to work, and the

 

$RV[uNoteProfile_SalesEmail]

 

is set to:

 

kiosk@solutionsource.ae#mailto:kiosk@solutionsourc

 

The above is not a valid email address. This is probably why the email is not being sent.

 

You should check the database to see why the database is returning the above instead of a well formatted email address.

 

 

Regarding the Date questions, we'll set one of our test machines with the settings in the screenshots and see if we can replicate this issue.

 

 

Database query text:

 

102337.407 6 5 3 state [uNoteProfile] DB Query

102337.407 6 5 3 rv replace start: [sELECT SalesEmail, SalesLanguage FROM UNote WHERE SalesLanguage='$RV[Lang]';]

102337.407 6 5 3 rvns: [PathSysVoice]{C:\Program Files\VoiceGuide\system\voice\}[PathApp]{C:\Program Files\VoiceGuide\}[PathDataVm]{C:\Program Files\VoiceGuide\data\}[PathVgSys]{C:\Program Files\VoiceGuide\system\}[scriptPath]{C:\Sales\}[scriptsPath]{C:\Sales\}[$RV_STARTTIME]{2553-05-16 10:23:19}[$RV_DEVICEID]{5}[DlgcVoice]{dxxxB1C3}[DlgcNetwork]{dxxxB1C3}[$RV_CIDNAME]{}[PathApp]{C:\Program Files\VoiceGuide\}[scriptPath]{C:\Sales\}[scriptsPath]{C:\Sales\}[$RV_CIDNUMBER]{0561496879}[Choose Language]{2}[EN Lang_Input]{"EN"}[EN Lang]{EN}[Lang]{EN}[set Lang_Input]{"C:\Sales\EN\"}[set Lang]{C:\Sales\EN\}[DIRSYSTEMVOICE]{C:\Sales\EN\}[CID_Input]{"0561496879"}[CID]{0561496879}[services]{1}[salesServices]{1}[uNote1_Input]{"UNote"}[uNote1]{UNote}[sales]{UNote}[uNoteServices]{1}[save ID_RowCount]{1}[Hangup Source]{Hangup Module}[CallHangupTime]{2553-05-16 10:23:37}[GetService_Input]{UNote}[GetService]{UNote}

102337.407 6 5 3 rv replace end: [sELECT SalesEmail, SalesLanguage FROM UNote WHERE SalesLanguage='EN';]

102337.407 6 5 3 db strDatabaseName=[Microsoft.ACE.OLEDB.12.0] strDbConnectString=[Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Sales\Sales.accdb;Persist Security Info=False;] sAdoNetFactoriesAvailable=[|System.Data.Odbc|System.Data.OleDb|System.Data.OracleClient|System.Data.SqlClient|System.Data.SqlServerCe.3.5|VistaDB.NET20|]

102337.407 6 5 3 db using ado.net OleDb data provider: OleDbConnection/OleDbCommand/etc

102337.407 6 5 3 t timer set 30 sec : EV_TIMEOUT_HANGUP

102337.407 6 5 3 timer set completed lTimeLeft250msUnits=120, iTimeoutCode=9001

102337.407 6 5 3 strDirOfDb=, altering strDatabaseName to: C:\Sales\Microsoft.ACE.OLEDB.12.0

102337.407 6 5 3 db oledb RunQuery_OleDb UNoteProfile, C:\Sales\Microsoft.ACE.OLEDB.12.0, Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Sales\Sales.accdb;Persist Security Info=False;, SELECT SalesEmail, SalesLanguage FROM UNote WHERE SalesLanguage='EN';

102337.407 6 5 3 db oledb thread init.

102337.407 6 5 3 db oledb thread started.

102337.407 3 5 3 db oledb ConnectAndRun_OleDb begin. Create connection: [Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Sales\Sales.accdb;Persist Security Info=False;]

102337.407 3 5 3 db oledb connection open call [Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Sales\Sales.accdb;Persist Security Info=False;]

102337.407 3 5 3 db oledb connection open returned.

102337.407 3 5 3 db oledb DataAdapter.Fill init.

102337.407 3 5 3 db oledb DataAdapter.Fill call.

102337.407 3 5 3 db oledb DataAdapter.Fill returned.

102337.407 3 5 3 db xmlData=<vgmDBQuery_OleDb> <Table> <SalesEmail>kiosk@solutionsource.ae#mailto:kiosk@solutionsourc</SalesEmail> <SalesLanguage>EN</SalesLanguage> </Table></vgmDBQuery_OleDb>

102337.407 3 5 3 db read loop iColIdx=0, sBlob_DbColumn=, strField_Name=SalesEmail

102337.407 3 5 3 rv add [uNoteProfile_SalesEmail]{kiosk@solutionsource.ae#mailto:kiosk@solutionsourc}

102337.407 3 5 3 rv add [uNoteProfile_1]{kiosk@solutionsource.ae#mailto:kiosk@solutionsourc}

102337.407 3 5 3 rv add [uNoteProfile_SalesEmail_1]{kiosk@solutionsource.ae#mailto:kiosk@solutionsourc}

102337.407 3 5 3 rv add [uNoteProfile_1_1]{kiosk@solutionsource.ae#mailto:kiosk@solutionsourc}

102337.407 3 5 3 db read loop iColIdx=1, sBlob_DbColumn=, strField_Name=SalesLanguage

102337.407 3 5 3 rv add [uNoteProfile_SalesLanguage]{EN}

102337.407 3 5 3 rv add [uNoteProfile_2]{EN}

102337.407 3 5 3 rv add [uNoteProfile_SalesLanguage_1]{EN}

102337.407 3 5 3 rv add [uNoteProfile_2_1]{EN}

102337.407 3 5 3 rv add [uNoteProfile_RowCount]{1}

 

Share this post


Link to post

Okay Sir thank you, now the problem regarding in database is okay!

I make a new database now the email is okay, but the problem is still the date,

is not match into the current date when it comes to email.

Share this post


Link to post

For some reason on this system the .NET framework returns 2553 instead of 2010 for the current year value.

 

The month/day/time are correct. It's just the year that is incorrect.

 

The 2553 year is the current year in the Thai calendar (Thai calendar is 543 years ahead of the Gregorian calendar) so looks like for some reson our system is reporting the Thai year instead. Not sure why this is the case. Did you perhaps install the .NET version with Thai settings?

 

As workaround we can suggest to just not including the year in the sent out email.

 

ie. change your email body template:

 

Attention:1

The Caller is: $RV_CIDNUMBER

And you need to call on this Number: $RV[GetNewID]

Language: $RV[Lang]

Services:$RV[sales]

Date: $RV_DATE

 

to:

 

Attention:1

The Caller is: $RV_CIDNUMBER

And you need to call on this Number: $RV[GetNewID]

Language: $RV[Lang]

Services: $RV[sales]

Date: $RV_MM/$RV_DD $RV_HH:$RV_NN:$RV_SS

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
×