# \[ANNOUNCE\] node-red-contrib-virtual-smart-home for Alexa

**URL:** <https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353>\
**Category:** Share Your Nodes\
**Created:** [16 October 2020 15:07 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353 "2020-10-16T15:07:20Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [21 November 2020 08:08 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/21 "2020-11-21T08:08:11Z")

</div>

Actually, since this behavior is not intuitive at all, I already changed it for brightness and will do the same for color and color-temp soon. So when you ask Alexa to turn on a lamp to 50%, the powerState attribute will simultaneously be set to „ON“.

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [21 November 2020 09:21 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/22 "2020-11-21T09:21:02Z")

</div>

quick update: I just deployed an update of the backend which contains the aforementioned convenience features: Lights will be switched to "ON" automatically when brightness, color or color temperature are updated.

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [21 November 2020 09:28 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/23 "2020-11-21T09:28:00Z")

</div>

how would i change colour of lamp, but not turn it on?

Would it make more sense to send on/off command with colour, brightness and temp

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [21 November 2020 12:00 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/24 "2020-11-21T12:00:19Z")

</div>

Well, you could argue that setting the color of a lamp implicitly should switch it on, too. At least that‘s what most users expect. If you asked Alexa to turn on red light, and the lamp stays dark, this is perceived as not working, even though the color attribute of the lamp was indeed updated.

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [21 November 2020 12:29 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/25 "2020-11-21T12:29:31Z")

</div>

I may want to set the colour or brightness to a level but not turn on the lamp, I would argue that its best to either send on command with colour and brightness, or send it seperatly,. That way the user can program the response they wish.

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [21 November 2020 14:01 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/26 "2020-11-21T14:01:43Z")

</div>

How do you tell Alexa in one command to do two things?

---

<div class="post-metadata">

**Author:** ![dceejay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dceejay/32/38_2.png) [@dceejay](https://discourse.nodered.org/u/dceejay)\
**Post date:** [21 November 2020 14:39 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/27 "2020-11-21T14:39:09Z")

</div>

I think you are right. This is about a physical device that humans observe. It should do what is sensible for regular users. If I set it to 50% red I think most users would expect to see it alight. If I was odd enough to ask for 100% black I would expect it to be off. If I just set brightness to 80% I would expect it to go to 80% on with whatever the last colour was set to.

---

<div class="post-metadata">

**Author:** ![andreanilorenzo](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/andreanilorenzo/32/32325_2.png) [@andreanilorenzo](https://discourse.nodered.org/u/andreanilorenzo)\
**Post date:** [21 November 2020 22:34 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/28 "2020-11-21T22:34:09Z")

</div>

Great, that's perfect !!

I'm having trouble figuring out what message the alexa node is sending.

Is it possible to have a field in the node message that indicates a message sent by Alexa?

Like:  
msg.payload.comand

TurnOn  
TurnOff  
SetBrightness  
SetColor  
SetColorTemperature  
etc ...

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [22 November 2020 08:43 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/29 "2020-11-22T08:43:55Z")

</div>

That' a great idea! I just release v.1.11.0 that includes a msg.payload.directive attribute.

---

<div class="post-metadata">

**Author:** ![andreanilorenzo](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/andreanilorenzo/32/32325_2.png) [@andreanilorenzo](https://discourse.nodered.org/u/andreanilorenzo)\
**Post date:** [28 November 2020 19:31 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/30 "2020-11-28T19:31:12Z")

</div>

The new "msg.payload.directive" attribute worked perfectly until a few hours ago, but now it doesn't work anymore.  
Always comes the command "TurnOff" or nothing

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [29 November 2020 08:24 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/31 "2020-11-29T08:24:49Z")

</div>

Hmm, the backend hasn‘t been touched since a while. Could you please share an example flow demonstrating the issue?

---

<div class="post-metadata">

**Author:** ![andreanilorenzo](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/andreanilorenzo/32/32325_2.png) [@andreanilorenzo](https://discourse.nodered.org/u/andreanilorenzo)\
**Post date:** [29 November 2020 11:09 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/32 "2020-11-29T11:09:11Z")

</div>

Alexa, "switch off Camera" returns this:

```auto
{
   "payload":{
      "source":"alexa",
      "powerState":"OFF",
      "brightness":100,
      "colorTemperatureInKelvin":2000,
      "lightMode":"temp",
      "color":{
         "hue":255,
         "saturation":0.56,
         "brightness":1
      },
      "directive":"SetColor",
      "name":"Led Camera",
      "type":"COLOR_CHANGING_LIGHT_BULB",
      "color_rgb":[
         148,
         112,
         255
      ],
      "color_hex":"9470FF",
      "color_cmyk":[
         42,
         56,
         0,
         0
      ]
   },
   "_msgid":"4b629033.63ebf"
}

```

Directive is "SetColor" instead of "TurnOff"

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [29 November 2020 13:13 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/33 "2020-11-29T13:13:35Z")

</div>

Thanks for reporting. I'll track this here: [https://github.com/csuermann/node-red-contrib-virtual-smart-home/issues/12](https://github.com/csuermann/node-red-contrib-virtual-smart-home/issues/12)

---

<div class="post-metadata">

**Author:** ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)\
**Post date:** [29 November 2020 21:37 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/34 "2020-11-29T21:37:37Z")

</div>

But will this node actually let you say "set bulb to 50% red"?

If it does - then fair enough

But all others I've tried just let you set brightness or colour but not both at same time

AFAIK it's a fundamental Amazon limitation

But I could be completely wrong

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [30 November 2020 14:08 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/35 "2020-11-30T14:08:14Z")

</div>

Correct, Amazon' Smart Home Skill is based on directives that change a single attribute at a time, e.g. "TurnOn", "TurnOff", "SetBrightness", "SetColor" etc.

AFAIK it's not possible to instruct Alexa to carry out more than one directive at once.

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [30 November 2020 17:08 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/36 "2020-11-30T17:08:21Z")

</div>

> [@lius](#):
>
> AFAIK it's not possible to instruct Alexa to carry out more than one directive at once.

I can instruct alexa to turn on light to 50%, or turn on light and set to 50%. I can also turn on light and set to blue.

---

<div class="post-metadata">

**Author:** ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)\
**Post date:** [30 November 2020 17:20 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/37 "2020-11-30T17:20:01Z")

</div>

With what node?

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [30 November 2020 17:49 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/38 "2020-11-30T17:49:13Z")

</div>

And by which voice command exactly?

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [30 November 2020 18:14 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/39 "2020-11-30T18:14:31Z")

</div>

No node as i just instruct alexa to "turn on garden light and set to blue" or "turn on bedroom light and set to 50%"

I was just pointing out you can give alexa multiple instructions

---

<div class="post-metadata">

**Author:** ![lius](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/lius/32/12679_2.png) [@lius](https://discourse.nodered.org/u/lius)\
**Post date:** [30 November 2020 19:22 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353/40 "2020-11-30T19:22:49Z")

</div>

All Alexa hears with those invocations is the „set to blue“ or „set to 50%“. The „turn on“ part is implied. You can omit it with the same result.

[Previous page](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353.md?page=1)

[Next page](https://discourse.nodered.org/t/announce-node-red-contrib-virtual-smart-home-for-alexa/34353.md?page=3)
