Siri Commands to Eventghost with the Apple Watch
The Apple watch is an amazing piece of hardware but out of the box with no modifications it and limited technology knowledge, it’s way overpriced. Most users use it as a notification device. Let’s talk about:
The best parts about it:
- It’s semi waterproof (they don’t just want people to swim in chlorine and the sea with it)
- it has great apps already (with the exception of facebook)
- Definitely lasts a day of heavy use (I’ve confirmed this)
- The screen is beautiful
- The microphone is great. It’s not perfect as it does make more mistakes than my iPhone.
The downsides are:
- The price
- The battery doesn’t come close to the pebble
- There are some quirks that I want to see fixed which I will list at the bottom in case any Apple employees are looking at this article.
How to connect the Apple Watch Siri to EventGhost or Tasker to control everything
Siri on your watch has tremendous power to control your life. Once you can get your text from the watch to your PC you can do just about anything. Until Assistant+ for the iPhone the ability to control what happened with Siri was our of our control. Since Apple has made the Apple Watch Siri separate from the iPhone Siri we can’t take advantage of the tweak. Until now…
Warning
This tutorial isn’t for everyone as it’s complex, requires a ton of patience and some determination. That said, once you do it you don’t need an Amazon Echo, tablets all over the house talking to you, etc. All of it can be controlled for your watch.
Why should you do it?
The Apple Watch Siri restricts you from sending email, querying websites, and requires the dreaded ‘handoff’. I want my watch to do everything while leaving my phone in my pocket. I currently control my iTunes Windows PC by searching with my voice for music but you can literally DO ANYTHING. You could combine it with scraping software like kimono labs, vera for home automation etc. You could get an image from your webcams and email it to yourself (the Watch Mail app lets you view images).
Two Versions of this solution:
A. For those Canadians with no international texting:
- A separate jailbroken iCloud iOS device running iOS 7-8 (I’m using an iPad)
- A gmail account (free)
- Zapier (free)
- Slight php knowledge (priceless) with access to a server
- An always on (or when you want the commands) home PC with EventGhost and Autoremote installed. You could also send messages to an Android device with Tasker and Autoremote installed instead.
*For more detailed instructions see below
B. If you have a US Texting Plan
- Setup a new user called Jarvis and with the phone number of IFTTT when you setup the SMS channel
- Setup ifttt.com with the SMS trigger and then to a Maker Web request which will be your EventGhost URL with AutoRemote installed. This is a way cleaner solution.
* Basic Canadian Number Workaround Outline
- Create a new contact in your contacts called whatever. I used ‘Jarvis‘. This mobile number is your own.
- Install iForward onto your always on iCloud device (I used an iPad) to forward messages to your gmail account.
- Go to your Zapier account and set up a new zap from an Zapier email to a WebHook (Post). The webhook will go to a webserver that will parse the command for the actual Siri command and then forward the resulting command to your Android device or Eventghost PC.
- Your webserver will look something like:[reveal title=”Webserver Script PHP To Parse The Command” open=”false,true” color=”grey-lite”]<?
//get message
function get_string_between($string, $start, $end){
$string = ” “.$string;
$ini = strpos($string,$start);
if ($ini == 0) return “”;
$ini += strlen($start);
$len = strpos($string,$end,$ini) – $ini;
return substr($string,$ini,$len);
}
$message= $_POST[‘message’];
$fullstring = $message;
$fullstring= str_replace(array(“\r\n”, “\r”, “\n”), “”, $fullstring);
$parsed = get_string_between($fullstring, “5555555555): “, ” New SMS at “);
$parsed = urldecode((string)$parsed);
switch ($parsed){
case $parsed==”Play music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Play’ ) ;
break;
case $parsed==”Play some music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Play’ ) ;
break;
case $parsed==”Pause music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Play’ ) ;
break;
case $parsed==”Pause the music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Play’ ) ;
break;
case $parsed==”Next song”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Next’) ;
break;
case $parsed==”Play next song”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Next’) ;
break;
case $parsed==”Play next song”:
header( ‘Location: http://myurl/touchcontrol/json/executebutton?device=Macros&button=Next’) ;
break;
case $parsed==”Play slideshow”:
header( ‘Location: http://myurl/touchcontrol/json/executebutton?device=Macros&button=CPUs%20slideshow’) ;
break;
case $parsed==”Start slideshow”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=CPUs%20slideshow’ ) ;
break;
case $parsed==”Start a slideshow”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=CPUs%20slideshow’ ) ;
break;
case $parsed==”Play dance music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=dance’) ;
break;
case $parsed== “Play kids music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Kids%20Music’ ) ;
break;
case $parsed==”Play radio”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=radio’ ) ;
break;
case $parsed==”Play the radio”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=radio’ ) ;
break;
case $parsed==”Turn on sound bar”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=powersoundbar’ ) ;
break;
case $parsed==”Turn on the sound bar”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=powersoundbar’ ) ;
break;
case $parsed==”Turn on the TV”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=powertv’ ) ;
break;
case $parsed==”Turn on TV”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=powertv’ ) ;
break;
case $parsed==”Turn on the amp”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Power%20Amp’ ) ;
break;
case $parsed==”Turn on amp”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=Power%20Amp’ ) ;
break;
case $parsed==”Play top 40″:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=uktop40’ ) ;
break;
case $parsed==”Play the top 40″:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=uktop40’ ) ;
break;
case $parsed==”Play the top 40 music”:
header( ‘Location: http://myurl:33/touchcontrol/json/executebutton?device=Macros&button=uktop40’ ) ;
break;
default:
header( ‘Location: http://myurl:33/?message=’.$parsed ) ;
break;
}?>[/reveal] - Setup the Gmail account with a custom filter to forward that message to your new Zapier email account trigger (you’ll need to setup a new forwarder email address). I set it up to delete all the other “New Incoming SMS’ Message to the trash. That way you only keep the commands said from Siri, but I also don’t want to see them so I set them to ‘archive it’ in the filter.
For those of you that can do this already without further instruction, get to it. Otherwise, follow AutomationDude.com on Facebook and I’ll give you more instructions with the code I used.
- Published in Apple Watch, Siri
Connect iOS and Android Together for Home Automation
What is this?
Android is a lot easier when doing home automation tasks and this appears to be the best way to link your devices together using a little trick.
Software
AutoRemote, Now Now, Google Search, Tasker, Activator, GooGiri
Hardware
iOS 7 with Jailbreak and an Android with AutoRemote and Tasker installed.
Steps
- Setup GooGiri, NowNow and Activator and Install Google Search on your iOS device. Below is a brief video on how Googiri works.
- Add a command to send all said ‘text’ to your server such as AutoRemote on a Tasker Android Device.
You can see above that I have setup my webserver address to send the text to my server. This server is the URL to the custom link of my AutoRemote URL. This could also go to an EventGhost PC url if you want to do so.
- On your Tasker device you’ll need to setup possible said commands but you should receive these commands from your GooGiri setup
- Begin starting to create interesting recipes to control every aspect of your home using your iOS device.
What I use it for
- I search my XBMC tv shows and movies to play any file using my iOS device
- I launch an AutoIt script to search for iTunes or Grooveshark music
- I can turn my TV on and do all my regular home automation tasks using my voice and holding the home button.
Why should you use this?
This is far more powerful and useful than HomeKit as it has very limited integration and you can’t interact with the web. You could also create commands to search your computer to send files, browse websites and spit back useful data. You could also integrate this with Acute to have a complete hands free experience. Let me know how you use it in our forums.
- Published in Activator, Apple iPhone, Recipe
Recipe: Turn LED Strip Red Before an Appointment
Software Used
Zapier, AutoRemote, Tasker, Smart Remote(app)
Hardware Required
IR android device, LED Strips
Steps
- Begin with creating a new Zapier task that has:
Trigger: Google Calendar and Event Start
Action: AutoRemote and New Message - Under #4 Only trigger an event start from Google Calendar when:Time before: 45 minutes
- #5 Enter the text that you will create a new filter for in your Android IR device to launch the task.Ie. turnonleds
- On your Android device open Tasker and create a new ‘profile’ ‘state’ ‘plugin’ ‘AutoRemote’
- Edit with the command text you picked
- in the Task you would add the ‘plugin’ for Smart Remote and pick your action.
- In your Task Edit wait a few minutes then turn them on
All Done!! Now every time you have a new appointment you will be notified through LEDs!
- Published in AutoRemote, Recipe, Tasker, Zapier
Top 10 Best Automation Apps for Android
AutoVoice is another important app that you can’t live without if you want to get into Home Automation. It allows for custom commands and actions all through your voice. It also lets you search Google and integrates easily with Tasker. That’s why the logo lookos so much like Tasker because all these “Auto” apps are plugins for Tasker.
Most of these automation apps are free with a paid option to open up more features. All of these apps integrate with the ‘master’ one (Tasker). They either integrate with them through ‘intents’ or through the ‘state’ and ‘plugin’ profile section in Tasker.
Retune is an app which allows you to control your iTunes PC. I personally use it on my home screen as a widget for easy access when I walk by it loads up the home screen I use to control it. There are a few features I would add to it but it does do a good job for what it does.
Xposed Framework Installer and Bridge help your device reach it’s full potential. This has a lot of features that you are looking for in a true open source product. Some of the features include long clicking the home button and assinging it to a Tasker task. Maybe you want to triple click the headphones button to launch your RunKeeper app. There are a lot of possibilities.
Movement Detector will let you change your phones settings or launch Tasker tasks based on how the device is moving. It’s a very useful task for as a ‘confirmation’ type profile. I would use it more to let my device know im in the car or I’m walking fast (I’m usually going somewhere with directions). Running may open the running app.
Motion detector is an app that allows you to turn your android into a tasker acting motion detector. It can turn the screen on as you and take you to a custom ‘scene’; It could also turn it on to your screen saving app which shows your latest photos of the family from a rss feed made from ‘Yahoo Pipes’. There really are many opportunities.