[Nexus 7 (2013) Q&A] gijosh28:
Hi,

I am having some problems with Tasker with autovoice.

Equipment:

I am using a Nexus 7 2013 wifi edition (Flo). Stock Rom v4.3 rooted. Plugged in permanently, so power consumption is a non-issue.

Intent:

I would like to build a project that wakes on the voice command "Charlotte," and then listens for an instruction like "What does your name mean?" Upon hearing the instruction it should have a response like, "my name means." There are a few approaches to this, and I have attempted them with different successes and failures.

The simplest was to make a task that continuously listens, and then make the profiles have "Charlotte" for a trigger word. This worked, and it worked well, but you had to train the users how to use the program. There is a natural pause in human speech after you trigger the conversation with a name, which in writing is represented by a comma. i.e. "John, what's your last name?" instead of "John what's your last name?"

Instead of training the humans to talk to the device, I thought it would be better if there was a wake command. This could be accomplished by having a continuously listening task called Awake. Then a profile with the command "Charlotte," with no Last Command ID, set a Command ID to "First", and run a task to prompt the user for a command (Say "How may I help you?) and Autovoice Recognize. Then you have a profile with the command "name mean," contains all, Last Command ID of "First," and sets the Command ID to "Second," that runs a task that says something like, "The name Charlotte means blah blah."

Some of the Problems:

1) I randomly get errors with the Say command, that say something like, "Timeout waiting for TTS to initialize."

2) After The Autovoice Recognize (which uses Google Now) task, the continuously listening Awake task is still running, because the notification icon is still present, but it doesn't hear anything. I have to restart the Awake task.

3) I can set the Notification Title and Text to something, but unless I click the check next to Persistent Notification, I don't get the little notification icon at the top.

4) The TTS seems to have a mind of its own. There are three different voices for English US Female TTS. There is the original tinny crappy one that sounds like the War Games speaker from 1983. There's a new female that sounds pretty realistic, and there is a really new female (like a week old) that requires a 244Mb download, that sounds true-to-life. I originally made this project and some of the tasks she would speak with the War Games voice, and some of the tasks she would speak in the pretty realistic voice. It was pretty random, and usually it would just give the Timeout failure. I thought I had corrupted something, so I formatted everything on the tablet, and flashed back to completely stock as delivered and started the whole Android over from scratch. I made sure to download the latest 244MB female us voice, and began. I made the Project below. Mostly the speech fails with the Timeout waiting for TTS to initialize. If I uncheck Continue Task Immediately, it seems to error less. It does work sometimes though, however, when she says, "What can I do for you?" she says it in the pretty realistic voice. When she says, "The name Charlotte means blah blah." she says it in the true-to-life voice.

Can anyone help with these problems?

Thanks,

Josh

### Tasks:

Name: Awake

1) Autovoice continuous

Persistent Notification: true

Notification Title: Awake

Notification Text: Awake

Continue Task After Error: checked (not entirely sure what this does)

Name: Listen

1) Say

Text: What can I do for you?

Engine Voice: default:default

Stream: Media

2) AutoVoice Recognize

Prompt Text: What can I do for you?

Name: Name

1) Say

Text: The name Charlotte means blah blah.

Engine Voice: default:default

Stream: Media

### Profiles

AutoVoice Recognized

Event Behavior: true

ID: First

Command: "charlotte"

Runs Task: Listen

AutoVoice Recognized

Event Behaviour: true

Command: "name mean"

Last Command ID: First

Runs Task: Name