Jump to content

Indigo Home Automation Workflow


Recommended Posts

I've created a workflow to control a Indigo Home Automation Server.  The workflow allows the user to control devices, action groups, and variables from Indigo.  Common use case is to turn on an off lights, or control volume levels or A/V properties, etc.  Hope to extend it to include NEST and other thermostat controls.

 

Screenshots and a link to the workflow and source can be found on my blog.  These forums were a big help in figuring this out, so thanks to everyone for the contributions.

 

Mike

Link to comment

Hi Mike,

 

Cool idea. I use Indigo too. I grabbed your workflow and am having trouble getting started with it.

 

When I keyword "indigo" in Alfred, your workflow shows up, but I can't seem to select it. Alfred always jumps to the Indigo app whether I hit return on your workflow. I changed the name of your workflow to "blah" and tried keying in "blah" and the workflow shows up for a second with the "please wait... querying" message, but then dissapears and sets me to default search mode.

 

 

Being a new Alfred user, I'm unsure if this is related to Alfred itself or the workflow (or my inexperience with Alfred).

 

I tried setting the server value manually in "server.txt" to no apparent avail.

 

Any guidance?

Thanks, Mike

Link to comment

Would love to help, thanks for testing it.

 

I think I stupidly posted the workflow with both debugging and my server pre-configured.  You should be able to type: "indigo server http://YOURHOSTNAME:YOURPORT" then hit enter.  Alfred should pop right back up again, with the keyword "indigo" pre-typed, and three options available: Devices, Actions, and Variables.

 

Alternatively, entering your server into the server.txt will also work.

 

You will know the plugin is connecting to your Indigo correctly if you hit Devices, and your devices dynamically load into Alfred.  If you are getting the querying message, make sure you do not have a "/" at the end of your URL (I plan to fix this, but right now it makes the plugin not work, Indigo is finicky about their URLs).

 

If you are still stuck, please send me your log.txt in the workflow directory via private message, or email to mikel@mikelamoureux.net

Link to comment

The latest version of the workflow now contains some checks to see if the scripts have the appropriate permissions to execute.  Also I've improved logging which can be turned on by going to the workflow directory and editing the "indigo_common_functions.sh" script and changing DEBUG=TRUE

Link to comment

Hi,

 

Thanks. I grabbed your latest release and installed it. I got my server defined correctly and DEBUG shows it loading the server var correctly in log.txt.

 

However, I have my Indigo web interface password protected and wondered if that may pose a problem with the workflow? It doesn't seem to be able to pull the Devices list and I suspect that might be the cause. I didn't realize this might be a complicater until I loaded my Indigo site up in a browser and got the login prompt.

 

Mike

Link to comment

I completely forgot that Indigo allows password protecting the web interface, and I didn't realize it also applied to the REST URL's that I'm using.  I'm going to add this to the known issues and I'll consult with the indigo guys on how to authenticate to the REST URL's.  If I do come up with a solution, it will likely involve saving the password, which might be in plain text until I learn to use the Keychain (I'm not a OSX developer).  I personally do not password protect my indigo since I do not expose it to the internet (I use a VPN when I want to control from home).  Sorry for the trouble.

Link to comment

Okay I posted an update.  I tested the login and password and it seems to be working.  Sorry that I was lazy and did not create a command to configure the login and password parameters, I'll do that in a future update.  For now, you will need to install the plugin, configure your server, then manually edit indigo.config to set your login and password.  Be sure to set AUTH_REQUIRED="TRUE".

 

Let me know if you find any issues, I'm sure there will be a few :)

 

link: https://github.com/mlamoure/Alfred-Indigo-Workflow

Link to comment

The authentication works and I'm able to control my Indigo devices with Alfred via your workflow. Very cool!

 

The downside is I can't seem to search within the found devices or just type in the entire command string.

 

I understand getting a sorted list of returned devices is kinda awkward in Alfred due to how it ranks/sorts returned items, but not having a way to quickly navigate a 30+ Indigo device list is unwieldy at best. :)

 

I'd like to short-circuit the 3 step process by having the option to type it all out "indigo Living Light on" or whatever.

 

Mike

Link to comment

That ability is highest on my list to get working.  I have yet to find a example workflow to model it after, but I haven't looked very hard.

 

The devices you use the most should eventually float to the top of the list due to the way I name them in the XML.  It's a built in feature of Alfred to bring the common items to the top.  I do not have as many devices as you do, and I heavily use variables and action groups to group my macros together.

 

Glad it works so far, I'll post updates as I have time and improve it.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...