sbensen Report post Posted 02/15/2005 06:20 PM I am attempting to program VG to re-dial phone numbers after leaving a message on an answering machine. My "answering machine" script gets all the data from our subject information database, but my attempts to Insert Into the Call Que table in OutDialQue.mdb with a Database Query module, it won't work. I have been able to write to our subject database and add records of phone calls into that database. Any tricks to getting the Database Query module to load a record into OutDialQue.mdb? Steve Share this post Link to post
sbensen Report post Posted 02/15/2005 07:16 PM Please Ignore the previous post. Here is the relevant error message. The CallQue Table doesn't have a Primary Key. When I try to write to it I get a primary key error. Any suggestions? 120342.17 7 timer clear 120342.17 7 [updateCallQue_27] DB Query 120342.17 7 db Jet mode used (To use ODBC mode specify ODBC Connect string) 120342.19 7 rv replace start: [iNSERT INTO CallQue ( PhoneNumber ) VALUES ( '$RV_CalledNumber' );] 120342.19 7 rv ns none[PathSysVoice]{C:\Program Files\VoiceGuide\system\voice\}[PathApp]{C:\Program Files\VoiceGuide\}[PathDataVm]{C:\Program Files\VoiceGuide\data\}[PathVgSys]{C:\Program Files\VoiceGuide\system\}[OutDial_RetriesLeft]{3}[OutDial_Result]{Contacted_AM}[scriptEnd_Time]{2/15/2005 12:03:13 PM}[scriptEnd_Goto_Script]{\\Rmregfile004\Research\IVR\VoiceGuide\PreDiabetes\Scripts\TestAnsweringMachine.vgs}[scriptEnd_Goto_Module]{}[scriptStart_Time]{2/15/2005 12:03:13 PM}[scriptStart_CalledFrom_Module]{Iniate1}[scriptsPath]{\\Rmregfile004\Research\IVR\VoiceGuide\PreDiabetes\Scripts\}[setIncomingCall_Input]{0}[setIncomingCall]{0}[isIncomingCall]{0}[GetPatie tInfoAM_RowCount]{1}[GetPatientInfoAM_1_1]{Steve}[GetPatientInfoAM_2_1]{Bensen}[ etPatientInfoAM_3_1]{93036363119}[GetPatientInfoAM_4_1]{555555555}[GetPatientInf AM_5_1]{2}[GetPatientInfoAM_6_1]{False}[GetPatientInfoAM_7_1]{1/22/2005 8:17:17 AM}[GetPatientInfoAM_8_1]{True}[GetPatientInfoAM_9_1]{0900}[GetPatientInfoAM_10_ ]{2100}[GetPatientInfoAM_11_1]{MoTuWeThFrSaSu}[GetPatientInfoAM_12_1]{\\Rmregfile004\Research\IVR\VoiceGuide\PreDiabetes\Scripts\OutgoingInitCallValidateHRN.vgs}[GetPatientInfoAM_13_1]{\\Rmregfile004\Research\IVR\VoiceGuide\PreDiabetes\Scripts\TestAnsweringMachine.vgs}[GetPatientInfoAM_14_1]{60}[GetPatientInfoAM_15_1] 3}[GetPatientInfoAM_16_1]{2}[GetPatientInfoAM_17_1]{} 120342.20 7 rv replace end: [iNSERT INTO CallQue ( PhoneNumber ) VALUES ( '93036363119' );] 120342.20 7 db About to execute a Modify type operation [iNSERT INTO CallQue ( PhoneNumber ) VALUES ( '93036363119' );] 120342.22 7 ERROR 5.2.3063 DB Execute: 3058,Index or primary key cannot contain a Null value. 120342.22 7 rv add [updateCallQue_27_RowCount]{0} 120342.22 7 db DBEngine.Error 3058:Index or primary key cannot contain a Null value.:DAO.Database 120342.23 7 path {0} not found 120342.23 7 path {} not found 120342.23 7 timer clear Share this post Link to post
SupportTeam Report post Posted 02/15/2005 08:09 PM To specify entries to be dialed just use the "Phone Message" module... If you want to work directly with OutDialQue.mdb (or the MS SQL Server version in the VG for Dialogic product) then I'd recommend you have a look at the database structure first and identify all of the fields that should not be left as NULL and make sure that they are then specified in any INSERT statements... Share this post Link to post
sbensen Report post Posted 02/15/2005 10:32 PM I now have the Insert Into Statement working correctly. But I have another problem. I want to load a list at the beginning of the day and have VG call all those numbers. However, if VG gets and AM I want it to write a new call record to the CAll Cue table to have VG try again at the specified time later in the day (say 1500hrs). Then at 1500hrs, I want VG to try to call that phone number again. I wrote a VB application which loads all my initial phone numbers into VG at the beginning of the day and it begins calling as programmed. Also if VG encounters an answering machine, it executes the AM script, leave a message, and inserts a new record into the CAllQue table scheduled to call at 1500hrs. However, at 1500 hours VG does not respond. The record is still in CAllQue, but VG does not attempt to make the scheduled call. How do I prompt VG to look for the data in the CAllQue table after the initial load in the morning? Share this post Link to post
SupportTeam Report post Posted 02/15/2005 11:20 PM VoiceGuide continually checks the OutDialQue databse for any calls that it should be making. If the entry is in the database and it becomes due (ActivationTime is reached) and there is a line free then that call will be made. If you are inserting calls into OutDialQue yourself and you do not see those calls being made the I'd check first how you are specifying the activation time. Do some call insertions using the Telephone Number Loader and have a look in the OutDialQue to see how those calls were inserted - this will show you how the various fields in OutDialQue get filled out... Share this post Link to post
sbensen Report post Posted 02/16/2005 08:59 PM What is the difference between the activation time and the DayTimeStart fields in the OutDialQue.mdb. In my VB program we set the Activation time to 0, and set the time we want to call to be dialed in the DayTime Start field. This works great when I run the VB script. However, when I try this approach with the Database Query module, it's not responding to the DayTime Start field. Share this post Link to post
SupportTeam Report post Posted 02/16/2005 09:02 PM Do some call insertions using the Telephone Number Loader and have a look in the OutDialQue to see how those calls were inserted - this will show you how the various fields in OutDialQue get filled out... Setting the Activation time to 0 is OK. That will allows the call to be made staight away - if the specified 'time of day' and 'day of week' conditions are met. DayTimeStart is the time of day before after which calls can be made. Set this to 1 (means "1 minute after midnight") DayTimeEnd is the time of day before after which calls cannot be made. Set this to 2359 (means "11:59 PM") Share this post Link to post
sbensen Report post Posted 02/16/2005 10:16 PM FYI, I just figured out the problem. It was a problem with the "LineSelection" field. I was sending the line number, but the line number field needs a preceeding and following comma. Once I had the Query Builder insert the appropriate commas into this field, the OutDialQue.mdb is working perfectly. Share this post Link to post