VoiceGuide IVR Software Main Page
Jump to content

Possible Values Of $rv[outdial_result]

Recommended Posts

Dear Support,

 

I am trying to create a call-finish script and utilize the RV[OutDial_Result]

 

What I read from the help (see below) seems to be different from what actually I see from the log file.

 

$RV[OutDial_Result]
When the outgoing call has been answered or the number of retries has been used up this RV stores the type of outcome. 
Possible values are: Contacted_Human, Contacted_AM Contacted_Pager, Contacted_Fax, Uncontactable_OnDontDialList, 
SIT_Reorder, SIT_NoCircuit, SIT_CustIrReg, SIT_Unknown, SIT_Unavailable, Uncontactable_NoAnswer.

 

The values I see from the log is:

Busy: "NoAnswer"
A.M.: "AnsweredMachine"
Human: "AnsweredLive"

 

Which set of values should I use?

One more thing, Can I tell "Busy" from "Not answered" (meaning the phone kept ringing and VoiceGuide decides to hang up at some point )?

 

Thanks.

 

 

Share this post


Link to post

Adding to the question above..

 

The outdial function works fine in case of "OnAnswerLive."

However, even if I specify scripts for "OnAnserMachine" and "OnNotAnswered" field, neither of them works.

When I check the log file, those two RV are set to empty "[]"

 

Please See below

....
dial  making call tel[917141234444] live[C:\Program Files\VoiceGuide\Scripts\IntelliTime\Login.vgs] am[] fax[] OnHangup[] rv[] options=[]
........
143828.276  6  1       ScriptEvent TDX_CALLP  CR_CNCT|CON_PAMD|CON_PAMD
143828.276  6  1       LsWaitAfterDialingOut : 133,TDX_CALLP,10,4,0,CR_CNCT,CON_PAMD,CON_PAMD
143828.276  6  1       OnOutboundCallAnswered_Start_AnsweringMachine_Option 10,4,0
143828.291  6  1       dial  odbc  queue task to delete from external ODBC CallQue. ID=99
143828.291 10          DbProcessQueue_Callback_DeleteRow_ODBC
143828.291 10          DbProcessQueue_Callback_DeleteRow_ODBC (odbc) connection open call
143828.291 10          DbProcessQueue_Callback_DeleteRow_ODBC (odbc) ExecuteNonQuery completed iRowsAffected=1
143828.291  6  1       rvns  add [OutDial_Result]{AnsweredMachine}
143828.291  6  1       Set_hCall crn=28bea, called from OnOutboundCallAnswered_Start_AnsweringMachine_Option
143828.291  6  1 AM msg not specified, using C:\Program Files\VoiceGuide\Scripts\IntelliTime\Login.vgs
143828.291  6  1 state Machine Answer. Wait for end of welcome message...

 

I am using MS SQL server to do this and when I check what IVR got from my "CallQue," everything seems to be all right.

SELECT TOP 1  ID, PhoneNumber, PhoneNumberPrefix, ActivateTime, DayTimeStart, DayTimeStop, DaysCallAllowed, LineSelection, CampaignName, Priority, OnAnswerLive, OnAnswerMachine, 
OnAnswerFax, OnNotAnswered, OnRetriesExhausted, AnswerTimeout, RetriesLeft, RetriesDelay, RV, CallOptions, EscalationCalls FROM CallQue 
WHERE (((ActivateTime <= '2008-08-29 14:53:46') OR (ActivateTime IS NULL)) AND ((DayTimeStart <= 1453) OR (DayTimeStart IS NULL)) AND ((DayTimeStop > 1453) OR (DayTimeStop IS NULL)) AND ((RetriesLeft >= 0) OR 
(RetriesLeft IS NULL)) AND ((DaysCallAllowed = '') OR (DaysCallAllowed = ' ') OR (DaysCallAllowed IS NULL) OR (DaysCallAllowed LIKE '%Fr%')))  ORDER BY Priority

 

The recordset contains the name of script in "OnAnswerMachine" and "OnNotAnswered" correctly.

 

Do I need to set something else?

 

Thanks.

 

Share this post


Link to post
Which set of values should I use?

The $RV[OutDial_Result] values are different fro v6 and v7. Looks like the values in that Help file still reflect the old v6 values. We'll confirm what value set is reported by v7 and post it here.

One more thing, Can I tell "Busy" from "Not answered" (meaning the phone kept ringing and VoiceGuide decides to hang up at some point )?

Yes. There should be two different values for these.

 

However, even if I specify scripts for "OnAnserMachine" and "OnNotAnswered" field, neither of them works.

Could you please post a copy of VoiceGuide's Trace Logs which captures the problem, this will allow us to see what happened.

 

When posting traces/scripts please .ZIP them up and post them as attachments.

Share this post


Link to post

Thanks for the reply.

 

Here is the zipped log file, which shows VoiceGuide detected AM answered but playing "Login.vgs" script (for AnserLive) because it did not recognize "onAnswerMachine" script, "HiringLeaveMsgForAM.vgs" that has been provided as well.

 

The field name I used in "CallQue" table is "OnAnswerMachine" and I have already checked this field got the script path/name correctly.

Also "OnNotAnswered" script did not get recognized. (I am using MS SQL Server 2005)

 

Please let me know what went wrong.

 

Thanks again.

 

LogOutDial_ForAM.zip

Share this post


Link to post

Trace shows the Answering Machine script setting was not read in from the database:

 

163617.662 10 1 dial StartOutgoingCall start tel[17143932211] live[C:\Program Files\VoiceGuide\Scripts\IntelliTime\Login.vgs] am[] fax[] rv[[userID]{93297},[shiftID]{70217}[isHiring]{true}] CampaignName[TestCalls] options[] ID=107

 

 

And as a result the "Live" script was used instead:

 

163655.381 18 1 ev Dialogic 133,TDX_CALLP, crn=20000001, 10,4,0,TDX_CALLP,CR_CNCT,CON_PAMD

...

163655.412 6 1 AM msg not specified, using C:\Program Files\VoiceGuide\Scripts\IntelliTime\Login.vgs

163655.412 6 1 state Machine Answer. Wait for end of welcome message...

163655.412 6 1 dial awaiting end of answering machine message (lvl:10 for 20)

 

Not sure why the Answering Machine field was not read back from your database. Looks like we will need to add some extra debugging there to better check cvalues returned by the database drivers.

 

in the meantime one thing to try would be to set the vgEngine trace level in VG.INI to 20 and run the test again. Maybe this higher trace level will show more information.

 

Please also try placing some data in the OnAnswerFax, and OnRetriesExhausted fields (as well as in the OnNotAnswered) as a test to see if those fields are read in properly.

 

Share this post


Link to post

I actually have tried with "OnAnswerFax" attribute.

 

If I fill this column in, an interesting thing happens: the trace log shows that VoiceGuide gets the value for OnAnswerFax script correctly, but the problem is that VoiceGuide is trying to deal with fax, showing "Sending Fax Calling tone..." on the status monitor window.

 

Setting for "OnRetriesExhausted" is no use: it does not even show in the log.

 

Is it possible that VoiceGuide looks up for different field name than those shown on the Help page?

I noticed OnAnswerFax was not even listed on the help. (http://www.voiceguide.com/vghelp/source/html/dial_outdialque_odbc.htm)

 

Please let me know how I can solve this issue.

 

Here are the logs showing the things explained above. I also set the Log level to 20 as told.

 

Thanks.

 

 

OutDial_WithFax.zip

Share this post


Link to post

Looks like the current release of v7 has a bug in the ODBC OutDialQue returned data parser which affects the "OnAnswerMachine" column data readback.

We have done a quick fix of this bug, and hopefuly this quick fix should get your system working.

Please download and try this version: [old link removed]

In this patched version the $RV[OutDial_Result] result values have been updated as well to better reflect specific end of call causes.

Note that the Call Que Loader app may not work in this version, which should not be an issue as you are using an external CallQue source.

Note that this patched version has not been tested by us yet. We will be able to perform our internal testing of this patched version on Monday.

If you encounter problems please post traces as before.

Share this post


Link to post

Dear Support,

 

Thanks for the quick ptach. It seems to work for "OnAnswerMachine" case.

 

But I still can't get this worked for "OnNotAnswered."

I guess the target script will be triggered when there is no response until the number of seconds set in "AnserTimeout" fields in CallLog table.

However, even after the specified secodns, VoiceGuide does not run the specified script, showing "hanging up(EV_TIMEOUT_AFTERIDLE_ALLOWOUT)" on Call monitor screen. It never gets hung up.

 

I have attached the log file.

Please let me know what to do.

 

One more question is, how can I run a script in case of "busy?" I would like to know if I can have VoiceGuide run a certain script upon "busy" signal detection.

 

Thanks!

OnNotAnsweredIssue.zip

Share this post


Link to post

Could you please attach the trace again. The attached file did not have anything in it.

Share this post


Link to post

Here it is again.

 

I set "AnswerTimeout" to 10 secs so that VoiceGuide hangs up before the call is answered.

Screen monitor shows "hanging up... "with "[EV_TIMEOUT_MAKECALL_NORESPONSE]" status, but nothing happens after that: the monitor shows the status forever.

 

I also filled "OnNotAnswer" field with a script path, but it was not triggered. The log shows that it reads live[...] for "OnAnswerLive" am[...] for "OnAnswerMachine," but not something for not on anwer...

 

The other question I mentioned was: how can I run a script/vbscript after VoiceGuide detects busy signal? I don't know how to trigger for it.

 

Thanks.

0903_0836_vgEngine.zip

Share this post


Link to post

Looks like we will need the ktTel traces as well to see what is happening here.

 

Could you please change the vgEngine trace level back to 10, then restart VG and when loading the call please have the 'no answer' timeout set to a value of above 60sec. And then load another call with the answer timeout of 10 seconds like in the previously posted trace.

 

Then post the vgEngine and the ktTel traces (.ZIPed)

Share this post


Link to post

Please find the attached file that has the requested logs.

The log shows "No Answer" in 60 seconds and 10 seconds as instructed.

 

The 60-sec timeout seemed to work OK and it disconnected, but 10 sec-timeout never disconnects..

 

And the thing is that neither of them triggered "OnNotAnswer" script: the log shows there is no such thing to store the script path for No Answer.

 

Again, another question (a bit different from this issue): How do I trigger a script on "Busy" signal event so that I can use another script in case of busy signals?

 

Please let me know the answers to those two issues.

 

Thanks.

NoAnswerLogs.zip

Share this post


Link to post

Trace shows that there is bug in the current version when outgoing call is made on an analog line and the call answer timeout is set to less then 40 seconds.

This will be fixed this in the next release update of VoiceGuide v7. In meantime as a workaround on analog lines please set the answer timeout to be more then 40 seconds.

 

 

 

Call 1

 

092231.351 476 1 fn LineMakeCall(iLineId=1, iCallRequestId=0 (ignored), strNumberToCall=[112], callprog=DX_PAMDOPTEN, timeout=60, params:0,0,cid=[(null)],opt=[])

...

092231.398 476 1 TelDriver_LineMakeCall returned hli_Returned->crn_lastMakeCall=0x20000001

092231.398 476 1 raise generic ktTel_Completion|10000 Completion_MakeCall|0 536870913 (536870913|0|0|112||<result>ok</result><crn>536870913</crn>)

...

092232.273 3408 dx_dial([112], call progress ON) ok

092232.273 3408 1 no event issued after dial

092232.273 3408 1 CtEventProcess (from store) idx=6, evtdev=1, crn=00000000, evttype=134, data=07441CF8, len=4 (store: evinque=0, maxever=0)

092232.273 3408 1 ev TDX_CST (CST Event Received)

092232.273 3408 1 TDX_CST DE_LCON data=65535

092232.273 3408 1 raise Dialogic TDX_CST 134 (65535 0 0 DE_LCON )

092307.492 3408 1 CtEventProcess (from store) idx=7, evtdev=1, crn=00000000, evttype=133, data=07441CF8, len=0 (store: evinque=0, maxever=0)

092307.492 3408 1 ev TDX_CALLP (Call Progress Completed)

092307.492 3408 1 TDX_CALLP CR_NOANS (called line did not answer)

 

 

Call 2

 

092432.103 476 1 fn LineMakeCall(iLineId=1, iCallRequestId=0 (ignored), strNumberToCall=[112], callprog=DX_PAMDOPTEN, timeout=10, params:0,0,cid=[(null)],opt=[])

...

092432.135 476 1 raise generic ktTel_Completion|10000 Completion_MakeCall|0 536870914 (536870914|0|0|112||<result>ok</result><crn>536870914</crn>)

092432.150 476 1 LineMakeCall TelDriver_LineMakeCall zsResult=[<result>ok</result><crn>536870914</crn>]

...

092432.994 3408 dx_dial([112], call progress ON) ok

092432.994 3408 1 no event issued after dial

092444.276 476 1 fn DropCall(sLineId=1, sXMLOptions=[], iParam1=0)

092444.276 476 1 TelDriver_DropCall(sXMLOptions=[])

092444.276 476 1 dx_sethook(1) call

092444.276 476 1 dx_sethook 1 DX_ONHOOK error [9]:[Device busy]

092444.369 2264 1 iTimer_RingIgnore_InGuardTimeAfterHangup=20

092445.369 2264 1 iTimer_RingIgnore_InGuardTimeAfterHangup=10

092458.151 3408 1 CtEventProcess (from store) idx=10, evtdev=1, crn=00000000, evttype=133, data=07441CF8, len=0 (store: evinque=1, maxever=1)

092458.151 3408 1 ev TDX_CALLP (Call Progress Completed)

092458.151 3408 1 TDX_CALLP CR_CNCT (called line was connected)

092458.151 3408 1 TDX_CALLP CR_CNCT CON_PVD (connection due to Positive Voice Detection)

092458.291 3408 1 raise Dialogic TDX_CALLP 133 (10 3 0 TDX_CALLP CR_CNCT CON_PVD)

092458.291 3408 1 CtEventProcess (from store) idx=11, evtdev=1, crn=00000000, evttype=134, data=07441CF8, len=4 (store: evinque=0, maxever=1)

092458.291 3408 1 ev TDX_CST (CST Event Received)

092458.291 3408 1 TDX_CST DE_LCON data=10952

092458.291 3408 1 raise Dialogic TDX_CST 134 (10952 0 0 DE_LCON )

092459.791 3408 1 CtEventProcess (from store) idx=12, evtdev=1, crn=00000000, evttype=134, data=0DC9EFF8, len=16 (store: evinque=0, maxever=1)

092459.791 3408 1 ev TDX_CST (CST Event Received)

092459.791 3408 1 TDX_CST DE_TONEON cst_data=1001

092459.791 3408 1 tone description retrieve hli=0A0E0048, iToneUserID[1]=1001 sToneUserName[1]=[DISCONNECT_TAPI1]

092459.791 3408 1 raise Dialogic TDX_CST 134 (1001 0 0 DE_TONEON DISCONNECT_TAPI1 )

092459.807 3408 1 CTelProxy::Event_CallState m_pktTelProxyClient=006819D0

092459.807 3408 1 raise CallState LINECALLSTATE_DISCONNECTED-FAX

092500.854 476 1 fn DropCall(sLineId=1, sXMLOptions=[], iParam1=0)

092500.854 476 1 TelDriver_DropCall(sXMLOptions=[])

092500.854 476 1 dx_sethook(1) call

092500.854 476 1 dx_sethook 1 DX_ONHOOK ok

092500.870 2264 1 iTimer_RingIgnore_InGuardTimeAfterHangup=20

092500.901 3408 1 CtEventProcess (from store) idx=13, evtdev=1, crn=00000000, evttype=135, data=07441CF8, len=4 (store: evinque=0, maxever=1)

092500.901 3408 1 ev TDX_SETHOOK (SetHook Completed)

092500.901 3408 1 set hli->pCTelProxyhli. current hli->pCTelProxyhli=07975388, pTelClientEvents=07975388

092500.901 3408 1 TDX_SETHOOK - is onhook

092500.916 3408 1 raise Dialogic TDX_SETHOOK 135 (0 0 0 DX_ONHOOK )

092500.932 3408 1 CTelProxy::Event_CallState m_pktTelProxyClient=006819D0

092500.932 3408 1 raise CallState LINECALLSTATE_IDLE

092500.932 476 1 fn ReleaseCall(sLineId=1, crn=20000002, Param1=0)

092500.932 476 1 TelDriver_ReleaseCall channelType=analog. just signal back that ReleaseCall completed

092500.932 476 1 CTelProxy::Event_CallState m_pktTelProxyClient=006819D0

092500.932 476 1 raise CallState GCEV_RELEASECALL

092500.932 476 1 TelDriver_ReleaseCall Event_CallState returned.

092500.932 3408 1 ec ec_stream not enabled. ec_stopch not called

092501.870 2264 1 iTimer_RingIgnore_InGuardTimeAfterHangup=10

 

 

 

Share this post


Link to post

O.K. I will use the value greater than 40...

But I still need answers to my real questions...

 

1. Even if I set the number for "Timeout" greater than 40, VoiceGuide does not catch "OnNotAnswer" script. (you can see it in the log. it has "am[..]" and "live[...]" for script running in case of answering machine and live answer, but no such thing as "NoAnswe.")

Please let me know how I can run a script when there is no answer.

 

2. I also would like to know a way to trigger a script on busy signal.

 

Thanks.

Share this post


Link to post

Dear Support,

 

I am still waiting for the answers to those two questions above.

 

Let me finish this project!! :wacko:

 

Thanks.

Share this post


Link to post

It looks like in the current version there is a bug with the "OnNotAnswer" script when Analog lines are used.

 

This bug has been confirmed as fixed in the next version to be released and we anticipate this new version to be released sometime next week.

 

The "Busy" case would be handed within the "OnNotAnswer" script, you will be able to query the detailed call outcome from within the "OnNotAnswer" script.

Share this post


Link to post

Please download and update to this version of VoiceGuide:

[old link removed]

Please see the Help file section on the setting up of the external dialer databases. The tables used have changed in this version and the Help file outlines how to work with the new tables. If you have any questions about working with the new database format please post them in a new Support Forum thread.

Share this post


Link to post

Thanks for the patch and great support!

 

I will talk to you later if there is any issue.

 

Thanks again.

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
×