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
Multiroom Audio Compared | Sonos Airfoil MultiRoom Amp
Introduction
There are several ways to automate your music at home. There are several purposes for this:
- You wake up in the morning and want the local radio station to play while you’re getting ready.
- You want weather news/radio while getting dressed.
- You want new spotify workout music play when you enter the gym at 730pm
- You want the music to lower volume (or turn off) when your wife enters the room.
- You want a scene for a dance party to play all over your house.
- You only want your living room and basement playing music.
Your Options
There are many options to do it. They are:
- Sonos
- Control4, Crestron
- Airfoil
- Moxivo
- Multi-room Receiver with amps built-in
- XBMC and Airplay
- Bluetooth Receivers to Speakers
Each provide unique advantages and ease of use along with different levels of quality. It goes without saying that using WiFi to sync audio around your house is pretty much a bad idea. WiFi can be spotty at times, routers can get slow and things aren’t reliable. Always aim for a wired solution.
Option 1: Sonos with their speakers
Cost
For comparison of all the products we will use an example of 6 rooms.
You need: 1 Sonos Bridge and 6 ZonePlayers like the Play:1 (At least) I would have at least 1-3 speaker per room. The Sonos system also lets you add more than one in a room for stereo sound.
Calculation: (219 (speakers) X6 +50 (bridge))=$1364 (depending on source)
Advantages:
- Sonos is the easy way. Plug them in and download the app and begin.
- You can easily integrate Sonos with most automation systems very easily.
- They have several options for integrating your system with the major hubs. There are plugins available.
- This one works well with Tasker: Macronos for Sonos
- Easy to plug into Connect, Play:5 and Connect AMP to listen to another source
Disadvantages
- A lot more expensive than Airfoil, Moxivo and on par with some Multiroom (craigslist) amp solutions
- Can’t be in the wall (not a clean install)
- Not really easy to expand VS using a CPU with airfoil or XMBC to locally play video files to the same speakers
Option 2: Control4 and Crestron
These solutions are by far the most expensive and are very hard to really compare to these others. A 6 room system will definitely cost you $XXXX.00. You will not have to think about the technical aspects of it. You get get a Rep to come in and do it for you.
Advantages
- It gets done for you.
- The sound is great and integrated perfectly the way YOU want it right from the install.
- If you have a problem you call someone in to fix it (also a disadvantage).
Disadvantages
- The huge downside to this is integration with other products you want to add to your system you can’t unless you get one of their reps to do it.
- The three people I know with these systems are extremely happy with the results but they all don’t want to call a rep back in for extra work. This is for the automator with cash.
- From my knowledge there is no GET API to integrate third party products. To me this is a deal breaker but I already thought that by the price.
Airfoil | A great AirPlay app for every platform
What is it?
Airfoil is an app you can install on your PC or Mac and have it transmit any audio source from your PC to any AirPlay or Airfoil Speakers. You can install Airfoil speakers on almost every platform. Therefore you can have an instant multiroom audio setup almost instantly if you have tablets, phones and PC’s already in each room.
Cost?
- This is where it gets tricky. You need a license for your Windows and Macs. Once you purchase those you can download the free airfoil speakers apps and begin.
- Approximately 50-80 dollars in apps/licenses + Your cost in purchasing other tablets, PC’s etc.
Advantages
- Depending on the type of AirPlay device there is latency time that can make or break the audio experience. Using Airfoil and Airfoil Speakers keeps that in check.
- Great support
- Very easy
- Easy to select different sources on the PC (spotify)
- Has an API to create scene based selectors for certain airplay devices
- Cheap
- Can also then send audio TO any speaker easily using an iPhone since they are all airplay speakers.
- If you could hardwire all your PC’s and MAC’s to and use Airfoil Speakers then it could be slick.
Disadvantages
- If you have a busy wifi network and are using wifi only with this you will not be happy
- Different AirPlay speakers have different timing to output and you can hear it
Option 4: Moxivo | MultiRoom Audio through your Phone System
What is it?
It’s a cable to use your regular old school phone jack as an audio network throughout your house. You plug your source into the wall using the RCA or HEADPHONE to rj-45 and then plug in any powered speakers throughout the house anywhere there is a phone plug. Most houses have them in everyroom which makes this a really easy solution.
How would we make this smart?
Logitech computer speakers once plugged and powered on (with the button) in will stay on as long as there is power. The goal would be to power off the speaker that you are not using a AC Z-wave Switch. That way you could easily create scenes which control the rooms just by turning power on and off to each ‘speaker’.
Cost of 6 rooms
- 7 cables (40 bucks)
- CPU (you probably have one that you already control your music with)
- Logitech speakers (30 each on craigslist for decent 2.1 sound)
- Z-Wave AC 6 pack (100)
- Total: $320
Advantages
- Cheap
- Using already there phone system
- Easy to create audio scenes as you just control the power to the speakers in your automation hub
- Use your existing app to control the CPU music
- You could get premium speakers and also double up them for other uses in each room.
Disadvantages
- No automatic control of audio sound level as you have to manually change it by the physical dial in each room. It’s either ON or OFF.
- If there is noise on your phone line network it’s going to come through on your speakers.
- Not digital sound straight to the speakers (digital to analog).
Option 5: Multi-Room Amplifiers with 6 zones and Remote Control of them
Cost
A sample can be found on craigslist to control 6 zones. This one is $800 and then you’ll need to buy speakers. Since you do not need an amplifier you can just get any speakers you want to use and thus the sound will be of much higher quality and also has the potential to be a cleaner finish than say having stereos (with amps everywhere). MonoPrice.com in ceiling speakers can run around $50 each for the pair so you’re looking at $300+800+60(for cable)=$1160.
Advantages
- Potential to have the best sound VS the Sonos, Airfoil and Moxivo
- Cleaner in-wall finish if you choose to go this route
- There are more expensive models but this one is a reasonable solution.
- New builds should go this route
- Can be controlled with an app, or IR tablet
Disadvantages
- More expensive
- Need to run the speaker cable everywhere where you want speakers from the source.
- Not really a retrofit solution.
Option 6: XBMC/KODI with Airplay
XBMC (Or Kodi) is an amazing open sourced media solution. It allows you to share the same media source throughout the home. It also has an Airplay feature so you can turn any XBMC server into a speaker that can be selected.
Cost
The cost is all in the devices that you choose to run XBMC and if they have speakers you’ll need to get some.
- 6 XBMC Amazon FireTV‘s will cost 600. These will get you six locations around your home that you can then run a screen on and have a sound bar to.
Advantages
- Can have one shared server with a shared database to combine your audio and video solution. It will be seamless and it’s what I use for my video.
- Your audio should be synced properly as long as all your devices are wired to a decent router.
- Easy to setup the Airplay solution.
- Can then stream any source form an iOS device to any room. Could also use the video option this way.
- This is my favourite solution since Tasker can be added to android boxes making this very easy to control.
Disadvantages
- Might be expensive if you have to purchase 6 screens, 6 sound bars along with 6 android boxes
Option 7: Bluetooth Speakers
This option is very flexible and can retrofit any situation into a multiroom setup. The basics are as follows:
- Add Bluetooth receivers or Bluetooth speakers around where you want to have music
- Pair them to your audio source (will need Bluetooth) and then select where you want the music to play
Advantages
- Cheap
- Retrofit any situation
- Moving around speakers is easy
- Doesn’t need a complicated API
- Could easily integrate with Tasker to turn the bluetooth connection on at any moment
- You could use a Bluetooth receiver and then plug in a more expensive audio system.
Disadvantages
- Most Bluetooth speakers don’t usually have good bass
- Could not sync properly with all your rooms. You are at the mercy of the devices Bluetooth transfer rate and timing.
Conclusion
There are a lot of options and I probably missed a few but those are the majority of the decently priced options. There are always more expensive options with the multiroom receivers but based on the above my current solution is a combination of XBMC and AirFoil. I need the ability to display any video in any room and having a screen in each room with a media center there is easy to interact with using all the apps Android has. Airfoil gives me the ability to use iTunes as my server app and I can use AirFoil and scripts to select speakers when I walk into rooms (using iBeacons). I have a friend who uses the amp route and his sounds far better than my current Airfoil setup. It comes down to what your situation is and thinking about what you want to do with it. If you are looking to extend into one or two extra rooms you might want to go with the bluetooth option and see if that works for you.
Either way, let us know what you think in our forums below and if you think there is a better solution. Don’t forget to signup for our newsletter and Facebook page to get the latest updates and deals.
[bbp-single-topic id=3920]- Published in Audio