Yesterday I needed to capture a Slack message url to OmniFocus while on the road.
While creating a quick speak text + voice to text, I realized the string of actions: “text, speak text, dictate text, do something” get cumbersome when you’re trying to execute multiple voice interaction prompts.
Here’s the original VTT OmniFocus workflow.
- Text: “Action Name:”
- Speak text
- Dictate text
- Text: “Set a due date?”
- Speak text
- Dictate text
- IF
spoken text contains “Y” - Text “When is it due?”
- Speak text
- Dictate text
ELSE
ENDIF - Text “Flag it?”
- Speak text
- Dictate text
- IF
spoken text contains “Y” - Number “1”
ELSE - Number “0”
ENDIF
18.-22 More logic asking if we should set the clipboard to the new OF action URL - New OmniFocus item
Name uses magic var from action name dictate, flagged uses bool magic var from is flagged dictate, due date uses magic var from due date dictated, etc.
So, the Shortcut described above works, but it’s kind of a hassle to replicate the conversation logic each time, especially across multiple Shortcuts.
The Siri Conversation Shortcut I made, download link below, modularizes a bunch of the voice logic. The workflow listed above can get trimmed to about 12 actions.
Perhaps the neatest nerd itch scratched is the ability to output a 1 or 0, in any Shortcut, with just two actions—a text action and a run Shortcut action.
Siri asks the question you specified then outputs a 1 if you speak “yes” (yeah, yup, yep, yay also return 1)
otherwise a 0 is returned, then you can write whatever conditional logic you need using the bool provided.
So that’s fun. How about if Siri would only accept certain voice input phrases? About that;
You can also pass a list of items to this Shortcut, they’ll be read out loud, and you’ll be prompted to say one of the choices. If your voice input doesn’t match on of the items, it’ll loop to read the list again and wait for your input. Then, once you’ve spoken a valid option, it’ll get passed as the output.
Want to just ask a question and input voice text? Same deal, only this time include a “” on the second line. Siri will read your question then wait for whatever you say and pass that along.
I can see this being a nice little enhancement to all sorts of Shortcuts. Like, some mornings I don’t need to hear the weather, so “Want to hear the weather?” “No thanks” and you can easily bypass your weather report.
https://www.icloud.com/shortcuts/d34a92cc204d43adac95c61120ccb2fc
What do you think? You like?
Say hello @pikemilsner