-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Discovery fails for a new "amazon echo device" on Echo Plus 2 #41
Comments
I don't have a 2nd generation Echo (only 3rd) but it appears that Alexa is looking for a (emulated) Hue server on port 80. However, port 80 requires elevated privileges. Are you running node-red as root? Otherwise, for this to work you need to run a reverse proxy such as nginx. file /etc/nginx/conf.d/alexa.conf: For Hue emulation via Node-Redserver {
} I am running this node red module on unprivileged port 8081 and the reverse proxy sends all traffic to port 80. Check that the server works by doing: You should see a json file starting with 'lights' (192.168.1.130 is where I run node-red). Also, make sure that everything is on the same local network! |
Thanks for your help ful post. I've got two iobroker servers , one ran it as root and the other is now running it as user iobroker. Port 80 is reachable from the network and alexa is also on this net. Somehow, I have a feeling that an alexa autoupdate broke things as everything worked with my two devices and rediscovery after deletion from the alexa app also worked fine. I deleted all devices and only the first got rediscovered by alexa (lampe). Lautsprecher and Gastnetz weren't discovered. I can still use speech commands for lampe, the first device. I setup a new amazon account and again, after setting up alexa echo plus 2 it only discovered the first device. Do you have any hints e.g. on Wireshark where and how to look at alexas local net comm? |
I am not sure I understand the role of iobroker in your setup. You could try to remove it for debugging purposes and start from scratch with Node Red and this module only. Add three Amazon Echo Devices (and name them as before - Lampe, Lautsprecher and Gastnetz). Restart node-red and see if Alexa discovers them. Most of my issues were cleared with a full restart of node-red. The module emulates a Hue Bridge, so nothing else is needed for the discovery. The discovery process goes like this: 1 - Receive - SSDP M-Search Where is the ip address of the machine running the node red server. To debug, you could either log traffic with nginx or modify the code to make it print what it's receiving. For example, you could add the line The part of the code relevant to discover appears to be: ` //
` Hope this helps a bit. |
Thanks, I'll make a Debugging session with your tips and report back. :-) |
Thank you mates for your efforts here, the main creator here still not answer and we need to fix ourselves. |
No library. Everything is contained in the author's module. The server is defined in the file index.js. In the following lines:
to see the traffic, you can add the line hubNode.warn(req) in the area of the code that process requests from the Echo (commented here):
Hope this helps get you started. |
Thank you! Which file is this "app"? http.createServer(app) |
Ok, I wanted to debug this but before I could start to observe anything my first manual command "alexa, search for devices" immediately brought devices 2 and 3 back (as I repeatedly tried a week ago without success and just got device 1 discovered).This leads me to the assumption an Amazon Firmware Update temporarily caused the discovery problem. I didn't touch the debian server vm with iobroker+nodered in the meantime because of lack of time. |
ECHO DEVICES
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.
The text was updated successfully, but these errors were encountered: