VoiceGuide IVR Software Main Page
Jump to content

Retrieving Rv Values With Vbscript

Recommended Posts

Hi,

 

we have a working VB script, but when retrieving values, we receive it with a space at the front.

104729.602   7  98  33 state [dial_out_status_detection] Evaluate [$RV[OutDial_Result__2]]
104729.603   7  98  33       rv    replace start [$RV[OutDial_Result__2]]
104729.603   7  98  33       rv    replace end   [ ANSWERED]
104729.603   7  98  33       eval  [ANSWERED]
104729.603   7  98  33       objReturn is NULL for input=[ANSWERED], try with Cstr
104729.603   7  98  33       eval  InvokeMember Eval returned
104729.603   7  98  33       rvns  add   dial_out_status_detection_Input| ANSWERED
104729.603   7  98  33       rvns  add   dial_out_status_detection|ANSWERED
104729.603  14  98  33 rem   Run_ResultReturn [[OutDial_Result__3]{ ANSWERED}] 30
104729.603   7  98  33       creating new (non-global) rv : call_status_rv
104729.603   7  98  33       rvns  add   call_status_rv|ANSWERED
104729.603  14  98  33       q_scr +     cmdRun_ResultReturn 0 
104729.603   7  98  33       Eval Expr result:[ANSWERED] stored in RV[call_status_rv]
104729.603   7  98  33       path {ANSWERED} not found
104729.603   7  98  33       matching path not found [ANSWERED], try boolean paths.
104729.604   7  98  33       ex: ScriptIo.VGMTYPE_EVALEXPR [ANSWERED] could not be converted to boolean. Take Success path as string non-empty.
104729.604   7  98  33       FindNextVgmTitleInPathList: next module title is=[dial_thu_no_status]
104729.604   7  98  33       matching path found (Boolean True)
104729.604   7  98  33 t     timer clear (force=False)
104729.604  15  98  33       engineVbs dispose call
104729.604  15  98  33       runscr .Execute returned. iRunWait=1
104729.604  15  98  33       runscr RunWait_1 script completed
104729.604  15  98  33       runscr sModuleClearScriptProcessWasCalledFrom is current module get_status, clearing setting
104729.604  15  98  33       runscr RunWait_1 exiting thread as iVgmIdx=1509 iModuleIdx=1508
104729.604   7  98  33       RunModule start Play, [dial_thu_no_status], iModuleIdx=1514, previous: vgm=1509, vgs=24:24
104729.604   7  98  33       [dial_thu_no_status] VGMTYPE_PLAY run start
104729.604   7  98  33       rvns  add   dial_thu_no_status_LastPos|0
104729.604   7  98  33       rvns  add   dial_thu_no_status_ReplayCount|0
104729.604   7  98  33       PrepareAndPlayWavAndTts start iModuleIdx=1514, iPlayFileIdx=1, bMakeTtsFile=True, sSoundFileIs=
104729.604   7  98  33       PrepareAndPlayWavAndTTS sPlayFile=
104729.604   7  98  33 state [dial_thu_no_status] Playing wav ()
104729.604   7  98  33       q_scr +     evScriptEvent 8001 EV_PLAY_FINISHED
104729.604   7  98  33       q_scr run   cmdRun_ResultReturn sCode=[] iActionID=0, crn=0 [0|0|0|0|0][[OutDial_Result__3]{ ANSWERED}|||||] 00:00:00.0010001 max:5|00:00:00.0380022
104729.604   7  98  33       rvns  add   OutDial_Result__3| ANSWERED
104729.604   7  98  33       Run_ResultReturn iRunWait_VgmIdx=1508, iVgmIdx_Curr=1514
104729.604   7  98  33       ignoring returned Run_ResultReturn. Script moved on to another module.
104729.604   7  98  33       q_scr run   evScriptEvent sCode=[EV_PLAY_FINISHED] iActionID=0, crn=0 [0|0|0|0|0][|||||] 00:00:00 max:5|00:00:00.0380022
104729.604   7  98  33       se    EV_PLAY_FINISHED 8001  0|0|0  || LineState=LS_PLAY_PLAYMSG
104729.604   7  98  33       LsPlayMsg EV_PLAY_FINISHED,EV_PLAY_FINISHED
104729.605   7  98  33       path {EV_PLAY_FINISHED} not found
104729.605   7  98  33       rvns  add   dial_thu_no_status_LastPos|-1
104729.605   7  98  33       iCurrReplayCount=0, iMaxReplayCount=0
104729.605   7  98  33 t     timer set   10 sec : EV_TIMEOUT_HANGUP
104729.605   7  98  33 t     timer set   3 sec : EV_TIMEOUT_GOTOMODULE

Share this post


Link to post

Please post full trace of the call, including the part where $RV[OutDial_Result__2] is set.

 

($RV[OutDial_Result__2] would have been set by your script. It is not an $RV that is set by VoiceGuide)

 

---

 

Also, trace shows that you have a Run_ResultReturn call from a VBScript module started on that line that is executed some time after the VoiceGuide script was already allowed to move onto other modules...

 

Usually, the scripts should not be designed to let this situation occur. If the VBScript module is going to call Run_ResultReturn etc. then usually the VoiceGuide script ought to wait for that response. Not move onto next module. Otherwise the late-arriving Run_ResultReturn etc, responses can interfere with what happens on the call afterwards.

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
×