VoiceGuide IVR Software Main Page
Jump to content

MS SQL server use

Recommended Posts

Hi, Voiceguide

I followed the manual and switched to MS SQL server from SQLite.

I dropped outidal.xml in data folder, it disappeared but I do not see any entry in call queue table and not in tracking table either. 

 

MS SQL is much more convenient to me.

The server and voiceguide are both on same Windows 7 service pack 164 bit computer

server works fine (SQL)

 

Its same PC so no firewall may be.

 

Once I switched and rebooted outdial immediately created all tables necessary 

Share this post


Link to post

Could you please post the vgEngine traces which capture the first reboot after you switched to MS SQL, and the subsequent attempts to place outgoing calls using outidal.xml  data file. The traces can be found in VoiceGuide's /log/ subdirectory.

Have you tried loading calls using the Outbound Call Loader app ?

Please .ZIP up traces before posting.

Share this post


Link to post

well it put the entry in calque but nothing happened then. it alos put in calltrack . I will post vgengine log

\

Share this post


Link to post

Attached were 5 vgEngine traces.

Only one trace showed attempts to load from outdial.xml file: 0220_0933_vgEngine

These attempts resulted in errors like this:

093339.072   5                      dial  Db_Insert_SingleEntry '7635770012','', [2/20/2019 9:33:39 AM], PortSelection=, campaign=, scheduler=0, priority=1, OnAnswerLive=[C:\test\templatecrystal.wav], OnAnswerMachine=[C:\test\templatecrystal.wav], OnAnswerFax=[], OnNotAnswered=[], OnRetriesExhausted=[], 60, 2, 5, RV=, Options= ESCALATION:
093339.089   5                      dial  cmd_callque_Insert ExecuteReader [7635770012,,50131c19-1e28-4eb6-9113-4cae724571e5,]
093339.092   5                ERROR v7.5.20 - 7.5.6704.42422 (2018-05-10 22:34:04.78)       Db_Insert_callqueAndPortList_call : ExecuteReader requires the command to have a transaction when the connection assigned to the command is in a pending local transaction.  The Transaction property of the command has not been initialized.

   at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
   at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
   at ktlib.vgDb.vgDb_ProviderInvariant.Db_Insert_callqueAndPortList(DbCommand& cmd_callque_Insert, DbCommand& cmd_PortList_Insert, DbCommand& cmd_calltrack_Insert, clsFullTelNbr zPhoneNumber, String strPortSelection, DbTransaction& insert_transaction)
093339.096   5                      dial  calltrack is used. PortToUse_LinkField=[GUID]
093339.096   5                      dial  cmd_calltrack_Insert.ExecuteNonQuery call
093339.099   5                      dial  cmd_calltrack_Insert.ExecuteNonQuery returned
093339.104   5                      dial  Db_Insert_porttouse completed. values=-1,50131c19-1e28-4eb6-9113-4cae724571e5,2/20/2019 9:33:39 AM,iScheduler=0,sPortList=[-1],iPriority=1, times=0,2359,0,2359,0,2359,0,2359,0,2359,0,2359,0,2359,   tel=7635770012, inserts=1, ts=00:00:00.0020001
093339.105   5                      tx.Commit call
093339.105   5                      tx.Commit returned
093339.105   5                      OutDial input file : loaded 0 entries from C:\Program Files (x86)\VoiceGuide\data\Outdial.xml
093339.106   5                      OutDial input file deleted : C:\Program Files (x86)\VoiceGuide\data\Outdial.xml

 

Don't know why you would be seeing this error.

Can you please try editing VG.INI file to change the log level for vgEngine to 20, like this:

[Log]
VoiceGuide=20

and then restart the VoiceGuide service and have VoiceGuide read in the outdial.xml file again. Then post the created vgEngine trace here. That vgEngine log file created with a higher log level may then give us more information on what is happening.

A workaround you could try right now is to disable the per-call port selection. Looks like you are not using port selection when loading calls. And Config.xml can be used to specify what ports can be used for outgoing calls as well.

Disabling port selection is done by specifying Disable in the OutDialQue_PortToUse_LinkField field in Config.xml file's <Dialer> section. Like this:

<OutDialQue_PortToUse_LinkField>Disable</OutDialQue_PortToUse_LinkField>

and then restarting VoiceGuide service to read in the new Config.xml

Which MSSQL Server are you using? We could try replicating error here.

 

Share this post


Link to post

Regarding channels: yes I only have one line. You told me to disable channels 2 , 3,4 I did this by your advice here

<Channel>
<Device_Voice>dxxxB1C1</Device_Voice>
<Device_Network>dxxxB1C1</Device_Network>
<Protocol>pdk_na_an_io</Protocol>
<RingsBeforeAnswer>2</RingsBeforeAnswer>
<Script>C:\Program Files (x86)\VoiceGuide\Scripts\Credit Card Payment\Credit Card Payment.vgs</Script>
<ConfigLine></ConfigLine>
<AllowDialOut>1</AllowDialOut>
<RV></RV>
</Channel>


Other channels have 0 so they cannot dial out
SQL server is SQL 2008 - the reason I use that is SQL2008 is the latest that can talk to MS access database easily. I spend days to do that on modern SQL engines. Microsoft just wants to drop MS access but client uses it so I need that server.

Behaviour is exactly the same I resinstalled SQL 2008 but same thing - it does not dial out.

I will increase logging level then try again then post here the trace.

Share this post


Link to post

I see it says login failed.

I logged in from that station using micsoroft access as client. Very strange I will roll back to sqlitelogs.zip

Unless you figured out.

Share this post


Link to post

can I use windows authentication? Looks like voiceguide has issue when it is on its own

what account is used for service? voiceguide service? Maybe I use domain admin account for Voiceguide?

Share this post


Link to post
Quote

can I use windows authentication?

To connect to MS SQL Server? Most common approach we see is specifying a MS SQL Server user and password in the connect string.

VoiceGuide IVR Windows Service runs under the "Local System" account by default. You can change that account if you'd like (through Windows' 'Services' applet) but this is not something we test.

Share this post


Link to post

Whats connection string for windows authentication? if you use dontet library then it is SSPI=TRUE

but if local system account does that it wont work.

I do not want to do something that is you do not support.

Something else may go crazy so I prefer using SQLite then

 

IS switching back easy?

 

Share this post


Link to post

Switching between database engines just involves changing the Config.xml and then restarting the VoiceGuide service.

Share this post


Link to post

LAst question is this good? please check my config

<Dialer>

<Notes>
By default VoiceGuide will use SQLite as its backend database.
Other database engines can be used instead if preferred.
Below are some examples showing how to configure VoiceGuide to use other database engines for its backend database.
</Notes>

 

<OutDialQue_ADODB_Provider>System.Data.SqlClient</OutDialQue_ADODB_Provider>
<OutDialQue_Database>vgDb</OutDialQue_Database>
<OutDialQue_ConnectString>Data Source=192.168.0.16,1433;Database=vgDb;User ID=dialeruser;Password=dialer1234;</OutDialQue_ConnectString>
<OutDialQue_SqlPrefix></OutDialQue_SqlPrefix>
<OutDialQue_SqlSuffix></OutDialQue_SqlSuffix>
<OutDialQue_PortToUse_LinkField></OutDialQue_PortToUse_LinkField>

 

</Dialer>

Share this post


Link to post

We set up a test system with SQL Server 2008 Express version installed locally on same system as VoiceGuide and found that this connect string worked:

<OutDialQue_ConnectString>Data Source=.\SQLEXPRESS;Database=ivrdb;User Id=xxxxxxxx;Password=yyyyyyyy;</OutDialQue_ConnectString>

but using the IP address of the local system did not. This connect string resulted in connection error:

<OutDialQue_ConnectString>Data Source=10.1.1.64,1433;Database=ivrdb;User Id=xxxxxxxx;Password=yyyyyyyy;</OutDialQue_ConnectString>

The error was:

161748.684   1              ERROR Db_Open conn.Open, ex: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - The remote computer refused the network connection.)

so suggest that you try using the ".\INSTANCE_NAME" approach for specifying the connection to SQL Server.

 

Looking at your logs we can see that in at least one case you were able to connect to the SQL Server database, with the logs showing that the only reason why connection was refused was because the wrong password was provided for user "dialeruser" :

172934.247  14                ERROR Db_Open conn.Open, ex: Login failed for user 'dialeruser'.

 

Share this post


Link to post

No I did more tests over weekend I spend awful amount of time working on this SQL issue.
My server is not local it is Enterprise 2008, not express. String is with name

 <Dialer><Notes> By default VoiceGuide will use SQLite as its backend database. Other database engines can be used instead if preferred. Below are some examples showing how to configure VoiceGuide to use other database engines for its backend database. </Notes><OutDialQue_ADODB_Provider>System.Data.SqlClient</OutDialQue_ADODB_Provider><OutDialQue_Database>vgDb</OutDialQue_Database><OutDialQue_ConnectString>Data Source=Siriussrvdata,1433;Database=vgDb;User ID=dialeruser;Password=XXXXXXX;</OutDialQue_ConnectString><OutDialQue_SqlPrefix/><OutDialQue_SqlSuffix/><OutDialQue_PortToUse_LinkField/></Dialer

I tested pinging, it pings fine.

It creates TAbles within Database on start so it can access is.
Dialeruser is database owner and SYSADMIN.

Nothing helps.

I can't install sqlexpress I need normal SQL server since I use its features to have my application working. SQL enterprise edition is on same network NO FIREWALL and as I said when voiceguide starts it creates table set. So it can't be login issue.

I cant install SQL enterprise server 2008 on Windows 7 and I do not want to.

I do not know what else to try. Maybe remove port number 1433? You do not have it

 

The only thing I can try is that.

 

 

Share this post


Link to post


Below I attach latest trace and the snip of calltrak table my call sits there but does not dial.

Whta happens is that it goes to calltrack table not in callque.
Look at the ENGINE trace it says nowhere to call.
calls land into calltrak not in callque and in looks call que which is empty.

Very strange
connection string is good since calltrak table gets populated .

0225_1122_vgEngine.zip

snipSQLsrv.PNG

Share this post


Link to post

I did one more test, used outdial loader. Now record is sittng in calque and never goes away. It sits in both call track and calque and sits forever.
here is engine log after 1506 Military time today.
record was placed 1510.
logafter1504.zipIt can find record in CaLL QUE.

SO IN FIRST CASE IT NOT IN CALLQUE IN SECOND CASE IT IS THERE FOREVER

IT HAS NOTHING TO DO WITH ACCOUNT.

Share this post


Link to post

I would chek the queries. if you send me the query I can run against my SQL server.


Finally is there a way so that in only looks for port1 ?

 

Share this post


Link to post

Sounds like you now have VoiceGuide connecting to your MS SQL Server database and being able to issue SQL queries to it. (all previous traces supplied showed that VoiceGuide could not even connect or log into the MS SQL Server database).

Can you please do this:

1. Stop VoiceGuide service.

2. Delete all log files in VoiceGuide's \log\ subdirectory.

3. Start VoiceGuide service

4. Load an outgoing call. Sounds like you use the outidal.xml file approach to load calls, so load the call in same way.

5. .ZIP up the VoiceGuide's \log\ subdirectory and post the .ZIP file it here.

We will then be able to see what is happening on the system.

 

Share this post


Link to post

vgEngine trace shows VoiceGuide reading in the Outdial.xml file, and then encountering some errors when inserting entry into callque table.

Inserts into porttouse and calltrack tables are OK however.

Then when trying to find the calls to dial VoiceGuide can find the entry in porttouse, but no matching entry is found in callque. This error is handled by the orphaned porttouse entry being deleted so that it does not come up in future searches.

We will look into causes of original insert error and advise.

 

Currently an immediate workaround would be for you to insert entries into MS SQL Server's callque table yourself directly.

The porttouse table can be disabled if you set the OutDialQue_PortToUse_LinkField field to Disable. Like this:

<OutDialQue_PortToUse_LinkField>Disable</OutDialQue_PortToUse_LinkField>

See bottom of this page: https://www.voiceguide.com/vghelp/source/html/dial_vgdb_external_config.htm

You do not need to use the porttouse table in your setup, as you are using Config.xml to set what ports outgoing calls can use.

After disabling porttouse (restart VoiceGuide service to read in new Config.xml setting) you can insert data into just callque to make the call.

To see what data needs to be inserted best to switch VoiceGuide to using SQLite and use outdial.xml approach to have VoiceGuide insert some entries into SQLite's callque table. You can then view what was inserted and insert similar entries direct into MS SQL Server's callque table and see if VoiceGuide reads those in and proceeds with outbound call.

 

Trace of Outdial.xml file read and inserts:

165243.857  15                      OutDial load from [C:\Program Files (x86)\VoiceGuide\data\Outdial.xml]
165243.864  15                      DialListLoadFileXML ReadAllText call
165243.875  15                      dial  Db_Insert_SingleEntry '6127027026','', [2/25/2019 4:52:43 PM], PortSelection=, campaign=, scheduler=0, priority=1, OnAnswerLive=[C:\test\templatecrystal.wav], OnAnswerMachine=[C:\test\templatecrystal.wav], OnAnswerFax=[], OnNotAnswered=[], OnRetriesExhausted=[], 60, 2, 5, RV=, Options= ESCALATION:
165243.887  15                      dial  cmdCQ : INSERT INTO callque (GUID, PhoneNumber, PhoneNumberPrefix, ActivateTime, TimeStart_Mon, TimeStart_Tue, TimeStart_Wed, TimeStart_Thu, TimeStart_Fri, TimeStart_Sat, TimeStart_Sun, TimeStop_Mon, TimeStop_Tue, TimeStop_Wed, TimeStop_Thu, TimeStop_Fri, TimeStop_Sat, TimeStop_Sun, CampaignName, Scheduler, Priority, OnAnswerLive, OnAnswerMachine, OnAnswerFax, OnNotAnswered, OnRetriesExhausted, AnswerTimeout, RetriesLeft, RetriesDelay,  RV, CallOptions, EscalationCalls) OUTPUT Inserted.ID VALUES (@guid, @strNbrToDial, @strPhoneNumberPrefix, @dateActivateTime, @iTimeStart_Mon, @iTimeStart_Tue, @iTimeStart_Wed, @iTimeStart_Thu, @iTimeStart_Fri, @iTimeStart_Sat, @iTimeStart_Sun, @iTimeStop_Mon, @iTimeStop_Tue, @iTimeStop_Wed, @iTimeStop_Thu, @iTimeStop_Fri, @iTimeStop_Sat, @iTimeStop_Sun, @strCampaignName, @iScheduler, @iPriority, @strOnAnswerLive, @strOnAnswerMachine, @strOnAnswerFax, @strOnNotAnswered, @strOnRetriesExhausted, @iAnswerTimeout, @iRetriesLeft, @iRetriesDelay, @strRV, @strOptions, @strEscalationCalls);
165243.887  15                      dial  cmdPU : INSERT INTO porttouse (CallID, CallGUID, PortNumber, ActivateTime, CampaignName, Scheduler, Priority, TimeStart_Mon, TimeStart_Tue, TimeStart_Wed, TimeStart_Thu, TimeStart_Fri, TimeStart_Sat, TimeStart_Sun, TimeStop_Mon, TimeStop_Tue, TimeStop_Wed, TimeStop_Thu, TimeStop_Fri, TimeStop_Sat, TimeStop_Sun ) VALUES (@iCallID, @guid, @iPortNumber, @dateActivateTime, @strCampaignName, @iScheduler, @iPriority, @iTimeStart_Mon, @iTimeStart_Tue, @iTimeStart_Wed, @iTimeStart_Thu, @iTimeStart_Fri, @iTimeStart_Sat, @iTimeStart_Sun, @iTimeStop_Mon, @iTimeStop_Tue, @iTimeStop_Wed, @iTimeStop_Thu, @iTimeStop_Fri, @iTimeStop_Sat, @iTimeStop_Sun );
165243.887  15                      dial  cmd_callque_Insert [INSERT INTO callque (GUID, PhoneNumber, PhoneNumberPrefix, ActivateTime, TimeStart_Mon, TimeStart_Tue, TimeStart_Wed, TimeStart_Thu, TimeStart_Fri, TimeStart_Sat, TimeStart_Sun, TimeStop_Mon, TimeStop_Tue, TimeStop_Wed, TimeStop_Thu, TimeStop_Fri, TimeStop_Sat, TimeStop_Sun, CampaignName, Scheduler, Priority, OnAnswerLive, OnAnswerMachine, OnAnswerFax, OnNotAnswered, OnRetriesExhausted, AnswerTimeout, RetriesLeft, RetriesDelay,  RV, CallOptions, EscalationCalls) OUTPUT Inserted.ID VALUES (@guid, @strNbrToDial, @strPhoneNumberPrefix, @dateActivateTime, @iTimeStart_Mon, @iTimeStart_Tue, @iTimeStart_Wed, @iTimeStart_Thu, @iTimeStart_Fri, @iTimeStart_Sat, @iTimeStart_Sun, @iTimeStop_Mon, @iTimeStop_Tue, @iTimeStop_Wed, @iTimeStop_Thu, @iTimeStop_Fri, @iTimeStop_Sat, @iTimeStop_Sun, @strCampaignName, @iScheduler, @iPriority, @strOnAnswerLive, @strOnAnswerMachine, @strOnAnswerFax, @strOnNotAnswered, @strOnRetriesExhausted, @iAnswerTimeout, @iRetriesLeft, @iRetriesDelay, @strRV, @strOptions, @strEscalationCalls); ]
165243.893  15                      dial  cmd_callque_Insert ExecuteReader [6127027026,,effbc205-bc07-4a98-869d-a1752496d8d9,]
165243.895  15                ERROR v7.5.20 - 7.5.6704.42422 (2018-05-10 22:34:04.78)       Db_Insert_callqueAndPortList_call : ExecuteReader requires the command to have a transaction when the connection assigned to the command is in a pending local transaction.  The Transaction property of the command has not been initialized.

   at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
   at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
   at ktlib.vgDb.vgDb_ProviderInvariant.Db_Insert_callqueAndPortList(DbCommand& cmd_callque_Insert, DbCommand& cmd_PortList_Insert, DbCommand& cmd_calltrack_Insert, clsFullTelNbr zPhoneNumber, String strPortSelection, DbTransaction& insert_transaction)
165243.895  15                      dial  calltrack is used. PortToUse_LinkField=[GUID]
165243.895  15                      dial  cmd_calltrack_Insert.ExecuteNonQuery call
165243.896  15                      dial  cmd_calltrack_Insert.ExecuteNonQuery returned
165243.901  15                      dial  Db_Insert_porttouse completed. values=-1,effbc205-bc07-4a98-869d-a1752496d8d9,2/25/2019 4:52:43 PM,iScheduler=0,sPortList=[-1],iPriority=1, times=0,2359,0,2359,0,2359,0,2359,0,2359,0,2359,0,2359,   tel=6127027026, inserts=1, ts=00:00:00.0010001
165243.901  15                      tx.Commit call
165243.902  15                      tx.Commit returned
165243.902  15                      OutDial input file : loaded 0 entries from C:\Program Files (x86)\VoiceGuide\data\Outdial.xml
165243.903  15                      OutDial input file deleted : C:\Program Files (x86)\VoiceGuide\data\Outdial.xml

 

Trace of porttuse call find and subsequent "no matching callque entry" situation:

165243.903  17                      dial  BuildSQL_FindNextCall_inporttouse_Stage1: [SELECT TOP 1 porttouse.CallID, porttouse.CallGUID, porttouse.ActivateTime FROM porttouse WHERE ( (porttouse.ActivateTime <= @dateNow) AND ((porttouse.TimeStart_Mon <= @time4charNow) AND (porttouse.TimeStop_Mon > @time4charNow))  AND (porttouse.Scheduler = @iScheduler)) ;]
165243.904  17                      dial  cmd_FindNextCall_Stage1_AnyPort ExecuteReader call. time4charNow=1652, iScheduler=0, dateNow=2019-02-25 16:52:43
165243.905  17                      dial  cmd_FindNextCall_Stage1_AnyPort ExecuteReader returned .HasRows=True
165243.905  17                      dial  cmd_FindNextCall_Stage1 ID=-1, guid=effbc205-bc07-4a98-869d-a1752496d8d9
165243.905  17                      dial  OutDialQue_FindCallCompleted start (-1/4) [InvariantDriver]
165243.905  17                      dial  all-line search completed
165243.905  17                      dial  some calls found ID/GUID=-1/effbc205-bc07-4a98-869d-a1752496d8d9, tel=, sTaskTimestamp=165243.903, diff=00:00:00.0020002
165243.906  17                      dial  state 1:Null,2:Null,3:Null,4:Null,
165243.906  17                      dial  before while loop. port=1,  LineDevicesControlled=4
165243.906  17                      dial  auto  top of 'next port' loop. port=1 LineDevicesControlled=4
165243.906  17   1   1              dial  auto  DbProcessQueue_QueueForWork call, for port=1 source=InvariantDriver
165243.906  17                      dial  BuildSQL_FindNextCall_inporttouse_Stage1: [SELECT TOP 1 porttouse.CallID, porttouse.CallGUID, porttouse.ActivateTime FROM porttouse WHERE ( ((porttouse.PortNumber=@portNumber) OR (porttouse.PortNumber=@portNumberAllPorts)) AND (porttouse.ActivateTime <= @dateNow) AND ((porttouse.TimeStart_Mon <= @time4charNow) AND (porttouse.TimeStop_Mon > @time4charNow))  AND (porttouse.Scheduler = @iScheduler)) ;]
165243.906  17   1   1              dial  cmd_FindNextCall_Stage1_SpecificPort ExecuteReader call (port=1, iTimeNow=1652)
165243.907  17   1   1              dial  cmd_FindNextCall_Stage1_SpecificPort ExecuteReader returned .HasRows=True
165243.907  17   1   1              dial  cmd_FindNextCall_Stage1 ID=-1, guid=effbc205-bc07-4a98-869d-a1752496d8d9
165243.907  17   1   1              dial  findcall ID=-1, guid=effbc205-bc07-4a98-869d-a1752496d8d9
165243.907  17   1   1              dial  cmd_FindNextCall_Stage2_GUID ExecuteReader call SQL=[SELECT  callque.ID, callque.GUID,  callque.PhoneNumber, callque.PhoneNumberPrefix, callque.ActivateTime, callque.CampaignName, callque.Priority, callque.OnAnswerLive, callque.OnAnswerMachine, callque.OnAnswerFax, callque.OnNotAnswered, callque.OnRetriesExhausted, callque.AnswerTimeout, callque.RetriesLeft, callque.RetriesDelay, callque.RV, callque.CallOptions, callque.EscalationCalls  FROM callque WHERE callque.guid = @guid;]
165243.908  17   1   1              dial  cmd_FindNextCall_Stage2_GUID ExecuteReader returned .HasRows=False
165243.908  17                WARN  dial  db    do    findcall objDbDataReader_Stage2.HasRows returned False
165243.908  17                WARN  dial  No matching callque entry. Delete the porttouse entry just found. ID=-1, guid=effbc205-bc07-4a98-869d-a1752496d8d9
165243.910  17                      dial  Db_Delete_Entry begin id=-1 guid=effbc205-bc07-4a98-869d-a1752496d8d9 linkField=GUID, sql=[DELETE FROM callque WHERE GUID=@guid; DELETE FROM porttouse WHERE CallGUID=@guid;]

 

Share this post


Link to post

Have you tried inserting calls into your SQL Server based database using VoiceGuide's Outbound Call Loader app?

If the Outbound Call Loader app ins inserting calls for you correctly then you could turn the VoiceGuide service off and examine the callque table to confirm how the data was inserted (without VoiceGuide reading in those entries and deleting them after making the call).

This should let you confirm what data you need to insert into the callque table yourself directly in order to have VoiceGuide place the outgoing call.

(if OutDialQue_PortToUse_LinkField is not Disabled then you would also need to create a matching porttouse entry for every call)

Share this post


Link to post

It was not helpful autoloader in the past when porttouse was enabled. It did not help now

Record stays forever in call queue. nothing happens.
 



Tell me what is logic behind this whole thing.


1. Voiceguide service discovers outdial.xml file processes it and puts record in calque table

2. Voicegiode records processes record one by one and puts them in call track table.

Or Voiceguide puts records in both calltrack and calque and then processes records in calque one by one and deletes them?

 

It's important to know what to expect.

I'd rather Mimic this process myself, as I said Loader is not a big help but I can certainly try one more time.

Porttouse disable for MSSQL for SQLite I do not care it works fine

Share this post


Link to post
Quote

Record stays forever in call queue. nothing happens.

Can you please post the complete vgEngine trace file that covers the time when you loaded the call using the Outbound Call Loader, and the vgDialListLoad trace from the Outbound Call Loader session when you loaded the call. Both traces are in VoiceGuide's \log\ subdirectory.

We can then see what is happening on the system and advise.

 

If outdial.xml file is created then VoiceGuide loads the call details from outdial.xml and creates entries in both callque and porttouse table, or just in the callque table, depending on whether porttouse is enabled or not.

If there is a port available then that loaded call is made right away (and then entries from callque / porttouse tables are deleted).

If you are loading calls by inserting records into the database directly, then if you disable the porttouse then you will then only need to insert the call record into one table: the callque table. It It will make your call insert process simpler.

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
×