Hi there,
I'm a relatively new member to the forum, and have been using VC since 1.185.
I have had problems with using an open mic and had the same problem with being unable to mute the mic.
After a bit of lateral thinking, i came up with a command to "disable everything" using multiple
VC.DisableGroup* (note the asterisk) instructions.
I found that the VC.DisableGroup* does not rely on the letter being at the start of the group name, so to disable all groups quickly I hit on the idea of using the vowels as most words have at least one vowel. I had to include X as well for XBMC!
After disabling everything i use VC.EnableGroup* to re-enable a single group called "_Do not disable" (the underscore is just my way to keep it at the top of the list. Keeping this group enabled allows me to say "enable everything" to bring it all back.
Here is my code for disable everything:
<command id="1000" name="Disable everything" enabled="true" alwaysOn="False" confirm="True" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>VC.TriggerEvent</cmdType>
<params>
<param>VC.Standby</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.DisableGroup*</cmdType>
<params>
<param>A</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.DisableGroup*</cmdType>
<params>
<param>E</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.DisableGroup*</cmdType>
<params>
<param>I</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.DisableGroup*</cmdType>
<params>
<param>O</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.DisableGroup*</cmdType>
<params>
<param>U</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.DisableGroup*</cmdType>
<params>
<param>X</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.EnableGroup*</cmdType>
<params>
<param>_Do</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<event>Disable everything</event>
</command>
You may have noted that it also puts Vox into standby. My 'enable everything' command has always on checked and includes VC.On
It's big, messy and far from elegant, but hey, that's me! Also, it works for me and that's what counts.
As you can see, the command is actually triggered by an event, so I guess it can be triggered by TTS.Start?
I won't list my command for "enable everything" because it is much longer than the 'disable everything', as it actually only enables specific groups (I have multiple instances of play, pause, stop etc for XBMC, VLC, MP3 player and DVD), but it's also triggered by an event, so I guess in your case event TTS.End could be used.
I'm sure the experts will correct if I am wrong.
Hope this helps and sorry for the long post.