Git Product home page Git Product logo

node-red-contrib-amazon-echo's Introduction

node-red-contrib-amazon-echo

Alexa controlled Node-Red nodes supporting latest Amazon Echo devices

NO Alexa Skills required.

NO cloud dependencies.

Installation

Install from your Node-RED Manage Palette

or

Install using npm

$ npm install node-red-contrib-amazon-echo

How to use

  • Add Amazon Echo Hub node your flow
  • Add multiple Amazon Echo Device nodes linked to Amazon Echo Hub node Note: Use unique names for device nodes. Alexa will use the node name to manage your smart device
  • Ask "Alexa, discover devices" or start the discover procedure from the Alexa mobile app

Usage screenshot

Features

  • Turning on/off
  • Dimming
  • Setting the light color

Supported devices

  • Amazon Echo 2nd generation
  • Amazon Echo Plus 2nd generation
  • Amazon Echo Dot 1st, 2nd and 3rd generations

Example Alexa commands

  • Alexa, turn on/off {device}
  • Alexa, switch on/off {device}
  • Alexa, set {device} to 50%
  • Alexa, turn my {device} light green
  • Alexa, set the {device} light to orange
  • Alexa, make the {device} warmer
  • Alexa, brighten {device} to 60 percent
  • Alexa, dim the {device} lights

Requirements

Amazon Echo Hub node is starting a service listening on port 80 which requires Node-Red process to be started with root user.

No additional settings are needed if Node-Red is started as Home Assistant add-on

Troubleshooting

Detailed troubleshooting instructions can be found on the Wiki

Bugs and feature requests

Please create an issue in GitHub

node-red-contrib-amazon-echo's People

Contributors

bittourette avatar cymplecy avatar datech avatar dependabot[bot] avatar stklcode avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

node-red-contrib-amazon-echo's Issues

Maybe possible to understand differences between power on and regulate

Hi since wongnam closed the previous issue, where I posted this discussion and since my old issue is closed I open a new one, hopefully there may be a soltion, which I saw in a video on Youtube, here is the post:

@Barabba11, that's why I prefer to use Alexa mobile app to test the setup. if it is working I can start using the voice commands.

I was thinking that I've managed to answer on your question about setting the brightness and power state. Alexa will send all commands one by one and you have to be able to distinguish between: Turn On and Set brightness to 10% for example. If the device is turned off and you ask Alexa to set the brightness, Echo will first send a turn on command to the hub. So, If you have saved the old brightness value you can compare it with the new one.

I've used the following code in a function node to check if power state is changed.

var state = context.get('state');

if ( state !== undefined && state.on != msg.on ) {
  msg.isOnChanged = true;
} else {
  msg.isOnChanged = false; 
}

context.set('state', msg);

return msg;

This will add isOnChanged in the message if "on" attribute is changed. Hope this helps

Message "on", "bri", "hue", "sat" and "ct" attributes are coming from Alexa and completely represent what Alexa is asking the hub to set.

Hi mate, thnx for reply, pls look this video at about 3:19, how he gests from Alexa this "on_off_command : false", I don't have this label, I have only on:true and it is true also when I change only brightness. I've updated to 0.16. Thank you
https://www.youtube.com/watch?v=4QfoXdcfqKI

what I have
object
on: true
bri: 203
hue: 0
sat: 254
ct: 199
colormode: "ct"
payload: "on"
deviceid: "a5449f04d59f48"

temperature

Feature requests rather than bugs. This Amazon-Echo node is already looking better than alexa-local - RGB input would make it even BETTER - BUT here (https://github.com/datech/node-red-contrib-amazon-echo) you say " Alexa, make the {device} warmer" is possible but trying that (I don't think it checks the actual light) fails. "Doesn't support that. Whether that means colour warm or temperature warm - COULD be used for temperature if it could increase some value or colour temperature?

node-red-contrib-alexa-local does not do warm but DOES ignore "temperature" so "alexa set mydevice to 35 degrees" sets a value to 20 - which could be used for temperature.... yours does not accept "set device to 20" and positively throws out "set device to 20 degrees" - a shame - any chance it could accept these in an update?

Similarly "increase" and "decrease" could be used for light or temperature, your node does not accept increase - alexa-local does. Any chance?

Possibly a switch to select one of two sets of features if you didn't want all that in one?

problem with 0.1.8

SUMMARY

from today my flow is not working in nodered
SyntaxError: Unexpected token * (line:371)
nodered 0.19.3
I have tried to remove and reinstall ma the problem is always there

ECHO DEVICES
MODULE VERSION

CONFIGURATION

``

[
{
"id": "fa2662cf.760128",
"type": "tab",
"label": "ALEXA",
"disabled": false,
"info": ""
},
{
"id": "3d21a2a0.332f36",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_luce_studio_1",
"links": [
"9959746b.fa85b"
],
"x": 535,
"y": 260,
"wires": []
},
{
"id": "7b5a58a0.493538",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_luce_studio_2",
"links": [
"cc076b79.cf814"
],
"x": 535,
"y": 300,
"wires": []
},
{
"id": "e294c2ce.ff2b58",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_cameretta_1",
"links": [
"7f024cd1.d7a6ac"
],
"x": 535,
"y": 20,
"wires": []
},
{
"id": "623e677c.3bbdb",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_cameretta_2",
"links": [
"b4c33732.3686b"
],
"x": 535,
"y": 60,
"wires": []
},
{
"id": "182e7533.7e630b",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_cameretta_3",
"links": [
"3d8296a6.0ead0a"
],
"x": 535,
"y": 100,
"wires": []
},
{
"id": "f6b259e8.b0d81",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_camera_1",
"links": [
"beed99d3.cc81b8"
],
"x": 535,
"y": 140,
"wires": []
},
{
"id": "71ae196e.079cb",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_camera_2",
"links": [
"532802ab.c0ff3c"
],
"x": 535,
"y": 180,
"wires": []
},
{
"id": "70a4c02d.37bf28",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_camera_3",
"links": [
"8abdcc2.4173db"
],
"x": 535,
"y": 220,
"wires": []
},
{
"id": "372bb325.6210ac",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_corridoio_1",
"links": [
"6d020787.7d5c6"
],
"x": 535,
"y": 340,
"wires": []
},
{
"id": "d18f45a6.854d48",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_corridoio_2",
"links": [
"de547166.d59b4"
],
"x": 535,
"y": 380,
"wires": []
},
{
"id": "269f532e.9a46fc",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_luce_strada",
"links": [
"6b39221f.73ed7c"
],
"x": 535,
"y": 420,
"wires": []
},
{
"id": "b045cc60.6a11d",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_luce_balcone",
"links": [
"44c8f1a3.fa21a8"
],
"x": 535,
"y": 460,
"wires": []
},
{
"id": "1098966f.1a3d52",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_bagno_1",
"links": [
"e4114386.b89fc"
],
"x": 535,
"y": 500,
"wires": []
},
{
"id": "4fe3e7b9.95f53",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_bagno_2",
"links": [
"bbd0a7a5.0c9428"
],
"x": 535,
"y": 540,
"wires": []
},
{
"id": "868400ad.98b7f8",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_bagno_3",
"links": [
"943fd243.7575b8"
],
"x": 535,
"y": 580,
"wires": []
},
{
"id": "4f6d2a22.0e4934",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_sala_1",
"links": [
"417dd743.dd18d8"
],
"x": 535,
"y": 620,
"wires": []
},
{
"id": "96e02c22.51863",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_sala_2",
"links": [
"34d0bd10.bdc052"
],
"x": 535,
"y": 660,
"wires": []
},
{
"id": "37ff4315.53325c",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_sala_3",
"links": [
"8d503d34.0d02b"
],
"x": 535,
"y": 700,
"wires": []
},
{
"id": "916ec9d2.ff3518",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_bagnetto_1",
"links": [
"f9b8139.89342f"
],
"x": 535,
"y": 740,
"wires": []
},
{
"id": "d3476820.214a1",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_bagnetto_2",
"links": [
"fb48c3f5.4a29e8"
],
"x": 535,
"y": 780,
"wires": []
},
{
"id": "18366cb3.58a1db",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_cucina_1",
"links": [
"d5f25b4c.c9f308"
],
"x": 535,
"y": 820,
"wires": []
},
{
"id": "38385f2f.bb1bf8",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_cucina_2",
"links": [
"42d5d69a.7f032"
],
"x": 535,
"y": 860,
"wires": []
},
{
"id": "c3de2a67.9425a8",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_cucina_3",
"links": [
"483aeaf2.ec5ab4"
],
"x": 535,
"y": 900,
"wires": []
},
{
"id": "741fe62b.6cd15",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_ingresso",
"links": [
"b95f2c12.458ce"
],
"x": 535,
"y": 940,
"wires": []
},
{
"id": "e3bc0db1.a790d8",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_scale",
"links": [
"c02f2e57.eea2d8"
],
"x": 535,
"y": 980,
"wires": []
},
{
"id": "c4943f3b.0d45c8",
"type": "link out",
"z": "fa2662cf.760128",
"name": "to_riscaldamenti",
"links": [
"abba8c95.595908"
],
"x": 535,
"y": 1020,
"wires": []
},
{
"id": "46cbd476.a683dc",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce studio 1",
"topic": "",
"x": 390,
"y": 260,
"wires": [
[
"3d21a2a0.332f36"
]
]
},
{
"id": "764eb742.9db1c",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce studio 2",
"topic": "",
"x": 390,
"y": 300,
"wires": [
[
"7b5a58a0.493538"
]
]
},
{
"id": "376fa610.ec59d2",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce cameretta 1",
"topic": "",
"x": 400,
"y": 20,
"wires": [
[
"e294c2ce.ff2b58"
]
]
},
{
"id": "8acc1822.b5a218",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce cameretta 2",
"topic": "",
"x": 400,
"y": 60,
"wires": [
[
"623e677c.3bbdb"
]
]
},
{
"id": "591e1a96.3be784",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce cameretta 3",
"topic": "",
"x": 400,
"y": 100,
"wires": [
[
"182e7533.7e630b"
]
]
},
{
"id": "25126a83.d253ee",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce camera 1",
"topic": "",
"x": 400,
"y": 140,
"wires": [
[
"f6b259e8.b0d81"
]
]
},
{
"id": "ac472957.d70ca8",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce camera 2",
"topic": "",
"x": 400,
"y": 180,
"wires": [
[
"71ae196e.079cb"
]
]
},
{
"id": "c12e0ba8.cdcf5",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce camera 3",
"topic": "",
"x": 400,
"y": 220,
"wires": [
[
"70a4c02d.37bf28"
]
]
},
{
"id": "47f6c3d3.856e94",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce corridoio 1",
"topic": "",
"x": 400,
"y": 340,
"wires": [
[
"372bb325.6210ac"
]
]
},
{
"id": "d9809251.3dd828",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce corridoio 2",
"topic": "",
"x": 400,
"y": 380,
"wires": [
[
"d18f45a6.854d48"
]
]
},
{
"id": "1c4187a2.46751",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce strada",
"topic": "",
"x": 390,
"y": 420,
"wires": [
[
"269f532e.9a46fc"
]
]
},
{
"id": "1c71b4d2.13911b",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce balcone",
"topic": "",
"x": 390,
"y": 460,
"wires": [
[
"b045cc60.6a11d"
]
]
},
{
"id": "8f555505.5146f",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce bagno 1",
"topic": "",
"x": 390,
"y": 500,
"wires": [
[
"1098966f.1a3d52"
]
]
},
{
"id": "8f6d9489.c2fc78",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce bagno 2",
"topic": "",
"x": 390,
"y": 540,
"wires": [
[
"4fe3e7b9.95f53"
]
]
},
{
"id": "43ec1bf8.2add9c",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce bagno 3",
"topic": "",
"x": 390,
"y": 580,
"wires": [
[
"868400ad.98b7f8"
]
]
},
{
"id": "784c62dc.87bd4c",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce sala 1",
"topic": "",
"x": 390,
"y": 620,
"wires": [
[
"4f6d2a22.0e4934"
]
]
},
{
"id": "2f933925.113566",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce sala 2",
"topic": "",
"x": 390,
"y": 660,
"wires": [
[
"96e02c22.51863"
]
]
},
{
"id": "286149ce.d356de",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce sala 3",
"topic": "",
"x": 390,
"y": 700,
"wires": [
[
"37ff4315.53325c"
]
]
},
{
"id": "264f0c9.3008674",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce bagnetto 1",
"topic": "",
"x": 400,
"y": 740,
"wires": [
[
"916ec9d2.ff3518"
]
]
},
{
"id": "7c34a52.7cdaa5c",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce bagnetto 2",
"topic": "",
"x": 400,
"y": 780,
"wires": [
[
"d3476820.214a1"
]
]
},
{
"id": "c782295.c632d58",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce cucina 1",
"topic": "",
"x": 390,
"y": 820,
"wires": [
[
"18366cb3.58a1db"
]
]
},
{
"id": "67265c5b.e25fc4",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce cucina 2",
"topic": "",
"x": 390,
"y": 860,
"wires": [
[
"38385f2f.bb1bf8"
]
]
},
{
"id": "c6153a3c.1155a",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce cucina 3",
"topic": "",
"x": 390,
"y": 900,
"wires": [
[
"c3de2a67.9425a8"
]
]
},
{
"id": "b0e6c940.3b9058",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce ingresso",
"topic": "",
"x": 400,
"y": 940,
"wires": [
[
"741fe62b.6cd15"
]
]
},
{
"id": "27061a57.7cd3e6",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "luce scale",
"topic": "",
"x": 390,
"y": 980,
"wires": [
[
"e3bc0db1.a790d8"
]
]
},
{
"id": "a6ebdd1c.d1efe8",
"type": "amazon-echo-device",
"z": "fa2662cf.760128",
"name": "riscaldamenti",
"topic": "",
"x": 400,
"y": 1020,
"wires": [
[
"c4943f3b.0d45c8"
]
]
},
{
"id": "10156656.cfab62",
"type": "amazon-echo-hub",
"z": "fa2662cf.760128",
"port": "80",
"enableinput": false,
"x": 130,
"y": 200,
"wires": [
[
"376fa610.ec59d2",
"8acc1822.b5a218",
"591e1a96.3be784",
"25126a83.d253ee",
"ac472957.d70ca8",
"c12e0ba8.cdcf5",
"46cbd476.a683dc",
"764eb742.9db1c",
"47f6c3d3.856e94",
"d9809251.3dd828",
"1c4187a2.46751",
"1c71b4d2.13911b",
"8f555505.5146f",
"8f6d9489.c2fc78",
"43ec1bf8.2add9c",
"784c62dc.87bd4c",
"2f933925.113566",
"286149ce.d356de",
"264f0c9.3008674",
"7c34a52.7cdaa5c",
"c782295.c632d58",
"67265c5b.e25fc4",
"c6153a3c.1155a",
"b0e6c940.3b9058",
"27061a57.7cd3e6",
"a6ebdd1c.d1efe8"
]
]
}
]


##### CONSOLE OUTPUT
<!--- Paste Node-RED console output between quotes -->

Flows stopped due to missing node types.

amazon-echo-hub

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->

##### ACTUAL RESULTS
<!--- Describe what actually happened. -->

dont work for me

Hello,

SUMMARY

I have a node-red (v0.19.5) with node 6.11.2 on a raspberry pi 3.

ECHO DEVICES

My devices are a Echo v2 and a Echo Plus v2.

i install : npm install node-red-contrib-amazon-echo
and install withour error.

in my console appears the two icons, but in the first deploy (or reload page) , node-red response with a "stop flow" error and the 2 icons disapears. and I have two new lines on console:

4 Feb 16:50:04 - [info] - node-red-contrib-amazon-echo:amazon-echo-hub : SyntaxError: Unexpected token *
4 Feb 16:50:04 - [info] - node-red-contrib-amazon-echo:amazon-echo-device : SyntaxError: Unexpected token

Type of Alexa events

SUMMARY

I am trying to use this module with node-red-contrib-openhab2. It works but not fully. The issue is that I can't differentiate the type of Alexa events (such as turn on a light versus set the brightness to 50%). This means that I am limited to one type of event (on/off or brightness or color type). Looking at the code, I noticed that the topic is set to "":

function payloadHandler(hubNode, deviceId) {

  var msg = getDeviceAttributes(deviceId, hubNode.context());
  msg.rgb = colorSHB2RGB(msg.hue, msg.sat, 254);
  msg.payload = msg.on ? "on" : "off";
  msg.deviceid = deviceId;
  msg.topic = "";

  hubNode.send(msg);

}

Hello, I was wondering if it was possible to set the topic to the type of update sent to Alexa (I am making a big assumption of course, which is that Alexa is sending this info somehow). So, if I ask Alexa to turn on the light the topic would be "ON_OFF" or something and if I ask to sent the brightness to 50% it would be something like "PCT_BRI" and the same for Temperature and Color. This would allow me to write a function that would send the appropriate command to openhab2 based on the value topic? Is that possible. If not, how else can this be achieved?

ECHO DEVICES

Echo Dot 3rd gen

MODULE VERSION
0.1.8
CONFIGURATION

CONSOLE OUTPUT

STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS

Echo plus 2 can't discover devices

SUMMARY

I have an echo plus 2, and node red running as a home assistant add-on, and home assistant (hassos) is running in a vm.
My echo was able to detect a device once but that's all. I tried to reboot everything, reinstalling node-red skill and node-red-contrib-amazon-echo, but it's still not working.

ECHO DEVICES
  • Echo Plus 2nd generation
MODULE VERSION
0.1.8
CONFIGURATION
[{"id":"1a9e52f1.859305","type":"amazon-echo-hub","z":"772fd114.894fe","port":"80","enableinput":false,"x":140,"y":1060,"wires":[["df5c8add.55845"]]},{"id":"df5c8add.55845","type":"amazon-echo-device","z":"772fd114.894fe","name":"Ceiling light","topic":"","x":330,"y":1060,"wires":[["eef33af4.de4378"]]},{"id":"eef33af4.de4378","type":"debug","z":"772fd114.894fe","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":490,"y":1060,"wires":[]}]
CONSOLE OUTPUT
No output
STEPS TO REPRODUCE

Use the minimal requirement for this to work and echo plus 2.

EXPECTED RESULTS

Being able to connect echo to nodes.

ACTUAL RESULTS

Echo plus discovers nothing.

Duplicate messages after off and colormode change

SUMMARY

I end up with two messages if I do a Color mode change during off.

ECHO DEVICES
MODULE VERSION
0.1.8
CONFIGURATION
[{"id":"5be1ccc5.ec1f84","type":"amazon-echo-hub","z":"4085d5dc.6b63ac","port":"80","enableinput":true,"x":110,"y":20,"wires":[["348efc2e.29bac4","d02d5a60.d51688","68564875.03c818","29e7a524.0fee7a","7927bc71.b3bc24","f347d0e2.a3ae2","601f4ad1.877384","c4f58ea7.b958b","cf36cb15.9fec38","9eb189db.2176a8","9aa959e0.2ba288","260efae4.f3ff16","3ce9a50a.81a18a","b16eb2a7.cbce6","6d197bea.08d464","43834798.3e4e78","157e3cf2.998a33","cae61dd8.b2788","135987e8.da11d8","9469b50f.60ee68","7846567.97741a8"]]},{"id":"348efc2e.29bac4","type":"amazon-echo-device","z":"4085d5dc.6b63ac","name":"Office","topic":"","x":350,"y":20,"wires":[["e2480286.fe5d3","cd1c1a3c.9e62c8"]]},{"id":"cd1c1a3c.9e62c8","type":"debug","z":"4085d5dc.6b63ac","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":1210,"y":540,"wires":[]}]
CONSOLE OUTPUT
2019. 08. 03. 1:36:22node: cd1c1a3c.9e62c8
msg : Object
object
on: true
bri: 254
hue: 0
sat: 254
ct: 284
colormode: "ct"
rgb: array[3]
payload: "on"
deviceid: "348efc2e29bac4"
topic: ""
_msgid: "c3d35786.471d08"
2019. 08. 03. 1:36:29node: cd1c1a3c.9e62c8
msg : Object
object
on: false
bri: 254
hue: 0
sat: 254
ct: 284
colormode: "ct"
rgb: array[3]
payload: "off"
deviceid: "348efc2e29bac4"
topic: ""
_msgid: "ff3cb72.3771648"
2019. 08. 03. 1:36:36node: cd1c1a3c.9e62c8
msg : Object
object
on: true
bri: 254
hue: 0
sat: 254
ct: 284
colormode: "ct"
rgb: array[3]
payload: "on"
deviceid: "348efc2e29bac4"
topic: ""
_msgid: "55ab1d2e.ef1bf4"
2019. 08. 03. 1:36:36node: cd1c1a3c.9e62c8
msg : Object
object
on: true
bri: 254
hue: 0
sat: 254
ct: 284
colormode: "hs"
rgb: array[3]
payload: "on"
deviceid: "348efc2e29bac4"
topic: ""
_msgid: "a20ea8f.ddd2a58"
STEPS TO REPRODUCE

When I give commands in order: White, Off, Red, than I recieve an unwanted msg with the ct mode too.
The other way it's the same: Pink, Off, Cool, than I recieve an unwanted msg with the hs mode too.

EXPECTED RESULTS

Only the last voice command (ct or hs) should go as msg after off command.

ACTUAL RESULTS

Huge detonation. KaBoooom

Amazon Echo R3 issues

I can't believe I'm not seeing disusion in here about Echo R3 and recent issues with Amazon (laast week or so)- the discussions seem to be in node-red-contrib-alexa-local and in the git pages for ESPURNA - but not here - yet today, a working n-r-c-a-e setup stopped sending any output. I told the Amazon app to delete my ESP-based RGB controller - and wiped the actual amazon-echo-device node. I then addedd in a new one and told Alexa to find devices. It found 2 itentical devices. I've had this setup running for ages.

Amazon echo hub ha an entry for port 8980 in it and there is a redirect to port 80 on my RPI - nothing new there and all of this was workung until what is pesumed to be an automatic Amazon update a matter of days ago. All of this is being discussed (including this node set) over at Github node-red-contrib-alexa-local - I thought it better to discuss this set of nodes here.

Also I've discovered a problem (my problem I believe) when controlling RGB lights with both this node set and the NR dashboard. If I change colour in n-r-c-a-e and turn on and off, ok, apart from the issue above... but if I control the colour in dashboard then turn on the lights with n-r-c-a-e, the colour used is that stored by amazon. I can't seem to inject an RGB array - not even sure WHERE to inject it, making a 3-part rgb array of msg.payload and trying it as input to both amazon-echo-hub and amazon-echo-device fails for some reason. Any ideas?

I only get off for the echo device even if i tell it to switch my device on

Hi,

i have the following issue: If I tell my echo to switch "Hallolampe" (my test device) on, the node still sends the message with the payload "off" - the same happens for brightness and saturation values - they're both always 254.

The output of a debug node connected to the echo device node is:
{"on":false,"bri":254,"hue":0,"sat":254,"ct":199,"colormode":"ct","payload":"off","deviceid":"DEVICEID","topic":"Lampe","_msgid":"7fbf02c2.748b2c"}

My Flow is:
[ { "id": "ECHOID", "type": "amazon-echo-hub", "z": "369f0be0.0b0a54", "port": "80", "enableinput": true, "x": 181, "y": 348, "wires": [ [ "DEVICEID" ] ] }, { "id": "63725bd5.c92304", "type": "debug", "z": "369f0be0.0b0a54", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "x": 517, "y": 680, "wires": [] }, { "id": "DEVICEID", "type": "amazon-echo-device", "z": "369f0be0.0b0a54", "name": "Hallolampe", "topic": "", "x": 331, "y": 455, "wires": [ [ "63725bd5.c92304" ] ] } ]

Thanks for developing such a nice node-red module,
Niggl

Devices are always recognized as lights

I think there is a design fault in this project: the devices are always recognized as lights!

The data structure created for receiving commands for Alexa is great for controlling lights, but it does not apply for all other devices. What if I want to add a fan? It does not have RGB data. It would be great if we could specify the type of the device.

Changing option (brightness, color etc) don't work

Hi, i can't seem to get alexa to change the value of color, brightness etc...
She just keep asking what device to set.
No errors in the log of node-red, just alexa that doesn't recognize the command.
ON and OFF are working fine.

How to update current state of "light"

Hi, sorry for put this here, but i don't find info about it, i added a TV as light on echo node work great on and off , but i have a question, my tv also turn on or off with others ways, how can update the current status of the device on alexa light??, i think is by the input part of the node, but i don't know how, thanks and sorry :)

ECHO DEVICES
  • Echo Dot Third Gen

Other comands possible? Rather than light control..

Hi, sorry to open this question as an issue, seems I don't have other solutions for ask something, there Seams that Alexa recognize this module as a "light", so I can switch it on/off, regulate intensity and the colours. Maybe some other functions too? Which vocal command I haven't mention?

With this set of commands I can regulate also shutters for example, it works also with my language like "open" and "close" and I can add how much..
I would like to do more, for example say "Alexa good morning", recognize this message and do some actions. HOw this is possible to do? Only remotely/by internet/cloud using skills? And if my internet won't work? No chances to have it locally?
Thank ou for your kind explanation

Change device type

Is there a way to set some nodes as plugs or switches instead of lights? Since everything is a light to Alexa when I say "turn off the lights" it turns off my fans as well.

SUMMARY
ECHO DEVICES

Echo Dot 3rd Gen

MODULE VERSION

'0.1.8'

Features needed, thanks

Hi datech and all peole may contribute here,
it's long time this module isn't updated and I hope it can be soon. I have notenough knowledge to implement this changes myself, I'm asking help. Thank you.
Please report briefly your one, so maybe we can collect all here

  1. Return a different object if the simple switch on or the intensity is given. I've read somewhere that in the packet Alexa sent it is possible to distinguish, it's very important for my project because I want to preserve the actual condition, that may be selected by wall buttons, and not by Node Red.
  2. Associate a specific device to a particular Echo device (by IP address for exaple, or MAC) only that Echo will comunicate with that device and discover it, in this way we can have one Node red but different Echoes, and give the same names for every floor. "Alexa switch on the light" told in the second floor will not switch on the light of the first floor
  3. chance to manually edit the ID of nodes or at least save it in the flow export, in this way if we restore the flow from the backup we don't have to discover again all devices by Alexa (a new flow will create new IDs, which Echo should not know).
  4. Unfortunately new Alexa firmware create some issues while discover devices, it may return a "failure" sound or discover devices after different minutes. Maybe not catch all active devices too. So maybe it's needed to improve compatibily to new Echo firmwares, in the past there weren't those problems I'm sure, but now maybe Echo became more strict how the device is answering it when discovering to avoid clones.. maybe hub return Echo too shortly a big quantity of informations at same time, maybe a bug in protocol, ect.

Thank you a lot for kind support!!

Discovery fails for a new "amazon echo device" on Echo Plus 2

ECHO DEVICES
  • Echo Plus 2nd generation
MODULE VERSION

most recent from ioBroker repo

Hi,
I didn't change anything in my flow diagram. It's just three amazon echo devices, one echo hub and simple outputs to an adapter data point. It still works, but when I added the third "virtual" device using this plugin, Alexa was unable to discover it. Went to shell of the Debian machine via SSH and noticed the incoming Alexa connection on port tcp#80 for some seconds by running "lsof -i -P | grep :80 | grep node-red".
Is this an incompatiblity introduced by Amazon's auto firmware upgrade?
I can still switch existing "lights" on and off but no longer discover a new one.
Deleted "light 2" of my three and re-ran discovery and didn't find light 3 and light 2. light 1 is still there (because I didn't delete it) and it works through node-red and this plugin.
Kind regards
Catfriend1

EDIT: Found my flow config.

[
    {
        "id": "af6e4652.da7d48",
        "type": "tab",
        "label": "OG-cf",
        "disabled": false,
        "info": ""
    },
    {
        "id": "9bdfa8d8.2f7368",
        "type": "amazon-echo-hub",
        "z": "af6e4652.da7d48",
        "port": "80",
        "enableinput": false,
        "x": 90,
        "y": 20,
        "wires": [
            [
                "68d402f0.ecb80c",
                "706f80f8.1a7c9",
                "9b95931e.8fc94"
            ]
        ]
    },
    {
        "id": "68d402f0.ecb80c",
        "type": "amazon-echo-device",
        "z": "af6e4652.da7d48",
        "name": "Lampe",
        "topic": "Lampe",
        "x": 430,
        "y": 20,
        "wires": [
            [
                "c4d9ecdb.0d521"
            ]
        ]
    },
    {
        "id": "79c82d45.977244",
        "type": "ioBroker out",
        "z": "af6e4652.da7d48",
        "name": "Lampe",
        "topic": "ham.0.OG-CF-Lampe.OG-CF-Lampe.On",
        "ack": "false",
        "autoCreate": "false",
        "x": 1130,
        "y": 20,
        "wires": []
    },
    {
        "id": "c4d9ecdb.0d521",
        "type": "change",
        "z": "af6e4652.da7d48",
        "name": "on_off_true_false",
        "rules": [
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "on",
                "fromt": "str",
                "to": "true",
                "tot": "bool"
            },
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "off",
                "fromt": "str",
                "to": "false",
                "tot": "bool"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 810,
        "y": 20,
        "wires": [
            [
                "79c82d45.977244",
                "c7917ffb.abf58"
            ]
        ]
    },
    {
        "id": "c7917ffb.abf58",
        "type": "debug",
        "z": "af6e4652.da7d48",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "false",
        "x": 1150,
        "y": 700,
        "wires": []
    },
    {
        "id": "706f80f8.1a7c9",
        "type": "amazon-echo-device",
        "z": "af6e4652.da7d48",
        "name": "Lautsprecher",
        "topic": "Lautsprecher",
        "x": 450,
        "y": 240,
        "wires": [
            [
                "5a7e7da2.0631a4"
            ]
        ]
    },
    {
        "id": "5a7e7da2.0631a4",
        "type": "change",
        "z": "af6e4652.da7d48",
        "name": "on_off_true_false",
        "rules": [
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "on",
                "fromt": "str",
                "to": "true",
                "tot": "bool"
            },
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "off",
                "fromt": "str",
                "to": "false",
                "tot": "bool"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 810,
        "y": 240,
        "wires": [
            [
                "c7917ffb.abf58",
                "151cf221.18985e"
            ]
        ]
    },
    {
        "id": "151cf221.18985e",
        "type": "ioBroker out",
        "z": "af6e4652.da7d48",
        "name": "Lautsprecher",
        "topic": "ham.0.SW-OG-CF-Sound.SW-OG-CF-Sound.On",
        "ack": "false",
        "autoCreate": "false",
        "x": 1150,
        "y": 240,
        "wires": []
    },
    {
        "id": "3cd4e538.098aea",
        "type": "change",
        "z": "af6e4652.da7d48",
        "name": "on_off_to_shell_param",
        "rules": [
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "on",
                "fromt": "str",
                "to": "enable-ssid SSID",
                "tot": "str"
            },
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "off",
                "fromt": "str",
                "to": "disable-ssid SSID",
                "tot": "str"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 820,
        "y": 480,
        "wires": [
            [
                "c7917ffb.abf58"
            ]
        ]
    },
    {
        "id": "9b95931e.8fc94",
        "type": "amazon-echo-device",
        "z": "af6e4652.da7d48",
        "name": "Gast-WLAN",
        "topic": "Gast-WLAN",
        "x": 450,
        "y": 480,
        "wires": [
            [
                "3cd4e538.098aea"
            ]
        ]
    }
]

Feature

Great work on a non cloud solution for echo and node integration.

I would like control devices like garage doors etc, is possible to add I intents like open and close? Or because your are using hue emulator only the hue based intents are available?

Make Amazon Echo Hub port configurable

I should have said... I have Alexa local and Alexa home nodes installed in NR.
Do I need to remove these nodes for your Amazon node to function correctly???

All Echo devices suddenly stop seeing and discovering devices -> Expecting too many devices

SUMMARY

After adding several echo devices (in Node-Red) my Amazon Echo Devices (two Echo Dots Gen 2) suddenly lost connection to all my Node-Red emulated Echo Devices.
I think it has to do with the amount of Echo devices (the Node-red ones) - i had about 7 before and 21 now.

ECHO DEVICES
  • Echo Dot 2nd generation
  • Echo Dot 2nd generation
MODULE VERSION
0.1.8
CONFIGURATION
[
    {
        "id": "15eac407.fb6abc",
        "type": "subflow",
        "name": "Bri to Percent",
        "info": "",
        "category": "",
        "in": [
            {
                "x": 50,
                "y": 30,
                "wires": [
                    {
                        "id": "b8f1531b.f990e"
                    }
                ]
            }
        ],
        "out": [
            {
                "x": 270,
                "y": 25,
                "wires": [
                    {
                        "id": "b8f1531b.f990e",
                        "port": 0
                    }
                ]
            }
        ],
        "env": []
    },
    {
        "id": "b8f1531b.f990e",
        "type": "function",
        "z": "15eac407.fb6abc",
        "name": "",
        "func": "var newMsg = { payload: msg.payload,topic:msg.topic };\nvar tmp = (msg.bri/255)*100\nnewMsg.payload =  parseFloat(tmp).toFixed(0)\nreturn newMsg;",
        "outputs": 1,
        "noerr": 0,
        "x": 157,
        "y": 32,
        "wires": [
            []
        ]
    },
    {
        "id": "1aa9a354.616dfd",
        "type": "tab",
        "label": "Alexa",
        "disabled": false,
        "info": ""
    },
    {
        "id": "7dde670.2c6c498",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Onkyo",
        "topic": "",
        "x": 330,
        "y": 120,
        "wires": [
            [
                "ae4ca620.eedfc8"
            ]
        ]
    },
    {
        "id": "f9a413a9.35929",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Rollo",
        "topic": "",
        "x": 330,
        "y": 520,
        "wires": [
            [
                "15ce87d8.584b98"
            ]
        ]
    },
    {
        "id": "15ce87d8.584b98",
        "type": "switch",
        "z": "1aa9a354.616dfd",
        "name": "",
        "property": "on",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 570,
        "y": 520,
        "wires": [
            [
                "bd9d66f6.642788"
            ],
            [
                "106e5048.4775c"
            ]
        ]
    },
    {
        "id": "5e43f764.f3e658",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Heimkino",
        "topic": "",
        "x": 340,
        "y": 440,
        "wires": [
            [
                "7cc6d29e.d6304c"
            ]
        ]
    },
    {
        "id": "d0e0ab37.0b1bf8",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Beamer",
        "topic": "",
        "x": 340,
        "y": 40,
        "wires": [
            [
                "feba68e0.342d38"
            ]
        ]
    },
    {
        "id": "feba68e0.342d38",
        "type": "switch",
        "z": "1aa9a354.616dfd",
        "name": "An/Aus",
        "property": "on",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 580,
        "y": 40,
        "wires": [
            [
                "861ae550.fa4838"
            ],
            [
                "c154df74.27888"
            ]
        ]
    },
    {
        "id": "861ae550.fa4838",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Beamer an APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/beamer?on=true",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 20,
        "wires": [
            []
        ]
    },
    {
        "id": "c154df74.27888",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Beamer aus APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/beamer?on=false",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 839,
        "y": 52,
        "wires": [
            []
        ]
    },
    {
        "id": "7f56b070.b1fcd",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Onkyo Lautstärke",
        "topic": "",
        "x": 370,
        "y": 200,
        "wires": [
            [
                "849a5970.87e288"
            ]
        ]
    },
    {
        "id": "ae4ca620.eedfc8",
        "type": "switch",
        "z": "1aa9a354.616dfd",
        "name": "An/Aus",
        "property": "on",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 580,
        "y": 120,
        "wires": [
            [
                "f4d2a84b.9cdac8"
            ],
            [
                "7b619ebe.6d7d5"
            ]
        ]
    },
    {
        "id": "f4d2a84b.9cdac8",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Reciver an APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/reciver?on=true",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 100,
        "wires": [
            []
        ]
    },
    {
        "id": "7b619ebe.6d7d5",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Reciver aus APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/reciver?on=false",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 839,
        "y": 131,
        "wires": [
            []
        ]
    },
    {
        "id": "7cc6d29e.d6304c",
        "type": "switch",
        "z": "1aa9a354.616dfd",
        "name": "An/Aus",
        "property": "on",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 580,
        "y": 440,
        "wires": [
            [
                "48d53a9f.9c15a4"
            ],
            [
                "8e58dd75.0805f"
            ]
        ]
    },
    {
        "id": "48d53a9f.9c15a4",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heimkino an APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema?on=true",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 420,
        "wires": [
            []
        ]
    },
    {
        "id": "8e58dd75.0805f",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heimkino aus APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema?on=false",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 850,
        "y": 460,
        "wires": [
            []
        ]
    },
    {
        "id": "bd9d66f6.642788",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Rollo Runter APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/rollo/tanzsaal?runter",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 500,
        "wires": [
            []
        ]
    },
    {
        "id": "106e5048.4775c",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Rollo hoch APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/rollo/tanzsaal?hoch",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 540,
        "wires": [
            []
        ]
    },
    {
        "id": "2cf22902.d5a066",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Reciver Lautstärke APICALL",
        "method": "GET",
        "ret": "obj",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/reciver?volume={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 860,
        "y": 200,
        "wires": [
            []
        ]
    },
    {
        "id": "849a5970.87e288",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 200,
        "wires": [
            [
                "2cf22902.d5a066"
            ]
        ]
    },
    {
        "id": "74f801b9.ab53b",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Onkyo Echo",
        "topic": "",
        "x": 350,
        "y": 280,
        "wires": [
            [
                "2b66b260.f3730e"
            ]
        ]
    },
    {
        "id": "ee1f823d.0d263",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Reciver Input CD APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/reciver?input=cd",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 860,
        "y": 280,
        "wires": [
            []
        ]
    },
    {
        "id": "eb750ae3.3a1348",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Onkyo HDMI",
        "topic": "",
        "x": 350,
        "y": 360,
        "wires": [
            [
                "eb3ce060.a28fd"
            ]
        ]
    },
    {
        "id": "f01cd9ea.fc8a98",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Reciver Input BD APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/cinema/reciver?input=bd",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 860,
        "y": 360,
        "wires": [
            []
        ]
    },
    {
        "id": "2b66b260.f3730e",
        "type": "switch",
        "z": "1aa9a354.616dfd",
        "name": "An/Aus",
        "property": "on",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 580,
        "y": 280,
        "wires": [
            [
                "ee1f823d.0d263"
            ],
            [
                "ee1f823d.0d263"
            ]
        ]
    },
    {
        "id": "eb3ce060.a28fd",
        "type": "switch",
        "z": "1aa9a354.616dfd",
        "name": "An/Aus",
        "property": "on",
        "propertyType": "msg",
        "rules": [
            {
                "t": "true"
            },
            {
                "t": "false"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 580,
        "y": 360,
        "wires": [
            [
                "f01cd9ea.fc8a98"
            ],
            [
                "f01cd9ea.fc8a98"
            ]
        ]
    },
    {
        "id": "7b19e177.0c8ce",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Küche Licht",
        "topic": "",
        "x": 350,
        "y": 600,
        "wires": [
            [
                "499015d2.c9448c"
            ]
        ]
    },
    {
        "id": "d9594693.1ec5c8",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Sofa Licht",
        "topic": "",
        "x": 340,
        "y": 680,
        "wires": [
            [
                "2858360f.0759aa"
            ]
        ]
    },
    {
        "id": "8cbd3e5e.6ed41",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Tanzsaal Licht",
        "topic": "",
        "x": 360,
        "y": 760,
        "wires": [
            [
                "8dd82bd8.9299a8"
            ]
        ]
    },
    {
        "id": "ec1c3574.04b298",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Diele Licht",
        "topic": "",
        "x": 350,
        "y": 840,
        "wires": [
            [
                "24342704.449c38"
            ]
        ]
    },
    {
        "id": "c646c34e.09a95",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Schlafen Licht",
        "topic": "",
        "x": 360,
        "y": 920,
        "wires": [
            [
                "28c34503.3576fa"
            ]
        ]
    },
    {
        "id": "66dfec99.a33f84",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Langley Licht",
        "topic": "",
        "x": 350,
        "y": 1000,
        "wires": [
            [
                "fa0865ee.03fac8",
                "9b367494.5f43c8"
            ]
        ]
    },
    {
        "id": "499015d2.c9448c",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Küche Licht APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights/tanzsaal/kitchen?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 600,
        "wires": [
            []
        ]
    },
    {
        "id": "2858360f.0759aa",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Sofa Licht APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights/tanzsaal/sofa?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 680,
        "wires": [
            []
        ]
    },
    {
        "id": "8dd82bd8.9299a8",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Tanzsaal Licht APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights/tanzsaal?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 850,
        "y": 760,
        "wires": [
            []
        ]
    },
    {
        "id": "24342704.449c38",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Diele Licht APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights/diele?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 840,
        "wires": [
            []
        ]
    },
    {
        "id": "28c34503.3576fa",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Schlafen LIFX APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lifx/schlafen?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 850,
        "y": 920,
        "wires": [
            []
        ]
    },
    {
        "id": "fa0865ee.03fac8",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Licht Langley APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights/langley?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 850,
        "y": 980,
        "wires": [
            []
        ]
    },
    {
        "id": "9b367494.5f43c8",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "LIFX Langley APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lifx/langley?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 850,
        "y": 1020,
        "wires": [
            []
        ]
    },
    {
        "id": "6dd6a21a.63310c",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Bad Heizung",
        "topic": "",
        "x": 350,
        "y": 1240,
        "wires": [
            [
                "3e369df3.3cef62"
            ]
        ]
    },
    {
        "id": "7a477f19.d55e7",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Diele Heizung",
        "topic": "",
        "x": 360,
        "y": 1320,
        "wires": [
            [
                "c4778369.18014"
            ]
        ]
    },
    {
        "id": "c2d21daa.c4c4d",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Tanzsaal Heizung",
        "topic": "",
        "x": 370,
        "y": 1400,
        "wires": [
            [
                "db1b9e42.dadff"
            ]
        ]
    },
    {
        "id": "f8a49680.6aabf8",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Schlafen Heizung",
        "topic": "",
        "x": 370,
        "y": 1480,
        "wires": [
            [
                "2ccd0a68.156486"
            ]
        ]
    },
    {
        "id": "2f9cec2c.a55714",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Langley Heizung",
        "topic": "",
        "x": 370,
        "y": 1560,
        "wires": [
            [
                "873b5ae2.542ee8"
            ]
        ]
    },
    {
        "id": "264011e3.c9c19e",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Meade Licht",
        "topic": "",
        "x": 350,
        "y": 1080,
        "wires": [
            [
                "c5f1d1ae.e995"
            ]
        ]
    },
    {
        "id": "34e60a7b.410096",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Licht",
        "topic": "",
        "x": 330,
        "y": 1160,
        "wires": [
            [
                "8c6172fb.6141b"
            ]
        ]
    },
    {
        "id": "c5f1d1ae.e995",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Meade Licht APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights/meade?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 1080,
        "wires": [
            []
        ]
    },
    {
        "id": "8c6172fb.6141b",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Licht APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/lights?on={{{payload.on}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 820,
        "y": 1160,
        "wires": [
            []
        ]
    },
    {
        "id": "24c614db.8860ac",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heizung Bad APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/heating/bad?temp={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 840,
        "y": 1240,
        "wires": [
            []
        ]
    },
    {
        "id": "fde92caa.9e547",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heizung Diele APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/heating/diele?temp={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 850,
        "y": 1320,
        "wires": [
            []
        ]
    },
    {
        "id": "b931cac0.840a68",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heizung Tanzsaal APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/heating/tanzsaal?on={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 860,
        "y": 1400,
        "wires": [
            []
        ]
    },
    {
        "id": "8924779c.7042e8",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heizung Schlafen APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/heating/schlafen?on={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 860,
        "y": 1480,
        "wires": [
            []
        ]
    },
    {
        "id": "4e2f1afd.274ff4",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heizung Langley APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/heating/langley?temp={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 860,
        "y": 1560,
        "wires": [
            []
        ]
    },
    {
        "id": "3e369df3.3cef62",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 1240,
        "wires": [
            [
                "24c614db.8860ac"
            ]
        ]
    },
    {
        "id": "c4778369.18014",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 1320,
        "wires": [
            [
                "fde92caa.9e547"
            ]
        ]
    },
    {
        "id": "db1b9e42.dadff",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 1400,
        "wires": [
            [
                "b931cac0.840a68"
            ]
        ]
    },
    {
        "id": "2ccd0a68.156486",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 1480,
        "wires": [
            [
                "8924779c.7042e8"
            ]
        ]
    },
    {
        "id": "873b5ae2.542ee8",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 1560,
        "wires": [
            [
                "4e2f1afd.274ff4"
            ]
        ]
    },
    {
        "id": "d5a354fc.d4ffe8",
        "type": "amazon-echo-device",
        "z": "1aa9a354.616dfd",
        "name": "Heizung",
        "topic": "",
        "x": 340,
        "y": 1640,
        "wires": [
            [
                "39c0db01.1a85f4"
            ]
        ]
    },
    {
        "id": "6c49f07e.37644",
        "type": "http request",
        "z": "1aa9a354.616dfd",
        "name": "Heizung APICALL",
        "method": "GET",
        "ret": "txt",
        "paytoqs": false,
        "url": "http://127.0.0.1:1880/heating?temp={{{payload}}}",
        "tls": "",
        "proxy": "",
        "authType": "basic",
        "x": 830,
        "y": 1640,
        "wires": [
            []
        ]
    },
    {
        "id": "39c0db01.1a85f4",
        "type": "subflow:15eac407.fb6abc",
        "z": "1aa9a354.616dfd",
        "name": "",
        "env": [],
        "x": 600,
        "y": 1640,
        "wires": [
            [
                "6c49f07e.37644"
            ]
        ]
    },
    {
        "id": "e5a24360.70e36",
        "type": "amazon-echo-hub",
        "z": "1aa9a354.616dfd",
        "port": "80",
        "enableinput": false,
        "x": 90,
        "y": 840,
        "wires": [
            [
                "d0e0ab37.0b1bf8",
                "7dde670.2c6c498",
                "7f56b070.b1fcd",
                "74f801b9.ab53b",
                "eb750ae3.3a1348",
                "5e43f764.f3e658",
                "f9a413a9.35929",
                "7b19e177.0c8ce",
                "d9594693.1ec5c8",
                "8cbd3e5e.6ed41",
                "ec1c3574.04b298",
                "c646c34e.09a95",
                "66dfec99.a33f84",
                "264011e3.c9c19e",
                "34e60a7b.410096",
                "6dd6a21a.63310c",
                "7a477f19.d55e7",
                "c2d21daa.c4c4d",
                "f8a49680.6aabf8",
                "2f9cec2c.a55714",
                "d5a354fc.d4ffe8"
            ]
        ]
    }
]
CONSOLE OUTPUT

When running as a service:

root@nodered:~# systemctl status nodered.service
● nodered.service - Node-RED graphical event wiring tool
   Loaded: loaded (/lib/systemd/system/nodered.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-06-22 20:11:12 CEST; 23min ago
     Docs: http://nodered.org/docs/hardware/raspberrypi.html
 Main PID: 777 (node-red)
    Tasks: 10 (limit: 19660)
   CGroup: /system.slice/nodered.service
           └─777 node-red

Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Schlafen Rechts] New bulb found: Schlafen Links : d073d52cb3cc
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Schlafen Links] New bulb found: Schlafen Links : d073d52cb3cc
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Strip Tanzsaal] New bulb found: Strip Langley : d073d52e5778
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Strip Langley] New bulb found: Strip Langley : d073d52e5778
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Schlafen Rechts] New bulb found: Strip Langley : d073d52e5778
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Schlafen Links] New bulb found: Strip Langley : d073d52e5778
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Strip Tanzsaal] New bulb found: Schlafen Rechts : d073d52e8b62
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Strip Langley] New bulb found: Schlafen Rechts : d073d52e8b62
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Schlafen Rechts] New bulb found: Schlafen Rechts : d073d52e8b62
Jun 22 20:29:35 nodered Node-RED[777]: 22 Jun 20:29:35 - [info] [lifx:Schlafen Links] New bulb found: Schlafen Rechts : d073d52e8b62

When running from the console:

root@nodered:~# node-red-start

Start Node-RED

Once Node-RED has started, point a browser at http://MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET:1880
On Pi Node-RED works better with the Firefox or Chrome browser

Use   sudo systemctl enable nodered.service  to autostart Node-RED at every boot
Use   sudo systemctl disable nodered.service to disable autostart on boot

To find more nodes and example flows - go to http://flows.nodered.org
22 Jun 20:07:38 - [info]

Willkommen bei Node-RED!
===================

22 Jun 20:07:38 - [info] Node-RED Version: v0.20.5
22 Jun 20:07:38 - [info] Node.js  Version: v8.15.0
22 Jun 20:07:38 - [info] Linux 4.9.0-8-amd64 x64 LE
22 Jun 20:07:38 - [info] Palettenknoten werden geladen
22 Jun 20:07:38 - [warn] rpi-gpio : Raspberry Pi-spezifischer Knotenset inaktiv
22 Jun 20:07:38 - [warn] rpi-gpio : Pi RPi.GPIO-Python-Bibliothek nicht gefunden
22 Jun 20:07:38 - [info] node-red-contrib-ccu version: 3.0.0-beta.2
22 Jun 20:07:38 - [info] Einstellungsdatei: /root/.node-red/settings.js
22 Jun 20:07:38 - [info] Kontextspeicher: 'default' [ module=memory]
22 Jun 20:07:38 - [info] Benutzerverzeichnis: /root/.node-red
22 Jun 20:07:38 - [warn] Projekte inaktiviert: editorTheme.projects.enabled=false
22 Jun 20:07:38 - [info] Flow-Datei: /root/.node-red/flows_nodered.json
22 Jun 20:07:38 - [info] Server wird jetzt auf http://127.0.0.1:1880/ ausgeführt.
22 Jun 20:07:38 - [warn]

---------------------------------------------------------------------
Die Datei mit den Datenflowberechtigungsnachweisen wird mit einem vom System generierten Schlüssel verschlüsselt.

Wenn der vom System generierte Schlüssel aus irgendeinem Grund verloren geht, werden Ihre Berechtigungsnachweise
Die Datei kann nicht wiederhergestellt werden. Sie müssen sie löschen und erneut eingeben.
Ihre Berechtigungsnachweise.

Sie sollten Ihren eigenen Schlüssel mit Hilfe der Option 'credentialSecret' in
Ihre Einstellungsdatei. Node-RED wird dann Ihre Berechtigungsnachweise erneut verschlüsseln.
Datei mit dem ausgewählten Schlüssel beim nächsten Implementieren einer Änderung verwenden.
---------------------------------------------------------------------

22 Jun 20:07:38 - [info] Flows starten
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] paramsets loaded from /root/.node-red/paramsets.json
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] metadata loaded from /root/.node-red/ccu_MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET.json
22 Jun 20:07:39 - [info] Flows gestartet
22 Jun 20:07:39 - [info] [lifx:Strip Tanzsaal] New bulb found: Strip Langley : d073d52e5778
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] Interfaces: ReGaHSS, BidCos-RF, HmIP-RF, VirtualDevices
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] ReGaHSS http port 1999 connected
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] init BidCos-RF http://MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET:2047 nr_7khg0R_BidCos-RF
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] init HmIP-RF http://MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET:2047 nr_7khg0R_HmIP-RF
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] init VirtualDevices http://MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET:2047 nr_7khg0R_VirtualDevices
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] xmlrpc server listening on http://MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET:2047
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] BidCos-RF http port 2001 connected
22 Jun 20:07:39 - [info] [lifx:Strip Langley] New bulb found: Strip Langley : d073d52e5778
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] HmIP-RF http port 2010 connected
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] VirtualDevices http port 9292 connected
22 Jun 20:07:39 - [info] [lifx:Schlafen Rechts] New bulb found: Strip Langley : d073d52e5778
22 Jun 20:07:39 - [info] [lifx:Schlafen Links] New bulb found: Strip Langley : d073d52e5778
22 Jun 20:07:39 - [info] [ccu-connection:MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET] metadata saved to /root/.node-red/ccu_MY_LOCAL_CCU_ADDRESS_THAT_HAS_NO_PLACE_ON_THE_INTERNET.json
22 Jun 20:07:39 - [info] [lifx:Strip Tanzsaal] New bulb found: Strip Tanzsaal : d073d52c5255
22 Jun 20:07:39 - [info] [lifx:Strip Langley] New bulb found: Strip Tanzsaal : d073d52c5255
22 Jun 20:07:39 - [info] [lifx:Schlafen Rechts] New bulb found: Strip Tanzsaal : d073d52c5255
22 Jun 20:07:39 - [info] [lifx:Schlafen Links] New bulb found: Strip Tanzsaal : d073d52c5255
22 Jun 20:07:40 - [info] [lifx:Strip Tanzsaal] New bulb found: Schlafen Links : d073d52cb3cc
22 Jun 20:07:40 - [info] [lifx:Strip Langley] New bulb found: Schlafen Links : d073d52cb3cc
22 Jun 20:07:40 - [info] [lifx:Schlafen Rechts] New bulb found: Schlafen Links : d073d52cb3cc
22 Jun 20:07:40 - [info] [lifx:Schlafen Links] New bulb found: Schlafen Links : d073d52cb3cc
22 Jun 20:07:40 - [info] [lifx:Strip Tanzsaal] New bulb found: Schlafen Rechts : d073d52e8b62
22 Jun 20:07:40 - [info] [lifx:Strip Langley] New bulb found: Schlafen Rechts : d073d52e8b62
22 Jun 20:07:40 - [info] [lifx:Schlafen Rechts] New bulb found: Schlafen Rechts : d073d52e8b62
22 Jun 20:07:40 - [info] [lifx:Schlafen Links] New bulb found: Schlafen Rechts : d073d52e8b62
Error: ENOENT: no such file or directory, stat '/root/.node-red/node_modules/node-red-node-swagger/swagger/locales/de-DE/swagger.json'

STEPS TO REPRODUCE

Well i added more Echo devices to my flow.

EXPECTED RESULTS

Everything works just fine and my Echo Dots find more devices.

ACTUAL RESULTS

Echo Dots lost connection the Echo devices and lost the ability to find the new ones

Echo Plus as gateway?

My configuration:

  • Amazon Echo Plus
  • 1x Philips Hue Bulb
  • 1x Ikea Tradfri Bulb
  • 2x Sonoff/Tasmota switch
  • Raspberry Pi with MQTT and Node-Red

I do not own a Hue Bridge or a Tradfri Gateway.

The Sonoff switches work as a charm. I can control them using Alexa voice command, Alexa app, physical switches and so on.
The bulbs can be controlled via Alexa voice commands and app, since my Echo Plus integrate a Zigbee protocol to comunicate with these.
I'd like to control them using some flows in node red. For example: use a sonoff as a switch button -> mqtt message -> node red -> echo plus -> Philips Hue bulb turns on. This is what I'd like to do. Is it possibile in some way or I MUST buy a Philips Hue bridge?

Can this work with an AVS device?

First of all, thank you for your work!
Now my question: I have been working on a RPi AVS enabled device (with official SDK) and after a lot of headaches, I discovered that neither this nor other LAN addons work with my device unless a real Alexa device is on and in the same LAN.
Would it be possible to make this plugin work locally, without linking to any Alexa skiil and with my Raspberry Pi with Alexa SDK on it?

Thanks,

Differentiate between "On", "Off" and "DIM" or other commands

When Alexa is asked to Turn a light on or off, the msg.on variable is true or false and can be used to identify the state.

If Alexa is asked to dim the light to say 25%, msg.on is also true and you have no way of telling, that it was a dim command. My physical light needs to know if it was on, off or dim.
Is that possible. msg.payload is rendunant to msg.on, so that could be used?

Add client IP address

It would be good to have the IP address of the Amazon Echo that sent the request in the JSON data. This would allow better automatisations with multiple Echo devices in the same apartment.

Alexa stops searching for devices

This may not be a bug, but it's good to report as alert, and I would like to know if someone had eperienced it too.
It happened just recently, not with previous Echo firmware releases, but I can't say since when.. cause for quite long time I haven't searched for new devices. I have Echo Plus v2
On find new device vocal command Alexa refuses playing a "failure" sound (no voices messages), this should be enough to consider a firmware bug of Alexa (why it stops searching? If may a device can be bad she has just to discard it, and not to refuse to search forever..). To fix it I did once a manual remove of all devices from Alexa account (better use browser, select all, remove), then unregistered Alexa from app while I set Alexa to config mode (keep pressing its button), waited one minute it resets and says "wlecome.. blabla", associate again and yes.. searchig of devices was again working.

I've around 40 devices mapped, maybe 50, all devices comeing only from Node Red using this module. After search on one device I adviced it worked from Phone app well, I can change the intensity, on and off, but Alexa told me by words that this device doesn't support that function ("Alexa, switch (this device) off"), strange, another bug probably.
Just reporting cause chances can be this devices can create problems on Alexa. I reported already the issues to Amazon.

Does it work with only Alexa App?

SUMMARY

Will this work with just node red and the alexa app?

I don't actually have an echo device but do have sonos one with alexa configured. I am unable to get it to find the devices from the alexa app. Have also tried asking alexa on the sonos to find devices without any luck..

ECHO DEVICES

Alexa app on phone and sonos one

MODULE VERSION

0.1.8
Node-RED version: v0.20.0
Node.js version: v10.15.3

CONFIGURATION

just a basic hub connected to 1 device
I have it configured correctly on port 80, and can access http://192.168.1.201/description.xml

<root xmlns="urn:schemas-upnp-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<URLBase>http://192.168.1.201:80/</URLBase>
<device>
<deviceType>urn:schemas-upnp-org:device:Basic:1</deviceType>
<friendlyName>Philips hue (192.168.1.201)</friendlyName>
<manufacturer>Royal Philips Electronics</manufacturer>
<manufacturerURL>http://www.philips.com</manufacturerURL>
<modelDescription>Philips hue Personal Wireless Lighting</modelDescription>
<modelName>Philips hue bridge 2012</modelName>
<modelNumber>1000000000000</modelNumber>
<modelURL>http://www.meethue.com</modelURL>
<serialNumber>93eadbeef13</serialNumber>
<UDN>uuid:00112233-4455-6677-8899-a0e115acd0fc28</UDN>
<serviceList>
<service>
<serviceType>(null)</serviceType>
<serviceId>(null)</serviceId>
<controlURL>(null)</controlURL>
<eventSubURL>(null)</eventSubURL>
<SCPDURL>(null)</SCPDURL>
</service>
</serviceList>
<presentationURL>index.html</presentationURL>
<iconList>
<icon>
<mimetype>image/png</mimetype>
<height>48</height>
<width>48</width>
<depth>24</depth>
<url>hue_logo_0.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<height>120</height>
<width>120</width>
<depth>24</depth>
<url>hue_logo_3.png</url>
</icon>
</iconList>
</device>
</root>
CONSOLE OUTPUT
STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS

Device discovery

With only one hug, at least with gen 3 Echo Dots - after the first node is added, subsequent nodes work but Echo says it cant find any new devices. I have maybe 10 devices on th page.

All software up to date and gen 3 Echos bought yesterday.

Any thoughts?

Which element to identify its activation comes from to prevent input pasthrough

I have just want to know which element to identify its activation comes from to prevent input pasthrough
eg: to prevent input passthrough if the trigger from input node, of course
it will send the command if the trigger is from Alexa.

image

for example:

  • in node-red-contrib-alexa-local i detect the topic is null or not to prevent input pass through.
    image

  • in node-red-contrib-homekit I detect the msg.hap.context is null or not to prevent input pass through.
    image

Hub on another Flow

Hi how can i use the same hub on another flow? The port is busy.

"Error: listen EADDRINUSE :::80"

Unable to start on Port 80

Enable/Disable of device nodes

Add feature to enable/disable device nodes.

If device node is disabled, Alexa will not be able to:

  • discover it
  • control it

All disabled devices that are already discovered will show an error: "Server is not responsive" or |Device malfunction" in the Alexa app

How to use echo hub node in multiple flows

Hello Experts,

I have echo 3rd generation.This module works perfectly fine with 3rd generation echo on port 80.

The issue is i am not able to use the echo hub node in different flow.Can some please provide some trick on how we can use echo hub node in multiple flows.

if i copy and paste in different flow,it will not run on port 80 since already used.
If i change port to other then 80,then not able to send any thing.
even if i create subflow as a single node,its giving error.

If I import a flow (for example backup) Alexa will not control more devices

Hi, for the first time on my NR I had to clear all flows and restore the latest backup (export- clipboard - all flows), all was working exept this modules and the reason I believe is because during the Alexa searching the module send to it the node number that NR create for every device, and when I create a new flow NR will assign new numbers to nodes, different ones. I checked that Alexa sent to HUB the proper message (I've logged it) but the HUB can't more redirect it to the proper device, message is lost. I should remove all Alexa devices (better to reset Alexa completely) and search again for all devices.

Of course with this method we can't export the flow and restore it easy as we should suppose to do, so I would suggest to add on devices proprieties a manual ID field, which can be precompiled with the ID that NR created for that node, so the user don't have to define it. In this way these infos can be exported on the clipboard and restored automatically on the backup.
At this moment the only solution to restore flows 100% seems to backup the flows_raspberrypi.json file and restore it

No White Spectrum

Since 0.1.6 no White Spectrum avalible and Color goes always back to Peppermint Creme
Hue Output is alway 0

Docker EACCES permission denied

SUMMARY

I'm running Node-RED in a docker container. Everything else works fine. I've even used the contrib-alexa-local palette with no problems. The nodered container is running as root (--user 0, and also tried --user root). I'm using --network host (also tried --net=host). I'm still getting the Error: listen EACCES: permission denied 0.0.0.0:80.

I've tried the iptables settings on the host system (i.e. outside the container), the Node RED container doesn't have iptables installed.

ECHO DEVICES

2x Echo Dot 2nd generation
1x Echo Dot 3rd generation

MODULE VERSION
0.1.8
CONFIGURATION
![image](https://user-images.githubusercontent.com/45885373/52917323-e2096980-329e-11e9-93da-4a50eef2b9d0.png)

Not sure if the image is showing, but basically, I've just got the Amazon Echo Hub, and under it is a red warning stating Unable to start on port 80
CONSOLE OUTPUT
17 Feb 18:27:55 - [info] Starting flows
17 Feb 18:27:57 - [info] Started flows
17 Feb 18:27:57 - [error] Error: listen EADDRINUSE :::80
    at Server.setupListenHandle [as _listen2] (net.js:1360:14)
    at listenInCluster (net.js:1401:12)
    at Server.listen (net.js:1485:7)
    at new AmazonEchoHubNode (/data/node_modules/node-red-contrib-amazon-echo/index.js:47:20)
    at createNode (/usr/src/node-red/node_modules/node-red/red/runtime/nodes/flows/Flow.js:305:18)
    at Flow.start (/usr/src/node-red/node_modules/node-red/red/runtime/nodes/flows/Flow.js:89:35)
    at start (/usr/src/node-red/node_modules/node-red/red/runtime/nodes/flows/index.js:328:29)
    at tryCatchReject (/usr/src/node-red/node_modules/when/lib/makePromise.js:845:30)
    at runContinuation1 (/usr/src/node-red/node_modules/when/lib/makePromise.js:804:4)
    at Fulfilled.when (/usr/src/node-red/node_modules/when/lib/makePromise.js:592:4)
    at Pending.run (/usr/src/node-red/node_modules/when/lib/makePromise.js:483:13)
    at Scheduler._drain (/usr/src/node-red/node_modules/when/lib/Scheduler.js:62:19)
    at Scheduler.drain (/usr/src/node-red/node_modules/when/lib/Scheduler.js:27:9)
    at _combinedTickCallback (internal/process/next_tick.js:132:7)
    at process._tickCallback (internal/process/next_tick.js:181:9)

STEPS TO REPRODUCE

Not much to describe

EXPECTED RESULTS
ACTUAL RESULTS

Port 80 and new gen 3 problems

Help - I'm a known happy user of Amazon-Echo node.... all has been well, I use user Pi (not root) - and I use port 8980 for the node - worked a treat fo weeks until yesterday when I replaced my generation 1 DOTS with generation 3... and all of a sudden the node won't work sny more - I am using port 80 on my PI for other stuff - ie web pages - and I HAVE to use user pi for NR.

Someone please tell me there's a way around this - I have lots of stuff using nr-contrib-amazon-echo.

If Echo is insisting on sending to port 80 does this mean I have to move my existing web server and lots of other stuff to another port AND figure out how to port forward from 8980 to 80?

msg.percentage not available

SUMMARY
Update with percentage does not appear in repo node-red. It's not a part of the MSG object. Could you update the version in Node-Red to support the percentage added in: Output original percentage request of brightness value #45

--

update: installed the version direcly from github.

No devices found with Echo 2 and Echo Dot 3

Hi all together,

I'm currently trying to dicover devices using the Amazon echo hub node. Heres my flow:
grafik
The hub has the following config:
grafik

Port 80 is open:
grafik

No firewall is in place. Node-Red runs on Centos 7 via ioBroker as root. SELinux is disabled.
Telnet to port 80 from another device is successful.

Alexa app tells there are no new devices found. Any ideas?

Thanks in advance!

feedback from tasmota

I plan to use a Sonoff/Tasmota to control my room's lights. Everything is configured and working with node red. But if I activate/deactivate the physical button on the Sonoff I don't get the status back in my Alexa app.
What do I have to put in input to the Alexa hub node and how do I have to configure it in order to update in real time the status of the Sonoff?

Interaction with Alexa

Hello.

It is not really an issue... but it's connected with the node-red-contrib-amazon-echo.

First of all... great job! I used the local version before without color change possibility. Now I can even change the color. Awesome!
But it also gives me headache. I have RGBW leds, which I control in different ways. Via Web, via Alexa, partly automatic. The thing is now that - if I change the color via web form - then Alexa does not know about the color change and has still its own settings.
Is there any way that I give a feedback to Alexa that the color setting changed (not via voice control of course).

Also... is there now a way to give feedback after a voice command. Alexa says alway "OK" for any command. Regardles if the command was successfull or not. I would like to 'tell Alexa' what to say. Is it possible?

Root user?

Does NR HAVE to be run as root user? The guys at IBM have always suggested NOT doing that - I run NR as PI user. And if that is possible - is there a way to change port 80, as I already have a webserver running on port 80?? Sounds more like a feature-erquest/query than an issue.

Alexa App is not getting status change update by mqtt

Hello Experts,

I have used node-red-contrib-amazon-echo and it works like a charm in one way.

My device can be turned on/off by mqtt.

With this module its working with echo dot 3rd generation but when i change the status via mqtt,it is not reflecting in alexa app.

Please resolve the issue.
Thanks in advance.

Untitled

Identify specific echo device

SUMMARY

Is it possible to distingush my echo devices somehow? is there a unique echo device ID which can be added to the payload?

ECHO DEVICES
MODULE VERSION

0.1.8

CONFIGURATION

##### CONSOLE OUTPUT
<!--- Paste Node-RED console output between quotes -->
```paste below

STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS

Node-Red Link and amazon echo nodes

Latest nodes, up to date Node-Red. I have a page of working smszon-alexa devices with one hub. I tried putting more on a second page. Of coures you can have only one hub (at leat on the same port).

So I hit the idea of using the NR LINK to link the hub to a second page of devices - doesn't work. Any idea why?

Need Wiki for "Error: listen EACCES: permission denied 0.0.0.0:80"

Hi,
I am finding the document or any Wiki to fix "Error: listen EACCES: permission denied 0.0.0.0:80" issue.

eg:
1- Node-red is installed standalone on a Pi 3B+. How to enable node-red process to be started with root user? Currently i encounter this. please advise. Thanks.

2- Can "Amazon Echo Hub" node work with HTTPS enabled Node-Red?
Update: 3- Can this node work if i have Echo or Echo Dot with multi generation(Original v1, v2, v3)?

Thanks.

My wife's account can't' see devices

SUMMARY

We have two accounts using Echo - mine, and my wife's. While my account can see all the devices created, when I switch to my wife's account, it doesn't see any of the devices I created.

ECHO DEVICES

2x Echo Dot 2nd gen
1x Echo Dot 3rd gen

MODULE VERSION
0.1.8
CONFIGURATION
Amazon Echo Hub <-> Test node <-> mqtt output
CONSOLE OUTPUT
`20 Feb 15:55:43 - [debug] [api-call-service:Foyer Light Off] instantiated node, name: Foyer Light Off
20 Feb 15:55:43 - [debug] [api-call-service:Unlock Front Door] instantiated node, name: Unlock Front Door
20 Feb 15:55:43 - [debug] [api-call-service:Den Lights On] instantiated node, name: Den Lights On
20 Feb 15:55:43 - [debug] [api-call-service:Den Lamp On] instantiated node, name: Den Lamp On
20 Feb 15:55:43 - [debug] [api-call-service:Den Lights Off] instantiated node, name: Den Lights Off
20 Feb 15:55:43 - [debug] [api-call-service:Den Lamp Off] instantiated node, name: Den Lamp Off
20 Feb 15:55:43 - [debug] [api-call-service:Bedroom On] instantiated node, name: Bedroom On
20 Feb 15:55:43 - [debug] [api-call-service:Mood Lighting On] instantiated node, name: Mood Lighting On
20 Feb 15:55:44 - [debug] [api-call-service:Bedroom Off] instantiated node, name: Bedroom Off
20 Feb 15:55:44 - [debug] [api-call-service:Mood Lighting Off] instantiated node, name: Mood Lighting Off
20 Feb 15:55:44 - [debug] [server-state-changed:Bedroom Switch] instantiated node, name: Bedroom Switch
20 Feb 15:55:44 - [debug] [server-state-changed:Kitchen Switch] instantiated node, name: Kitchen Switch
20 Feb 15:55:44 - [debug] [api-call-service:Kitchen Lights On] instantiated node, name: Kitchen Lights On
20 Feb 15:55:44 - [debug] [api-call-service:Kitchen Lights Off] instantiated node, name: Kitchen Lights Off
20 Feb 15:55:44 - [info] Started flows
20 Feb 15:55:44 - [info] [mqtt-broker:MQTT Broker] Connected to broker: mqtt://10.10.10.3:1883
20 Feb 15:55:44 - [info] [server:Home Assistant] WebSocket Connected to https://example.org
20 Feb 15:55:44 - [debug] [server:Home Assistant] config server event listener connected
20 Feb 16:10:45 - [info] Uninstalling module: node-red-contrib-alexa-local
20 Feb 16:11:43 - [info] Uninstalled module: node-red-contrib-alexa-local
20 Feb 16:11:43 - [info] Removed node types:
20 Feb 16:11:43 - [info]  - node-red-contrib-alexa-local:alexa-local
20 Feb 16:11:48 - [info] [server:Home Assistant] WebSocket Closed https://example.org
20 Feb 16:11:48 - [debug] [server:Home Assistant] config server event listener closed
20 Feb 16:11:48 - [debug] [server:Home Assistant] WebSocket Connecting https://example.org
20 Feb 16:11:48 - [debug] [server:Home Assistant] config server event listener connecting
20 Feb 16:11:48 - [info] [server:Home Assistant] WebSocket Connected to https://example.org
20 Feb 16:11:48 - [debug] [server:Home Assistant] config server event listener connected
`
STEPS TO REPRODUCE

Alexa, discovery devices

EXPECTED RESULTS

Devices should show up in my wife's account

ACTUAL RESULTS

Nothing

Not Working Echodot 3rd Generation

SUMMARY

I am using Amazon Alexa Echo dot 3rd Gen
currently running Home Assistant 0.91.3 (hass.io) on Raspberry Pi
Using NodeRed addon (currently running version 2.0.2) on Hassio
The wiki page says "No additional settings are needed if Node-Red is started as Home Assistant add-on"

My Echo dot doesn't recognize any new devices after discovery, no debug report as well.

Please help

ECHO DEVICES

Amazon Echo dot 3rd Gen

MODULE VERSION
node-red-contrib-amazon-echo
0.1.8
CONFIGURATION
[{"id":"c15f854f.0a7688","type":"amazon-echo-hub","z":"64e1b166.51d91","port":"80","enableinput":false,"x":166,"y":195,"wires":[["4756b904.76b378","722ecd05.ebc714"]]},{"id":"4756b904.76b378","type":"amazon-echo-device","z":"64e1b166.51d91","name":"Laptop","topic":"","x":356,"y":154,"wires":[["1cd9a957.3c2427"]]},{"id":"722ecd05.ebc714","type":"debug","z":"64e1b166.51d91","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":396,"y":265,"wires":[]},{"id":"1cd9a957.3c2427","type":"debug","z":"64e1b166.51d91","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":687,"y":191,"wires":[]}]
CONSOLE OUTPUT

STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.