VoiceGuide IVR Software Main Page
Jump to content

Strange Rv Processing Issue In Vbs

Recommended Posts

Hello again.

 

I have this weird issue when running this and maybe an earlier version, when the $RV_LINEID or $RV_DEVICEID is not always properley substituted in the VBS file which is created in the temp deirectory from the original source program.

 

For instance, using your standard internet portal demo the VBS source looks like this:

 

'make sure the returned data does not contain any commas

strResultVariables = replace(strResultVars, ",", "")

 

set vg = CreateObject("VoiceGuide.CommandLink")

vg.Run_ResultReturn $RV_DEVICEID, strResultVariables

Set vg = Nothing

But when this code is actually run after $RV substitution, I get a bodged string substitution in the temp file, like this:

 

'make sure the returned data does not contain any commas

strResultVariables = replace(strResultVars, ",", "")

 

set vg = CreateObject("VoiceGuide.CommandLink")

vg.Run_ResultReturn 1CONNECTEDariables

Set vg = Nothing

Clearly the 1 is from the device-id, but there appears to be a substitution problem with some bit of left-over status string, which is overwriting the part of the rest of the line. The end-result is that the VBS won't run and fails with a compile error !! Now this doesn't happen all the time, only after the line has been idle for a few seconds. And then only on the few out of sveral calls, but regularly say 1 out every 8 calls! And it has happened on other occaisions and running other programs/scripts.

 

I have tried rewriting the line, calling it as a function, eg: x=vg.Run_ResultReturn (...) and ranaming the variables, but still the problem persists. Allocating the RV to a string and putting that in the Run_ResultReturn line still suffers from the problem.

 

There is no direct clue from the log (a part of which is pasted below)...

(there is nothing in the other logs regarding this anomoly, but I can send them if you need them)

173735.54  13 Inband detection not enabled

173735.55  13 StartLoadedVgs at 14/02/2006 17:37:35, script interpretor VgMulti v5.2.5029 7

173735.56  13 rv    ns add [scriptsPath]{C:\Program Files\VoiceGuide\Scripts\Internet Portal\}

173735.57  13 rv    ns add [scriptPath]{C:\Program Files\VoiceGuide\Scripts\Internet Portal}

173735.58  13 rv    lg add [$RV_STARTTIME]{14/02/2006 17:37:35}

173735.59  13 rv    lg add [$RV_DEVICEID]{13}

173735.60  13 rv    lg add [$RV_CIDNAME]{}

173735.61  13 rv    ns add [PathApp]{C:\Program Files\VoiceGuide\}

173735.61  13 rv    lg add [$RV_CIDNUMBER]{10}

173735.62  13 rv    lg add [$RV_DNIS]{60}

173735.63  13 rv    lg add [DNIS]{60}

173735.64  13 timer clear

173735.65  13 state [Welcome] Playing

173735.66  13 state [Welcome] Playing (IpWelcome.wav)

173735.67  13 play set playid=857261

173735.68  13 PlaySoundStart ok [C:\Program Files\VoiceGuide\Scripts\Internet Portal\IpWelcome.wav]

173735.69  13 timer clear

173735.70  13 RunModule PLAY end

173735.88  0 dial  start any summary:|13:hc>0|14:idx=0|15:idx=0|16:idx=0|17:idx=0|18:idx=0|19:idx=0|20:idx=0|

173740.89  13 play  end current play (playid=857261)

173740.90  13 ScriptEventCode 8001 iLineState=1100

173740.91  13 LsPlayMsg EV_PLAY_FINISHED

173740.92  13 timer set 10  EV_TIMEOUT_HANGUP

173740.93  13 timer set 0  EV_TIMEOUT_GOTOMODULE

173740.94  13 ScriptEventCode 9002 iLineState=1101

173740.94  13 LsPlayMsgFinished EV_TIMEOUT_GOTOMODULE

173740.95  13 rv    lg add [Welcome]{timeout}

173740.96  13 timer clear

173740.97  13 state [GetMarketLevels] Running VB Script...

173740.98  13 rv    replace start (strlen>500)

173740.99  13 rv    ns [PathSysVoice]{C:\Program Files\VoiceGuide\system\voice\}[PathApp]{C:\Program Files\VoiceGuide\}[PathDataVm]{C:\Program Files\VoiceGuide\data\}[PathVgSys]{C:\Program Files\VoiceGuide\system\}[scriptsPath]{C:\Program Files\VoiceGuide\Scripts\Internet Portal\}[scriptPath]{C:\Program Files\VoiceGuide\Scripts\Internet Portal}[$RV_STARTTIME]{14/02/2006 17:37:35}[$RV_DEVICEID]{13}[$RV_CIDNAME]{}[PathApp]{C:\Program Files\VoiceGuide\}[$RV_CIDNUMBER]{10}[$RV_DNIS]{60}[DNIS]{60}[Welcome]{timeout}

173740.00  13 eng  run vbs [wscript "C:\Program Files\VoiceGuide\temp\vbs_13_1_0214173740.vbs" //I //T:30] copy of script in: vbs_13_1_0214173740.vbs

173741.05  13 Run Script waiting. iRunWait=1 (shellid=1340, process=1084)

173741.05  13 state [GetMarketLevels] Playing (IpOnHold.wav)

173741.06  13 play set playid=862648

173741.09  13 PlaySoundStart ok [C:\Program Files\VoiceGuide\Scripts\Internet Portal\IpOnHold.wav]

173741.10  13 timer clear

173741.11  13 timer set 1  EV_TIMEOUT_CHECKONSTATE

173742.04  13 timer fired EV_TIMEOUT_CHECKONSTATE

173742.04  13 ScriptEventCode 9007 iLineState=1501

173742.05  13      LsRunWaitTillFinished EV_TIMEOUT_CHECKONSTATE

173742.06  13 task still running (shellid=1340, process=1084)

173742.06  13 timer set 1  EV_TIMEOUT_CHECKONSTATE

173743.07  13 timer fired EV_TIMEOUT_CHECKONSTATE

173743.07  13 ScriptEventCode 9007 iLineState=1501

173743.08  13      LsRunWaitTillFinished EV_TIMEOUT_CHECKONSTATE

173743.08  13 task still running (shellid=1340, process=1084)

173743.09  13 timer set 1  EV_TIMEOUT_CHECKONSTATE

173744.09  13 timer fired EV_TIMEOUT_CHECKONSTATE

173744.10  13 ScriptEventCode 9007 iLineState=1501

173744.10  13      LsRunWaitTillFinished EV_TIMEOUT_CHECKONSTATE

173744.11  13 task still running (shellid=1340, process=1084)

173744.11  13 timer set 1  EV_TIMEOUT_CHECKONSTATE

173745.13  13 timer fired EV_TIMEOUT_CHECKONSTATE

173745.13  13 ScriptEventCode 9007 iLineState=1501

173745.13  13      LsRunWaitTillFinished EV_TIMEOUT_CHECKONSTATE

173745.14  13 task still running (shellid=1340, process=1084)

173745.14  13 timer set 1  EV_TIMEOUT_CHECKONSTATE

173746.16  13 timer fired EV_TIMEOUT_CHECKONSTATE

173746.16  13 ScriptEventCode 9007 iLineState=1501

173746.16  13      LsRunWaitTillFinished EV_TIMEOUT_CHECKONSTATE

173746.18  13 task completed (shellid=1340, process=1084) vgm=18, iRunWait=1, iRunWait_ExeResult_NextVgm=0

173746.19  13 No information returned from program to VG (no VGRUNRESULT_13.TXT or SHLRESLT.TXT)

173746.20  13 task completed LsRunWaitChooseNext iNextVgm=15

173746.21  13 timer clear

173746.21  13 state [Play Error] Playing

173746.23  13 state [Play Error] Playing (IpError.wav)

173746.23  13 play set playid=867826

173746.26  13 PlaySoundStart ok [C:\Program Files\VoiceGuide\Scripts\Internet Portal\IpError.wav]

I suspect that the string processing is being interupted part way thru a crucial part of the parsing process and may need checking. As stated problem occurs occaisionally when several calls being made to system simulateneously, but can occur on a single line call.

 

(PS: Running Eicon Hardware, ComISDN and WinXP sp1.1a)

Share this post


Link to post

This is an unusual problem on one which we have not seen before.

Please update your system with attached .exe - this one should print the before and after RV replacement results in the log file.

 

Please reproduce the problem and paste trace here again (as a .ZIPed attachment)

 

 

Also, do not use $RV_DEVICEID

 

Use $RV_LINEID

 

$RV_DEVICEID use in scripts is not supported officially in v5.x and may not always give you the identification number of the line.

 

I have tried rewriting the line, calling it as a function, eg: x=vg.Run_ResultReturn (...) and ranaming the variables, but still the problem persists. Allocating the RV to a string and putting that in the Run_ResultReturn line still suffers from the problem.

can you post the resulting .VBS if that approach is used. We'd like to see where the substitution error is occurring then.

VgMulti_5.2.5030.zip

Share this post


Link to post

I will try this straight away and get back to you, but just a quick couple of thoughts:

 

1. $RV_DEVICEID IS YOUR CODE - not mine - its the standard Internet Portal demo script !!!

2. I tried $RV_LINEID too. Similar problem.

3. It may be that ComISDN or the Eicon driver is returning some unexpected information in the status strings. I will run some more tests and send you the logs (zipped).

 

Thanks !

Share this post


Link to post

Okay, copied over v5.2.5030 and run the Internet Portal script, with $RV_LineID and Bingo, first call, got the failure...

 

I made two calls in to the system, the first one errored just before or just as the second call was getting established.

 

In the attached ZIP:

1. The Internet Portal Script

2. The three log files (run end-2end).

3. The VBS files produced by running the script.

4. A sceen grab of the VBS error message.

 

Clearly visible in the debug trace (092257.17) is the substitution error, following the first run of the VBS module. Also the second, successful, run of the same module. Also at the foot of the log, you will see about some of 100+ test calls I made yesterday, being deleted from the temp directory, where approximately 1 in 7 of the calls failed due to this problem.

 

The Internet Portal Script has been slightly modified by commenting out the debug msgbox you guys have left in, (which stops the demo running) and changing the problem line to be called as a function, using $RV_LineID. Modifications were done directly in the VG script designer app.

log.zip

Share this post


Link to post

Attached is another set of logs - results of over 9 calls, and I think I've noticed something... I said it was about 1 in 7 seven calls, but it seems that its every call on line 1 (the first line in the set - device 13 - unlucky for some!) - is this a clue?

 

Also, this installation has been redone several times, firstly as Dialogic/Ananlog and then Standard Modem, back to Dialogic, back to Standard Modem, so there might be the possibility that the tapiwrap.ocx or some other component is out of step with the system. Is there an easy way to verify the exact version installed (the dialogic tapiwrap I gather is different, but it has the same version numbers?)

 

I try to make sure that all "shared components" installed in the system32 directory are removed on deinstallation, but I noticed that i sometimes do not get asked to specifically delete some items. Is it possible that the wrong tapiwrap would run the standard modem system without error (except this error)?

 

I will try a reinstall next from scratch, and ensure that all components are removed. (A list of all items you install would be helpful!)

 

Thanks!

log.zip

Share this post


Link to post

IT SURE DOES!!

 

After running 120+ test calls - not one failure. Thank you very much for fixing this so promptly.

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
×