Charmed Quark Systems, Ltd. - Support Forums and Community

Full Version: Voice-activated HA via tasker
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8
Saw this video making the rounds on Google Plus about using tasker & voice-recognition. Will look into it myself later, since I already use tasker this shouldn't be too hard.
Holy crap did AutoVoice make this simple. I used this simple how-to guide. Took me all of a few minutes to set up my first voice-recognized command. Given that I already had the web server configured for inbound requests as per this guide, all I had to do was add another CQC inbound trigger for each command. So far its only "Closet Light On" and "Closet Light Off". Pretty simple to add new ones though.
That's awesome, I gotta get me a better android tablet... Although with the hardware buttons on the gTablet I could probably program one of those to use the voice without having to leave the CQC interface. Just wish I had more memory in that thing....

I do wish too that we could convince Dean to dig into the Kinect SDK. I think he would go crazy with it, image all the possibilities, voice recognition, gesture control, cameras, user recognition. Maybe once he is done classifying stuff... Smile
Here's the latest iteration of the use of AutoVoice...

Android Home Automation Demo Voice + NFC

Combines Tasker, AutoVoice and NFC tags.

zWave lock in action also included :-)

-Ben
I used a few different words in sequence to deal with arming & disarming security. Problem is, I can't remember the damn words 80% of the time.

Is it "disarm vic security", "disarm security vic", "vic disarm security"?

vivek isn't recognized, so I need to use a nickname. And i'm not going back to what I got called in highschool. (deadwood. Don't ask.)
IVB Wrote:I used a few different words in sequence to deal with arming & disarming security. Problem is, I can't remember the damn words 80% of the time.

Is it "disarm vic security", "disarm security vic", "vic disarm security"?

vivek isn't recognized, so I need to use a nickname. And i'm not going back to what I got called in highschool. (deadwood. Don't ask.)

Vivek,

Are you by choice wanting to use multiple words to arm/disarm security or is that just how you are thinking about it? In other words, are you specifically wanting to look for the 3 words in order to trigger the event or is that just what you chose?

-Ben
yes, doing it for security purposes. It triggers a URL which is visible from the outside via the CQC web server, so I figure the odds of someone knowing my IP, the right port, and the right sequence of words is nil.
IVB Wrote:yes, doing it for security purposes. It triggers a URL which is visible from the outside via the CQC web server, so I figure the odds of someone knowing my IP, the right port, and the right sequence of words is nil.

So at the point you are issuing the command are you on cellular or your home wifi network? I'm avoiding the security issue by only routing commands to CQC on the internal network. Eventually I may set up a SSH command shell, or something more secure but until I get it working to the level I have a vision of I'm going to avoid those complexities.

You might also consider the following:

1st profile
setting your initial trigger command to vic (the one you want to use to trigger CQC)
set the Command ID to vic

2nd profile
set your trigger command to "disarm security" or whatever (could be any of several different command variations using regex setting)
set Last Command ID to vic
trigger your alarm disarm

This way regardless of where you put "vic" it will process properly as it will pick up vic, and then process with out the vic for the remaining command text. Much more user friendly (and high WAF) though perhaps not quite as secure.

The thing to consider is that even with having a precise command sequence if the bad guy wants in they'll get in, so why make it hard to use for yourself?

-Ben
Its over 3G. I'll probably simplify it soon, probably strip out the complexities, this was more to begin the thinking.
So, since I was digging into that stuff for other reasons today, and also saw some other folks talking about using Tasker with CQC via HTTP GET, I figured I'd take a couple hours and make it easier.

So I did an HTTP based trigger driver. I basically copied the existing generic listening trigger driver, created a new driver, and updated it to accept HTTP queries instead of raw strings. So you no longer have to use a web server CML macro that writes to a field to trigger an event. You can just directly train CQC to react to the GET commands. If you send something like this:

http://myhost/Test?1=value1&2=value2

The trainable part will be /Test, and the query parameters will be passed as the 2nd parameter to the action. Basically, what it does is set a fixed # character as the separator character (like how you can use a separator on other trigger drivers), then it rewrites the above as:

/Test#value1 value2

and queues that up as the command to invoke. So of course /Test is used to look up a trained action, and it invokes that action. The first action parameter is the key (/Test) and the second is the parameter values.

Be sure not to use a # character in any parameters (even if it's encoded since it will be decoded when the driver gets it.)

In actual fact you will always indicate a port, since you wouldn't want this driver listening on port 80. When you install the driver you indicate a port for it to listen on. If you indicate 9999, your URL would be:

http://myhost:9999/Test?1=value1&2=value2

You train it in the usual way, using the same interface as IR receivers. Just send the URL a few times to let it see that it's getting a good signal. Once it's received the string a few times successfully, it'll accept it as the new action key.

This will be in 4.3.914 if anyone wants to use it.
Pages: 1 2 3 4 5 6 7 8