VoiceGuide IVR Software Main Page
Jump to content

Loading outgoing calls

Recommended Posts

Hi,

 

I come back to this case, because I have no idea how to make it.

 

In other IVR application I have database with basic data: target number, call start, status(pending, successful, failed...), numbers of attempts, scenario id.

Dialout is an separate sub-script running in active script.

When I insert data to table and application started analyzing.

 

How to create such kind of task in VG?

Any simple scenario and sql database needed.

I'm using on all channels one scenario so I need dialout as option to main scenario.

Share this post


Link to post

I created dialout task in outbound call loader.

 

vgDialListLoadConfig.xml looks:

 

<?xml version="1.0"?>

<clsConfigDialListLoad xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<textPhoneNumbers>502131658</textPhoneNumbers>

<textPhoneNumbersFile />

<checkRandomize>false</checkRandomize>

<textCampaignName>test dialout</textCampaignName>

<iScheduler>0</iScheduler>

<textAnswerTimeout>60</textAnswerTimeout>

<textRetriesCount>2</textRetriesCount>

<textRetriesDelay>10</textRetriesDelay>

<iCallPriority>0</iCallPriority>

<textDoNotCallListFile />

<textPhoneNumberPrefix />

<listPrefixReplaceRules />

<textScriptAnswerLive>C:\Program Files\VoiceGuide\Scripts\Maciej\prepaid_2011_10_14.vgp</textScriptAnswerLive>

<textScriptAnswerMachine />

<textOnAnswerFax />

<textScriptOnNotAnswered />

<textScriptRetriesExhausted />

<textRVs />

<textCallOptions />

<datetimeStartCalls>2012-11-12T17:48:29.125+01:00</datetimeStartCalls>

<checkMon>true</checkMon>

<checkTue>true</checkTue>

<checkWed>true</checkWed>

<checkThu>true</checkThu>

<checkFri>true</checkFri>

<checkSat>true</checkSat>

<checkSun>true</checkSun>

<datetimeDialWindow_Mon_Start>2012-11-12T00:01:00</datetimeDialWindow_Mon_Start>

<datetimeDialWindow_Tue_Start>2012-11-12T00:01:00</datetimeDialWindow_Tue_Start>

<datetimeDialWindow_Wed_Start>2012-11-12T00:01:00</datetimeDialWindow_Wed_Start>

<datetimeDialWindow_Thu_Start>2012-11-12T00:01:00</datetimeDialWindow_Thu_Start>

<datetimeDialWindow_Fri_Start>2012-11-12T00:01:00</datetimeDialWindow_Fri_Start>

<datetimeDialWindow_Sat_Start>2012-11-12T00:01:00</datetimeDialWindow_Sat_Start>

<datetimeDialWindow_Sun_Start>2012-11-12T00:01:00</datetimeDialWindow_Sun_Start>

<datetimeDialWindow_Mon_Stop>2012-11-12T23:59:00</datetimeDialWindow_Mon_Stop>

<datetimeDialWindow_Tue_Stop>2012-11-12T23:59:00</datetimeDialWindow_Tue_Stop>

<datetimeDialWindow_Wed_Stop>2012-11-12T23:59:00</datetimeDialWindow_Wed_Stop>

<datetimeDialWindow_Thu_Stop>2012-11-12T23:59:00</datetimeDialWindow_Thu_Stop>

<datetimeDialWindow_Fri_Stop>2012-11-12T23:59:00</datetimeDialWindow_Fri_Stop>

<datetimeDialWindow_Sat_Stop>2012-11-12T23:59:00</datetimeDialWindow_Sat_Stop>

<datetimeDialWindow_Sun_Stop>2012-11-12T23:59:00</datetimeDialWindow_Sun_Stop>

<textPortSelection />

<sDbOutDialQue_Fname>C:\Program Files\VoiceGuide\data\vgDb.db</sDbOutDialQue_Fname>

<textSqlCommand />

</clsConfigDialListLoad>

 

But nothing happens.

 

 

I understand that I should to create db with this same column as xml.

But how to change outbound dial data source to postgresql witch I use?

 

How to initialize VG to call out?

Share this post


Link to post
But how to change outbound dial data source to postgresql witch I use?

Sounds like you have set up postgresql to be the backend database.

 

Are the outbound calls being made by your system when the calls are loaded using provided "Outbound Call Loader" GUI ?

 

Calls are automatically loaded into the database set up to act as the store of calls, and VoiceGuide will automatically make the calls as they become due.

 

Can you please post the vgEngine trace capturing system startup and the calls being loaded.

 

Please .ZIP up the traces before posting.

Share this post


Link to post

Trace shows that system is using the default SQLite database.

 

Can you please post the _vgDiallistload trace that is created when you start the Outbound Call Loader program, and the file:

 

C:\Program Files\VoiceGuide\data\vgDb.db

 

Please .ZIP up the files before posting.

 

Are you running the Outbound Call Loader program as Administrator?

 

 

220213.421  5               Db_Open GetFactory call [system.Data.SQLite]
220213.421  5               Db_Open sDbName=[C:\Program Files\VoiceGuide\data\vgDb.db]
220213.421  5               Db_Open CreateConnection call
220213.421  5               Db_Open CreateConnection returned. conn=System.Data.SQLite.SQLiteConnection, this=ktlib.vgDb.vgDb_ProviderInvariant
220213.421  5               Db_Open sConnString in.len=21, rvreplaced.len=52
220213.421  5               Db_Open conn.Open call
220213.484  5               Db_Open conn.Open returned
220213.484  5               Db_TestTables start, conn.DataSource=vgDb, Provider=System.Data.SQLite
220213.484  5               Db_TestTables ExecuteScalar call (default)
220213.484  5               Db_TestTables objExecScalar=1
220213.484  5               Db_TestTables ExecuteScalar returned iCount=1
220213.484  5               Db_TestTables returned ok
220213.484  5               Db_Open DbCommandsParamteresInit next. conn=System.Data.SQLite.SQLiteConnection

Share this post


Link to post

Attached trace does not show any attempts of calls being loaded into the database.

 

Did you try loading any outgoing calls?

 

What happened when you pressed the "Load Phone Numbers" button?

Share this post


Link to post

Can you please do this:

 

1. Stop VG Service

2. Delete C:\Program Files\VoiceGuide\data\vgDb.db

3. Start VG Service

4. Start Outbound Call Loader program

5. Load a call

6. ZIP up vgDb.db, vgEnigne and vgDiallistload traces created and post here.

Share this post


Link to post

Traces show that calls were loaded, and the outbound call was made, the and was connected (was answered).

 

VoiceGuide started the specified script (prepaid_2011_10_14.vgp), and the script ended the call in module [DDI].

 

So looks like there is no problem with the VoiceGuide making outbound calls, but just the VoiceGuide script specified is incorrectly set up.

 

(in this case it looks like module [DDI] will hang up the call if the DNIS is not set, which it isnt on outgoing calls. $RV_DNIS is only set on inbound calls.

 

 

 

192016.359   0       dial  cmd_callque_Insert ExecuteNonQuery [502131658,,e8f4c2d4-2b5b-45d7-898d-b9e5fecf3c7c,2012-11-13 19:19:41,1,1,1,1,1,1,1,1159,2359,2359,2359,2359,2359,2359,strCampaignName=test dialout new,iScheduler=0,iPriority=1,strOnAnswerLive=C:\Program Files\VoiceGuide\Scripts\Maciej\prepaid_2011_10_14.vgp,strOnAnswerMachine=,strOnAnswerFax=,strOnNotAnswered=,strOnRetriesExhausted=,iAnswerTimeout=60,iRetriesLeft=2,iRetriesDelay=10,strRV=,strOptions=,strEscalationCalls=] 

192016.375           dial  Db_Insert_porttouse : -1,e8f4c2d4-2b5b-45d7-898d-b9e5fecf3c7c,2012-11-13 19:19:41,iScheduler=0,sPortList=[-1],iPriority=1, times=1,1159,1,2359,1,2359,1,2359,1,2359,1,2359,1,2359 : tel=502131658, inserts=1, ts=00:00:00

192016.562   0       1 added

 

192017.296  6 169  58 state Dialing (auto) 502131658
192017.312  6 169  58 state Dialing (auto) 502131658...
192025.296 18 169  58 ev    CallState GCEV_CONNECTED, crn=2800043, iEvent=2 ,256,2,4, s1:, s2:, s3:]. vgEngine v0.0.0.0 (2012-26-10 23:45:37.70)
192025.296 18 169  58       q scr add   evCallState 2 GCEV_CONNECTED
192025.296  6 169  58 state Human answer. Start [C:\Program Files\VoiceGuide\Scripts\Maciej\prepaid_2011_10_14.vgp]
192025.312  6 169  58 state [sTART] Evaluate [now()]
192025.312  6 169  58 state [type_card_number=0] Evaluate [0]
192025.312  6 169  58 state [is_number_known] Evaluate [$RV_CIDNUMBER>100000000]
192025.312  6 169  58 state [set_calling_number] Evaluate [$RV_CIDNUMBER]
192025.312  6 169  58 state [DDI] Evaluate [$RV_DNIS]
192025.312  6 169  58       path {} found (at offset 4296)
192025.312  6 169  58       FindNextVgmTitleInPathList: next module title is=[finish the call]
192025.312  6 169  58 t     timer clear (force=False)
192025.312  6 169  58       RunModule start Hangup the Call, [finish the call], iModuleIdx=4, previous: vgm=29, vgs=1:1
192025.312  6 169  58       HangupCall, source=Hangup Module, WorkModeScript=Running_Normal, yLineStateAppPov=[Connected], lPlayId=0, lRecId=0
192025.312  6 169  58                   moduleTitle=[finish the call]
192025.312  6 169  58       ScriptWorkingMode set Stopping, (called from HangupCall)
192025.312  6 169  58       ls    set   Disconnect_Pending   (scriptstate=LS_ENDINGCALL)
192025.312  6 169  58 state Hanging up... [Hangup Module]

Share this post


Link to post

Sorry, you're right, it's my fault!

Script was not prepared to call.

Now it's working.

Thanks a lot!

 

 

 

How to right configure dialout connection to postgres?

 

I want to connect to table: dial_out_source in existing database: databasename

 

I think I should add something like (copy of mysql example):

 

<Dialer>

<OutDialQue_ADODB_Provider></OutDialQue_ADODB_Provider>

<OutDialQue_Database>dial_out_source</OutDialQue_Database>

<OutDialQue_ConnectString>ODBC; Driver=PostgreSQL Unicode; Server=IP; Port=5432; Database=databasename;UID=user;PWD=password;</OutDialQue_ConnectString>

<OutDialQue_PortToUse_LinkField></OutDialQue_PortToUse_LinkField>

<OutDialQue_SqlPrefix>SELECT</OutDialQue_SqlPrefix>

<OutDialQue_SqlSuffix>LIMIT 1</OutDialQue_SqlSuffix>

</Dialer>

 

to config file. But i'm not sure where to add <Dialer> section.

 

I don't see any <Dialer> section in config files (Config.xml, ConfigLine.xml) in VoiceGuide directory.

 

Can You describe fields list witch is necessary in dial_out_source table?

Share this post


Link to post
Now it's working.

Thanks a lot!

OK, thanks for letting us know.

 

I don't see any <Dialer> section in config files (Config.xml, ConfigLine.xml) in VoiceGuide directory.

The <Dialer> section should be right after the <Devices_Dialogic> section.

 

Can You describe fields list witch is necessary in dial_out_source table?

Please see the .sql files in VoiceGuide's \system\setup\ directory. They will show what field are needed in each table.

Probably best to use backend database through an ADO.NET driver, not ODBC.

 

Please start a new thread topic if you have any more questions on making Postgres / PostgreSQL the backend database.

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
×