News:

HOT TIP! In the command editor, you can ctrl-click and drag an item to create a copy of it.

Main Menu

Payload Command on the wiki missing

Started by SteveB69, January 02, 2016, 02:04:44 AM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

SteveB69

Am following the payload creation on the wiki page - http://voxcommando.com/mediawiki/index.php?title=File:Payload_remindme.png
I can figure out the TTS bit but what command do I use for vc to trigger the event after the minutes I say?

Chances are I've searched the forum, searched the wiki & scoured You Tube but I'm just to thick to work it out without help!

PegLegTV

this one will require two commands

1.) uses VC.SetEventTimer to trigger an event in X amount of time (payload 2 = {2})
and then add payload one (the reason for the reminder... walk the dog) as payload one in VC.SetEventTimer
(I also added in TTS.Speak to give a vocal confirmation)

2.) is triggered by the event (Reminder) and I added another TTS.Speak action to let you know your reminder is done and which reminder is it by using {1} (payload 1) that we added as payload 1 in the first command

Reminders
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.1.4-->
<commandGroup open="True" name="Reminders" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="717" name="Remind me to {1} in {2} Minutes" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>TTS.Speak</cmdType>
      <params>
        <param>I set a reminder to {1} for {2} minutes</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <action>
      <cmdType>VC.SetEventTimer</cmdType>
      <params>
        <param>{2}m</param>
        <param>Reminder</param>
        <param>{1}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Remind me to</phrase>
    <payloadList>walk the dog, take out the garbage, let the dog in, take the dog for a walk</payloadList>
    <phrase>in</phrase>
    <payloadRange>1,60</payloadRange>
    <phrase>minutes</phrase>
  </command>
  <command id="730" name="Reminder is done" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>TTS.SpeakSync</cmdType>
      <params>
        <param>your reminder to {1} is done</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <event>Reminder</event>
  </command>
</commandGroup>


in the VC.SetEventTimer action the "m" after {2} is to tell it to set the event timer for minutes (h = hours, m = minutes, s = seconds)

SteveB69

Thanks for that, that works & gives me a future example of how to use payloads.

One thing though, by having a payload list it can limit the reminder options, so I tried deleting the payload list & added a payload dictation regular (in exactly the same place) but then nothing works, VC comes up with command unrecognized.

(I've changed the minutes to seconds just for test purposes)

<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.1.2-->
<command id="717" name="Remind me to {1} in {2} Minutes" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="10" loop="False" loopDelay="0" loopMax="0" description="">
  <action>
    <cmdType>TTS.Speak</cmdType>
    <params>
      <param>I set a reminder to {1} for {2} minutes</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <action>
    <cmdType>VC.SetEventTimer</cmdType>
    <params>
      <param>{2}s</param>
      <param>Reminder</param>
      <param>{1}</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <phrase>Remind me to</phrase>
  <payloadDictation>payloadDictation: Regular</payloadDictation>
  <phrase>in</phrase>
  <payloadRange>1,60</payloadRange>
  <phrase>minutes</phrase>
</command>

***********************************************************************************************
Solved, the above code uses payload dication regular, thought I'd leave the above code which is working with payload dictation regular, of course this method isn't as accurate
Chances are I've searched the forum, searched the wiki & scoured You Tube but I'm just to thick to work it out without help!