I was trying to use VC.SetEventTimmer to trigger an event to run a command that had a Scrape action in it and it worked a couple times and then it would start to trigger the event again and again causing the command to repeated until I would force close VC,
after some testing I found that it happens if the first Scrape action fails, I know this seems confusing partially because its so bizarre and because its hard to explain
so I created a group that you can run to see what I mean
in the second command there are two scrape actions the first one I set to a "fake" IP address so it would fail
the second IP is for my beam (you can change that IP address to your beam IP so they don't fail)
I also added an on screen counter to show how many times it repeats
I also added in VC.StopMacro so it should stop repeating after 3 times (it can still take VC about a minute to Respond after "3" is show on the OSD as it still needs to finish executing the command)
just execute the command called "Execute ME" this will set an event timer for 10 seconds to trigger the second command
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.1.6-->
<commandGroup open="True" name="Scrape Fail causes Repeat" enabled="True" prefix="" priority="0" requiredProcess="" description="">
<command id="443" name="Execute ME" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>VC.SetEventTimer</cmdType>
<params>
<param>10S</param>
<param>Scrape</param>
<param>1</param>
<param>10</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.SetVar</cmdType>
<params>
<param>ScrapeRe</param>
<param>0</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
</command>
<command id="1361" name="Scrape" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<if ifBlockDisabled="False" ifNot="False">
<ifType>(A)<(B)</ifType>
<ifParams>2&&{Var.ScrapeRe}</ifParams>
<then>
<action>
<cmdType>VC.StopMacro</cmdType>
<params />
<cmdRepeat>1</cmdRepeat>
</action>
</then>
<else />
</if>
<action>
<cmdType>PY.ExecString</cmdType>
<params>
<param>result={Var.ScrapeRe}+1</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.SetVar</cmdType>
<params>
<param>ScrapeRe</param>
<param>{LastResult}</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>OSD.ShowText</cmdType>
<params>
<param>{Var.ScrapeRe}</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Scrape</cmdType>
<params>
<param>http://192.168.1.202/sendIR?p=NEC&code=0x20df40bf</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Scrape</cmdType>
<params>
<param>http://192.168.1.201/sendIR?p=NEC&code=0x20df40bf</param>
</params>
<cmdRepeat>{2}</cmdRepeat>
</action>
<event>Scrape</event>
</command>
</commandGroup>
running 2.2.1.6
Edit: If you want my log file let me know and I will PM it to you