Sample Vera Echo Bridge Voice Commands for Sonos, thermostat Temperature, etc

Let me ask in a different way then…

You can use Amazon Echo bridge to turn of/off devices and/or scenes. However, what I really want here is that be able to set a temperature of my Nest via Amazon Echo without having to create a scene for each temperature. I would love to be able to pass a parameter via voice instead.

Is this achievable?

[quote=“Pseudomizer, post:21, topic:188597”]Let me ask in a different way then…

You can use Amazon Echo bridge to turn of/off devices and/or scenes. However, what I really want here is that be able to set a temperature of my Nest via Amazon Echo without having to create a scene for each temperature. I would love to be able to pass a parameter via voice instead.

Is this achievable?[/quote]

I am able to set a temperature (hot and cold), turn the Nest thermostat On/Off without a scene, exactly as kenray536 told us all how to do. I say “Alexa , Set Thermostat to 77”. As a reminder this is what kenray wrote:

[quote=“kenray536”]First create a new device with the name “Thermostat” in whatever Echo Hue bridge you are using. I’m using Crush’s version form this thread:
http://forum.micasaverde.com/index.php/topic,31920.0.html

OnURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=60&NewCurrentSetpoint=${intensity.percent}

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat
    (FYI, This is setting the temp for the AC. I figure i will change it up winter to set the temp for the Heat).

OffURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=60&NewModeTarget=Off

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat

Tell Alexa to rediscover your devices.

Now…Try the command out by saying “Alexa, set the thermostat to 76”. 8)

You’ll need to have your Air Conditioner already on for this to work. I have another Device Named Air Conditioner that I use to tell Echo to turn on. This what just sets the thermostat to a predetermined number.[/quote]

[quote=“lemrock, post:22, topic:188597”][quote=“Pseudomizer, post:21, topic:188597”]Let me ask in a different way then…

You can use Amazon Echo bridge to turn of/off devices and/or scenes. However, what I really want here is that be able to set a temperature of my Nest via Amazon Echo without having to create a scene for each temperature. I would love to be able to pass a parameter via voice instead.

Is this achievable?[/quote]

I am able to set a temperature (hot and cold), turn the Nest thermostat On/Off without a scene, exactly as kenray536 told us all how to do. I say “Alexa , Set Thermostat to 77”. As a reminder this is what kenray wrote:

[quote=“kenray536”]First create a new device with the name “Thermostat” in whatever Echo Hue bridge you are using. I’m using Crush’s version form this thread:
http://forum.micasaverde.com/index.php/topic,31920.0.html

OnURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=60&NewCurrentSetpoint=${intensity.percent}

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat
    (FYI, This is setting the temp for the AC. I figure i will change it up winter to set the temp for the Heat).

OffURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=60&NewModeTarget=Off

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat

Tell Alexa to rediscover your devices.

Now…Try the command out by saying “Alexa, set the thermostat to 76”. 8)

You’ll need to have your Air Conditioner already on for this to work. I have another Device Named Air Conditioner that I use to tell Echo to turn on. This what just sets the thermostat to a predetermined number.[/quote][/quote]

This tip is wicked cool, if I could get it to work. I’m running the latest crush bridge. I configured (very carefully) “Thermostat”. Alexa says OK when I say “Alexa, set thermostat to 77”.

But the Nest (gen 1) does not budge. Argh :-).

If I try Testing the “On”, it says “ERROR: No implementation”.

Test “Off” says “{ “u:SetModeTargetResponse”: { “JobID”: “18” } }”… and the Nest goes into OFF mode.

here is my on command:

http://Vear_IP:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=244&NewCurrentSetpoint=${intensity.percent}

the alexa command is “Alexa set thermostat to 75” where thermostat is the device name in the hue bridge. I’m not sure which version of the nest app you are using but I am using the watou app not the WWN Mios App.

[quote=“hmspain, post:23, topic:188597”][quote=“lemrock, post:22, topic:188597”][quote=“Pseudomizer, post:21, topic:188597”]Let me ask in a different way then…

You can use Amazon Echo bridge to turn of/off devices and/or scenes. However, what I really want here is that be able to set a temperature of my Nest via Amazon Echo without having to create a scene for each temperature. I would love to be able to pass a parameter via voice instead.

Is this achievable?[/quote]
This is what I am using:
For Heating setpoint:
OnURL:
http://192.168.1.2:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Heat&action=SetCurrentSetpoint&DeviceNum=5&NewCurrentSetpoint=${intensity.percent}

OffURL:
http://192.168.1.2:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=5&NewModeTarget=Off
I am able to set a temperature (hot and cold), turn the Nest thermostat On/Off without a scene, exactly as kenray536 told us all how to do. I say “Alexa , Set Thermostat to 77”. As a reminder this is what kenray wrote:

[quote=“kenray536”]First create a new device with the name “Thermostat” in whatever Echo Hue bridge you are using. I’m using Crush’s version form this thread:
http://forum.micasaverde.com/index.php/topic,31920.0.html

OnURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=60&NewCurrentSetpoint=${intensity.percent}

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat
    (FYI, This is setting the temp for the AC. I figure i will change it up winter to set the temp for the Heat).

OffURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=60&NewModeTarget=Off

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat

Tell Alexa to rediscover your devices.

Now…Try the command out by saying “Alexa, set the thermostat to 76”. 8)

You’ll need to have your Air Conditioner already on for this to work. I have another Device Named Air Conditioner that I use to tell Echo to turn on. This what just sets the thermostat to a predetermined number.[/quote][/quote]

This tip is wicked cool, if I could get it to work. I’m running the latest crush bridge. I configured (very carefully) “Thermostat”. Alexa says OK when I say “Alexa, set thermostat to 77”.

But the Nest (gen 1) does not budge. Argh :-).

If I try Testing the “On”, it says “ERROR: No implementation”.

Test “Off” says “{ “u:SetModeTargetResponse”: { “JobID”: “18” } }”… and the Nest goes into OFF mode.[/quote]

This is what I am using (if you use there remember to change Vera ip address and device number)
For Heating
OnURL:
http://192.168.1.2:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Heat&action=SetCurrentSetpoint&DeviceNum=5&NewCurrentSetpoint=${intensity.percent}

For Cooling
OnURL:
http://192.168.1.2:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=5&NewCurrentSetpoint=${intensity.percent}

For Auto Heat Range:
OnURL:
http://192.168.1.2:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=5&NewModeTarget=AutoChangeOver

For Thermostat OFF
OffURL:
http://192.168.1.2:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=5&NewModeTarget=Off

There is a problem though. Although I can get Alexa to change the temperatures they only seem to change when the device is OFF. If the device is on and I ask Alexa to Set thermostat to 77, then nothing changes. But when it ask her when Nest is off and then I turn Nest back on, it shows as changed to 77. Also when I manually input a temperature of 77 (NewCurrentSetpoint=77) then the change is immediate ans when the Nest is ON.

Also, if you just want to change Modes (Heat, Cool, Both) then:
(using your Vera IP and Thermostat device number)

Heat mode
OnURL:
http://VeraIP:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=5&NewModeTarget=HeatOn

Cool Mode:
OnURL:
http://VeraIP:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=5&NewModeTarget=CoolOn

Both Mode
OnURL:
http://VeraIP:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=5&NewModeTarget=AutoChangeOver

[quote=“Gklmdawson, post:24, topic:188597”]here is my on command:

http://Vear_IP:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=244&NewCurrentSetpoint=${intensity.percent}

the alexa command is “Alexa set thermostat to 75” where thermostat is the device name in the hue bridge. I’m not sure which version of the nest app you are using but I am using the watou app not the WWN Mios App.[/quote]

With all respect to watou, I’m now using the WWN. From what I hear, you have to turn the Thermostat OFF to make this work? Yikes?

My approach is rather crude, but works. That is, I setup a unique scene for every temperature I wanted. The verbal command is “Alexa, Turn on Nest to 75” for example. There is a scene called “Nest to 75” that does the needful using WWN.

I was hoping to DELETE all those scenes, and go with this slick approach :-). Has anyone been able to get this to work with WWM without having to turn the thermostat off?

I have tried using WWN but all I get is “Vera Connect WWN : Starting up…” and no device is ever created. It says WWN will work will all Vera platforms but not sure about UI5. The WWN forum doesn’t seem to know the answer.

Hold on a second here please.

If you are using the Vera Alexa bridge you are simulating to Alexa a HUE light bulb which has a status of ON or OFF. There is no Heat, Cool or both options in the logic of Alexa and that’s why I was asking the very specific question how people are able to pass a parameter to Vera and then to Nest to set a temperature.

So it looks like some people got it working to set the temperature and some have not while all the details about the heat, cool, both, etc options don’t seem to be working. So do you have the following logic?

Switch 1 called “Thermostat Cool”
URL = On
URL = OFF

Switch 2 called “Thermostat Heat”
URL = On
URL = OFF

Switch 3 called “Thermostat Both”
URL = On
URL = OFF

So do you determine when you tell Alexa a temperature number which of the methods from cool, heat or both to use? You would have to pick one or tell Alexa the method and then add the number e.g. Alexa set Thermostat to COOL 75 or Alexa set Thermostat to BOTH 76.

I am not surprised that the off command works but the others don’t if my logic above holds true and this might be the reason why it doesn’t work for some people.

What’s the ultimate goal here? You don’t want to change the method from cool, heat or both to something else via voice commands while this would be a nice feature to have. What you really want is to just set the temperature or temperature range e.g. “74 to heat and 76 to cool” via voice command.

It looks like the changing the method has already been solved in terms of an URL with the cool, heat and both. So you could create three virtual bulbs for Alexa but what does “turning off cool” mean? Again, Alexa knows ON or OFF. You cannot have 4 stages e.g. cool, heat, both and OFF in one virtual bulb in Alexa unless I am missing something here.

This implies you have to have 3 switches. Going back to my line above turning off either cool, heat or both will result in powering off the Thermostat. This would be the ONLY option with those 3 virtual bulbs.

If I disregard this challenge let’s focus on the primary goal which is JUST setting the temperature. Two questions come to mind:

  1. Is there a URL command to send over a set temperature point which does NOT require to specify if cool or heat or both should be used?
  2. If yes, can a parameter been passed via Alexa verbally to Vera and then to NEST without having to create a scene for each temperature? Sorry, I am not going to create many many scenes for potential temperature settings.

I hope I am going down the right path here and maybe I gave some people ideas on how to go about this. Maybe I am completely wrong but I am really trying to understand the current functionalities and limitations given the environment we have.

Feedback is very welcome.

When we approach our Thermostats to set a temperature most of us have to pick a mode first (using heater or AC or both) and then we move a pointer to the temperature we want to achieve our temperature goal. Why wouldn’t we be doing the same here? I see a minimum of 3 switches + OFF to achieve this.

I do it the hard way, in the summer I have it programmed to cool. Probably not going to run the heat when Its 100 outside. When it’s time to switch to heat I update the settings to change the heat set point instead of the cool set point. Switching over every 6 months or so is simplest for me.

I ended up adding a “Cooler” command to my Echo. This command just takes the current temperature and lowers in by 2 degrees. This sets the coolsetpoint for the Air conditioner.

local setpoint = luup.variable_get(“urn:upnp-org:serviceId:TemperatureSetpoint1_Cool”, “CurrentSetpoint”, 60)
local new_temp_set = setpoint - 2
luup.call_action(“urn:upnp-org:serviceId:TemperatureSetpoint1_Cool”, “SetCurrentSetpoint”, {NewCurrentSetpoint = new_temp_set}, 60)

– Replace “60” with the device ID of your thermostat in the 1st and 3rd lines.

I say the same thing here in California or in my Vacation house in Arizona. When it’s summer its hot and I never heat both or HEAT during that time. Not only that lets say at night outside does drop below my 74 degree setup and hits 70 or 65 outside during the lowest in the night. My house doesn’t instantly drop that low either. It still stay warm enough inside that I don’t have to switch to heat to bring it back up to 74.

[quote=“kenray536, post:2, topic:188597”]I’ll be using this thread to post snippets of the devices I add to the Echo Vera Bridge.

Please feel free to add any devices/code snippets that you think are useful.

I just figured out the Sonos commands.

OnURL to play
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:micasaverde-com:serviceId:Sonos1&action=PlayURI&DeviceNum=100&URIToPlay=SR:siriushits1&Volume=35

  1. Replace Xs with your Vera IP
  2. Replace “100” with Vera Device ID of your Sonos Device
  3. Replace “SR:siriushits” with the PlayURI that you want. To figure it out for any device. Just place what you want, then go to the device, advanced tab and look at the CurrentTrackURI. That’s what you’ll need.

From the looks of any device can be controlled. You can look in the Advance tab of the LUA code and see what is available. You just need to change the service, action, device ID, and pass the correct parameters.[/quote]

Thanks for opening up another thread. Just a quick question - what’s the OffURL to play? I can successfully turn the sonos on, but can’t get it to stop?

[quote=“kenray536, post:1, topic:188597”]Since the Amazon Echo Bridge threads are so big, thought that I would make a new thread with this topic.

First create a new device with the name “Thermostat” in whatever Echo Hue bridge you are using. I’m using Crush’s version form this thread:
http://forum.micasaverde.com/index.php/topic,31920.0.html

OnURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&action=SetCurrentSetpoint&DeviceNum=60&NewCurrentSetpoint=${intensity.percent}

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat
    (FYI, This is setting the temp for the AC. I figure i will change it up winter to set the temp for the Heat).

OffURL:
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=60&NewModeTarget=Off

  1. Replace Xs with your Vera IP
  2. Replace “60” with Vera Device ID of your Thermostat

Tell Alexa to rediscover your devices.

Now…Try the command out by saying “Alexa, set the thermostat to 76”. 8)

You’ll need to have your Air Conditioner already on for this to work. I have another Device Named Air Conditioner that I use to tell Echo to turn on. This what just sets the thermostat to a predetermined number.[/quote]

Sorry to revive this old thread but I don’t have a nest thermostat but have a working Z-Wave thermostat on my Veralite and I am using Crush’s Bridge which is working great for my lights but wanted to get my thermostat to control from Alexa but so far it is not working. My Z-Wave Thermostat is Device #3 on my Vera. I used the commands below but when I tell Alexa to set my Thermostat to 20 it says the device is not responding? It is Winter here so I am in Heat mode and celcious.

ON Command

http://192.168.0.190:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Heat&action=SetCurrentSetpoint&DeviceNum=3&NewCurrentSetpoint=${intensity.percent}

OFF Command

http://192.168.0.190:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=3&NewModeTarget=Off

Does anyone have any idea what is wrong? Is this the current way to get a non-nest standard z-wave thermostat to work with Alexa?

[quote=“kenray536, post:32, topic:188597”]I ended up adding a “Cooler” command to my Echo. This command just takes the current temperature and lowers in by 2 degrees. This sets the coolsetpoint for the Air conditioner.

local setpoint = luup.variable_get(“urn:upnp-org:serviceId:TemperatureSetpoint1_Cool”, “CurrentSetpoint”, 60)
local new_temp_set = setpoint - 2
luup.call_action(“urn:upnp-org:serviceId:TemperatureSetpoint1_Cool”, “SetCurrentSetpoint”, {NewCurrentSetpoint = new_temp_set}, 60)

– Replace “60” with the device ID of your thermostat in the 1st and 3rd lines.[/quote]

Hi, I used the info from your other message to create an Echo Thermostat item in order to be able to just tell Alexa to set my thermostat to a particular degree and it works great. Thanks! I’d also like to setup this cooler item as well but can’t get it to work. I guess it’s because I’m not sure how to enter the info above. I assumed this was just creating a bridge device called cooler and adding that code to the ON section, then telling Alexa to “Turn on Cooler”. Probably where I’m going wrong. Don’t know if this is supposed to be a switch, script, etc. Can you help? Thanks again!!

[quote=“davemedlin, post:36, topic:188597”][quote=“kenray536, post:32, topic:188597”]I ended up adding a “Cooler” command to my Echo. This command just takes the current temperature and lowers in by 2 degrees. This sets the coolsetpoint for the Air conditioner.

local setpoint = luup.variable_get(“urn:upnp-org:serviceId:TemperatureSetpoint1_Cool”, “CurrentSetpoint”, 60)
local new_temp_set = setpoint - 2
luup.call_action(“urn:upnp-org:serviceId:TemperatureSetpoint1_Cool”, “SetCurrentSetpoint”, {NewCurrentSetpoint = new_temp_set}, 60)

– Replace “60” with the device ID of your thermostat in the 1st and 3rd lines.[/quote]

Hi, I used the info from your other message to create an Echo Thermostat item in order to be able to just tell Alexa to set my thermostat to a particular degree and it works great. Thanks! I’d also like to setup this cooler item as well but can’t get it to work. I guess it’s because I’m not sure how to enter the info above. I assumed this was just creating a bridge device called cooler and adding that code to the ON section, then telling Alexa to “Turn on Cooler”. Probably where I’m going wrong. Don’t know if this is supposed to be a switch, script, etc. Can you help? Thanks again!![/quote]

Okay, think I figured this out, this is Luup code so just created a scene and have Alexa call the scene.

Hello, This is way easier than going through the entire ha bridge thread and I couldn’t find anything about thermostats anyway, so thank you.\

My question is, I only have heat and I have a separate wall unit for air which I am not controlling as of yet with zwave.
I have my heat set most times to auto.
So what function do I call. IM a bit lost with the &action part
Do I call Auto&action (if there is such a thing)

http://192.168.x.x:3480:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:TemperatureSetpoint1_Heat&action=SetCurrentSetpoint&DeviceNum=30&NewCurrentSetpoint=${intensity.percent}
??

this is to turn it off right
http://192.168.X.XXX:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:HVAC_UserOperatingMode1&action=SetModeTarget&DeviceNum=(id)&NewModeTarget=Off

Any help would be great.

Here’s some bridge code I use to control my Sonos.

I’ve got some XM channels setup as favorites so I just use the station name as the bridge device, “XM 80s on 8”, “XM Symphony Hall” etc, then tell Alexa to “Turn on Symphony Hall” or whatever station I want.

To turn on the particular station, I use:

http://<vera ip>:3480/data_request?id=action&output_format=json&serviceId=urn:micasaverde-com:serviceId:Sonos1&action=PlayURI&DeviceNum=<device id>&URIToPlay=ID:FV:<x/xx>

You can get the Favorites ID out of the Advanced section of the Sonos device in Vera, look under the Favorites variable.

To turn off Sonos, I use:

http://<vera ip>:3480/data_request?id=action&serviceId=urn:micasaverde-com:serviceId:MediaNavigation1&action=Stop&DeviceNum=<device id>

For volume control, I have the bridge device setup as a dimmer with the “on” setting turning the volume to a maximum of 75 so I don’t blow out any speakers around the house (they are hardwired into the Sonos).

On my bridge, I have the device called “Speakers” since “Volume” is a internally reserved command for the Echo. I just say “Alexa, turn speakers to 60” or whatever.

To turn on the speakers:

http://:3480/data_request?id=action&DeviceNum=&serviceId=urn:upnp-org:serviceId:RenderingControl&action=SetVolume&DesiredVolume=75

To set the speaker volume:

http://:3480/data_request?id=action&serviceId=urn:upnp-org:serviceId:RenderingControl&action=SetVolume&DesiredVolume=${intensity.percent}&DeviceNum=

To turn off the speakers (this does not stop the Sonos from playing, it just sets the volume to 0):

http://:3480/data_request?id=action&serviceId=urn:upnp-org:serviceId:RenderingControl&action=SetVolume&DesiredVolume=0&DeviceNum=

Hope this helps someone down the line!