invoso.com Report post Posted 11/12/2012 01:56 PM typicallly I used 141300.250 6 47 16 d added set no stopping_ACD_Input | 1 then ------------------------------ set vg = CreateObject("vgServices.CommandLink") vg.Play_Start $RV_LINEID, "C:\Program Files\VoiceGuide\Scripts\manager\komunikaty\ring_multiple.wav" set vg = Nothing and after upgrading VG Moh not working. 141300.250 6 47 16 FindNextVgmTitleInPathList: next module title is=[set no stopping_ACD] 141300.250 6 47 16 matching path found (Boolean True) 141300.250 6 47 16 t timer clear (force=False) 141300.250 6 47 16 RunModule start Evaluate, [set no stopping_ACD], iModuleIdx=202, previous: vgm=214, vgs=2:2 141300.250 6 47 16 state [set no stopping_ACD] Evaluate [1] 141300.250 6 47 16 eval [1] 141300.250 6 47 16 eval InvokeMember Eval returned 141300.250 6 47 16 d added set no stopping_ACD_Input | 1 141300.250 6 47 16 d added set no stopping_ACD | 1 141300.250 6 47 16 creating new (non-global) rv : DoNotStopMOH 141300.250 6 47 16 d added DoNotStopMOH | 1 141300.250 6 47 16 Eval Expr result:[1] stored in RV[DoNotStopMOH] 141300.250 6 47 16 bDoNotStopMoh = true 141300.250 6 47 16 path {1} not found 141300.250 6 47 16 matching path not found [1], try boolean paths. 141300.250 6 47 16 ex: ScriptIo.VGMTYPE_EVALEXPR [1] could not be converted to boolean. Take Success path as string non-empty. 141300.250 6 47 16 FindNextVgmTitleInPathList: next module title is=[MoH RING ACD] 141300.250 6 47 16 matching path found (Boolean True) 141300.250 6 47 16 t timer clear (force=False) 141300.250 6 47 16 RunModule start Run VB Script, [MoH RING ACD], iModuleIdx=203, previous: vgm=202, vgs=2:2 141300.250 6 47 16 t timer set 30 sec : EV_TIMEOUT_HANGUP 141300.250 6 47 16 QueueUserWorkItem scrmod_RunVbs.RunModule call 141300.250 15 47 16 state [MoH RING ACD] type: Script_VBScript, iRunWait=0 141300.250 15 47 16 rv replace start ------------------------------ set vg = CreateObject("vgServices.CommandLink") vg.Play_Start $RV_LINEID, "C:\Program Files\VoiceGuide\Scripts\manager\komunikaty\ring_multiple.wav" set vg = Nothing ------------------------------ 141300.250 15 47 16 rv replace end [set vg = CreateObject("vgServices.CommandLink") vg.Play_Start 47, "C:\Program Files\VoiceGuide\Scripts\manager\komunikaty\ring_multiple.wav" set vg = Nothing] 141300.250 15 47 16 script will be ran from file: C:\Program Files\VoiceGuide\temp\vbs_47_1.vbs 141300.250 15 47 16 on hold file: C:\Program Files\VoiceGuide723\Scripts\manager\komunikaty\ring_multiple.wav, iModuleIdx=203 141300.250 15 47 16 delete existing: C:\Program Files\VoiceGuide\temp\vbs_47_1.vbs 141300.250 15 47 16 current objVbsOrExeProcess= 141300.250 15 47 16 RunVBScriptFile [wscript][C:\Program Files\VoiceGuide\temp\vbs_47_1.vbs][] timeout=60 (vbsPath=C:\Program Files\VoiceGuide\temp), start (new Process) 141300.250 15 47 16 objVbsOrExeProcess.Start call 141300.265 15 47 16 RunVBScriptFile just started. Handle=45328, Id=5436, StartTime=12-11-12 14:13:00, HasExited=False 141300.265 15 47 16 VBScript started [C:\Program Files\VoiceGuide\temp\vbs_47_1.vbs], ProcessHandle=[45328], VbsOrExeProcess.WorkingSet=[77824] 141300.265 15 47 16 RunModule_Script_AfterScriptStarted start 141300.265 15 47 16 Run Script continuing... 141300.265 15 47 16 FindNextVgmTitleInPathList: next module title is=[calculate_ABSPQ] And next set vg = CreateObject("vgServices.CommandLink") vg.Play_Stop $RV_LINEID set vg = Nothing not working too. Share this post Link to post
SupportTeam Report post Posted 11/12/2012 08:29 PM Please post the VoiceGuide script and the traces (vgEngine and ktTel) capturing the entire call. Please .ZIP up traces before posting. Share this post Link to post
invoso.com Report post Posted 11/12/2012 08:57 PM on demand 20121112.zip Share this post Link to post
SupportTeam Report post Posted 11/13/2012 01:26 AM The "Run VBScript module" [MoH RING ACD] that runs this script: 214221.890 15 8 3 state [MoH RING ACD] type: Script_VBScript, iRunWait=0 214221.890 15 8 3 rv replace start ------------------------------ set vg = CreateObject("vgServices.CommandLink") vg.Play_Start $RV_LINEID, "C:\Program Files\VoiceGuide\Scripts\database\komunikaty\ring_multiple.wav" set vg = Nothing ------------------------------ is not set to wait until it completes. It has been set to move immediately onto next module after starting the execution of VBScript. But the time the VBScript the vg.Play_Start is called the VoiceGuide script is running other modules and playing (and then replaying) other prompts to caller: 214222.015 23 8 3 state [id_lokalizacji] Playing wav (\database2\59806.wav) .. 214226.875 6 8 3 state [id_lokalizacji] Playing wav (\database2\59806.wav) So the other call to play sound file is ignored. You should set the "Run VBScript module" to wait until module's script completes. Module's script completion can be signaled using the Run_ResultReturn API etc. All modules that use the Play_*/Record_*/etc APIs should be set to wait until module completes. If you are running a command that issues a command to Play/Record/etc and the VoiceGuide script itself is moving onto a module that does Play/Record/etc then one of the play commands will be ignored if the $RV[DoNotStopMOH] flag is set. Best practice is to have all the "Run VBScript" modules that do Play/Record/etc to wait until module's script completes before letting the VoiceGuide script move onto the next module. Share this post Link to post
invoso.com Report post Posted 11/13/2012 07:53 AM Problem is with module VBscript MoH RING ACD: set vg = CreateObject("vgServices.CommandLink") vg.Play_Start $RV_LINEID, "C:\Program Files\VoiceGuide\Scripts\database\komunikaty\ring_multiple.wav" set vg = Nothing of course with not wait until it completes option as you suggest in previous topic. Because this module should start play until end or stop. Now VBScript not playing ring_multiple.wav file as it was before update. So, VBscript MoH RING ACD not playing wav file and set vg = CreateObject("vgServices.CommandLink") vg.Play_Stop $RV_LINEID set vg = Nothing and vg.Play_Stop $RV_LINEID do not stop play task. I use VGScript to play MoH prompt in background during other tasks are working or to Hold callers waiting to transfer call. Previous I needed this functionality: http://voiceguide.com/forums/index.php?showtopic=8139&view=&hl=MoH&fromsearch=1 and you find solution. I need use vg.Play_Start $RV_LINEID with MoH until I use vg.Play_Stop $RV_LINEID or transfer call. Before VG update it worked, now not any more. Share this post Link to post
SupportTeam Report post Posted 11/13/2012 08:34 AM This module needs to be set to "Wait until VBScript completes". "Wait until VBScript completes" will not make module wait until the ring_multiple.wav completes playing. "Wait until VBScript completes" will make module wait until the ring_multiple.wav starts playing. All modules that use the Play_*/Record_*/etc APIs should be set to wait until module completes. Share this post Link to post
invoso.com Report post Posted 11/13/2012 11:02 AM OK. I changed option Wait until VB Script completes and VG start to play MoH prompt, stop playing with vg.Play_Stop $RV_LINEID. But next not playing other play files. In attached vgEngine VG play this file 111946.468 6 3 1 FindSoundFile start [\manager2\59803.wav] not play this: 111951.968 21 3 1 FindSoundFile start [\manager2\59806.wav] and this: 112002.843 6 3 1 rv replace end [\manager2\59843.wav] 1113_1108_vgEngine.zip Share this post Link to post
SupportTeam Report post Posted 11/13/2012 12:25 PM If you want to stop playing the the uninterruptable 'message on hold' then you should also clear the $RV[DoNotStopMOH] flag that was previously set. Special use flags like $RV[DoNotStopMOH] should be cleared immediately once the action they are related to is completed. Please have the script do the below in this order: 1. Clear the $RV[DoNotStopMOH] flag (set the $RV[DoNotStopMOH] to 0) 2. Then stop the Play 3. Only then run the modules that play the 59806.wav and other new sound files. If you encounter any problems or have any questions please post the vgEngine and ktTel traces that capture the call. Please do not edit the traces excerpts. Just post the trace excerpt and indicate the line/port and time of call or time of event to look at. Share this post Link to post