Advanced Tasker: User creates automatic voice based cookbook in Tasker
Disclaimer: Advanced Tasker is a new series of Tasker articles that go beyond the beginner’s guide, and that are aimed at those who have full control over everything covered in the guide. In this article series, step by step instructions will not be provided, there won’t be any downloadable files, and questions that belong in the beginner’s guide will not be answered. The aim of these articles is to discuss ideas that can be implemented in many different ways, in many different projects- and that requires the ability to create things from scratch, not by following step by step guides.
Processing data in Tasker can be used for a lot of things. After all, most of the apps we use and love on our devices deal with various ways of pushing text around, be it an ebook reader, email client, social media service, or a shopping list. Coming up with new ideas for projects can be hard, but sometimes you end up with something that is such an obviously useful thing to have. That’s exactly what one of our commenters, “Mike,” did when he created an interactive voice based cookbook using Tasker, and shared it with us in the comments to another article.
The system is designed to provide a fully hands-free approach to cookbooks. With a user-created recipe selected, Tasker will read sections of the recipe using Text To Speech. It will then wait a predefined amount of time to let the actual cook follow the instructions, and then ask if it should continue, stop, or repeat. Each recipe is created using text files formatted in a specific way, and the time to wait between each section is naturally decided by the user. This both eliminates the need to handle a mobile device while cooking, and the need to use timers.
Everything you need to build your own version of this is mentioned in our beginner’s guide to Tasker. Mike’s version starts by having a index text file that gets read into a scene menu, with the file paths to the actual recipes tied to the recipe titles. That way you start off by having an actual menu to select recipes. Each recipe file is formatted in a way that makes it easy to split out each section and the duration of it using standard variable handling actions. You can then use a For loop to have a dynamic way to handle each section, going through the motion of splitting and reading information, waiting, and asking to proceed for each array element you get from the initial split into sections.
There is also a lot of potential for adding more features to this. Mike is already working on a way to pause and resume the recipe, as well as a way to integrate interactive elements within each section. An example of the latter, to use the one Mike posted, is to have the system ask to set an actual timer for 60 minutes if a mention of that is encountered in the recipe. Just to list some potential features I can think of myself for this, you could have smartwatch-integration (if you have one of those), a shopping list system that would let you view a list of ingredients for a recipe in a menu you could cross off (without affecting the actual recipe of course), potentially use a Bluetooth speaker with microphone and leave the device in another room (Tasker’s Bluetooth features are a bit sketchy at the moment), or even have images of each step automatically show on the screen- which would work great on a tablet.
There’s a lot of possibilities here, and it’s an awesome idea to begin with. I rarely cook anything that requires a recipe myself, but I can see how this would come in handy, and even be the device-defining feature for some. Best of all, it uses relatively simple methods to achieve the goal, it just uses them in clever ways. Great job Mike!