datech / node-red-contrib-amazon-echo

Alexa controlled Node-Red nodes supporting latest Amazon Echo devices. NO Alexa Skills required. NO cloud dependencies.
MIT License
140 stars 42 forks source link

No devices found with Echo 2 and Echo Dot 3 #9

Closed nike12354 closed 5 years ago

nike12354 commented 5 years ago

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!

datech commented 5 years ago

Hello,

Can you confirm the following:

nike12354 commented 5 years ago

Hi datech,

thanks for your response!

Here the results: grafik

Further information:

datech commented 5 years ago

Looks like the SSDP multicast traffic is not routed to the virtual machine.

I’ve just found this: Enable Multicast Snooping on a vSphere Distributed Switch https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-50AF72D4-F766-4D68-8330-BA15250E4E99.html

nike12354 commented 5 years ago

This only applies to Virtual distributed switches using a vSphere vCenter (I don't use vCenter). I already checked this. The vSwitch (not distributed) i use has no multicast filtering enabled.

Nevertheless thank you :)! Do you have any other ideas?

nike12354 commented 5 years ago

What about the working node-red Wemo emulator - isn't it using SSDP as well? Only for diagnosis of the problem.

datech commented 5 years ago

I see, just ESX without vCenter.

Yep, Wemo emulator is using SSDP.

You may try to sniff the SSDP traffic. It has to be:

Src: <ECHO DEVICE IP>, Dst: 239.255.255.250, Protocol: SSDP
Src: <NODE-RED IP>, Dst: <ECHO DEVICE IP>, Protocol: UDP
Src: <ECHO DEVICE IP>, Dst: <NODE-RED IP>, Protocol: HTTP,  GET /description.xml
nike12354 commented 5 years ago

Okay I will install wireshark in a few minutes.

But I think this may be the wrong direction because SSDP works with the wemo.

I'll reply in a few minutes

nike12354 commented 5 years ago

I did various sniffs - Alexa sends various SSDP packages, but my server does not reply. Just to be sure i deployed a Wemo node on the same server - now it answers visbly in wireshark, but only for the wemo.

datech commented 5 years ago

I'm using "peer-ssdp" module to implement the discovery procedure. The library is responding with packages which are not recognize as SSDP by Wireshark. So, if you use Wireshark the packages will be marked just as UDP. Wemo emulator is using "node-ssdp" module and it seems that it is responding with correct SSDP packages.

Anyway, can you try to sniff the traffic on the Node-Red machine with tcpdump:

sudo tcpdump -i <your-network-interface> udp and dst <echo-device-ip> -vv -X

The package we are looking for is similar to this one:

.....:.P./..HTTP
/1.1.200.OK..HOS
T:.239.255.255.2
50:1900..CACHE-C
ONTROL:.max-age=
100..EXT:...LOCA
TION:.http://XXX
.XXX.XXX.XXX:80/d
escription.xml..
SERVER:.Linux/3.
14.0.UPnP/1.0.Ip
Bridge/1.17.0..S
T:.urn:schemas-u
pnp-org:device:b
asic:1..USN:.uui
d:00112233-4455-
6677-8899-..DATE
:.Sun,.27.Jan.20
19.00:12:44.GMT.
datech commented 5 years ago

Can you check if the new version (v0.1.5), that is using node-ssdp, will fix the issue?

nike12354 commented 5 years ago

Hey datech,

Thank you again! I will check this soon :).

Outlook für Androidhttps://aka.ms/ghei36 herunterladen


From: Teodor Ivanov notifications@github.com Sent: Sunday, January 27, 2019 10:24:50 AM To: datech/node-red-contrib-amazon-echo Cc: nike12354; Author Subject: Re: [datech/node-red-contrib-amazon-echo] No devices found with Echo 2 and Echo Dot 3 (#9)

Can you check if the new version (v0.1.5), that is using node-ssdp, will fix the issue?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/datech/node-red-contrib-amazon-echo/issues/9#issuecomment-457902164, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Asb_AePSi8RBiTd8R0pR0KXJXQ2RIS9rks5vHXBigaJpZM4aUVdS.

nike12354 commented 5 years ago

Good morning,

I can report some success. Now I can see ssdp traffic after starting a new discovery with the new version: grafik

Unfortunately Alexa does not show any new devices :-/ I opened the URL stated in the trace: grafik

Is there anything wrong?

I took the trace on a tablet in the same WiFi at the same access point where one of my Echo devices resides.

datech commented 5 years ago

Good morning,

Do you see any HTTP traffic from Echo to Node-Red? Echo device will try to open this URL and it has to be recored by Wireshark.

nike12354 commented 5 years ago

Nope, no http traffic

nike12354 commented 5 years ago

Just to be sure I initiated a full reboot of the whole infrastructure here at my place... Maybe it is just a faulting network stack of any device... If there is still no success, I will deploy a VM on the same vSwitch as my node-red instance and sniff the traffic from there. But I have to do this later :D

nike12354 commented 5 years ago

Still no http traffic after full restart

nike12354 commented 5 years ago

Update: the fifth discovery was successful. I actually don't know what changed in this time, but now It works

datech commented 5 years ago

I think that you don't see the HTTP packages, because the traffic is not routed through the Wireshark machine. You can see the SSDP packages as they are multicast and will be received by all network hosts.

Can you confirm that, now you can turn on/off the devices? Some users reported that they cannot set the color mode with Echo Dot 2nd gen. Is it working on your setup?

nike12354 commented 5 years ago

Yes everything is turning off an on with dimming like a charm!

Of course you have to translate On and off commonly to true / false in the payload or use the msg.on msg.bri properties of the object by creating a new object with the respective payload.

Thank you datech! You helped me a lot :)

nike12354 commented 5 years ago

Furthermore I cannot test the color of the light because I don't have the right bulbs for this...

datech commented 5 years ago

I’m glad that it is working now.

Light devices are simulated, so the color mode have to be available in the Alexa app. Here is how it is looking on my setup with Echo Dot 3rd gen:

node-red amazon echo alexa
nike12354 commented 5 years ago

Yeah the color Mode is available in the App. If it ist interestant for you, i can deploy a debug node and Check the Message when changing the Mode. From my Point of View the issue is resolved.

Outlook für Androidhttps://aka.ms/ghei36 herunterladen


From: Teodor Ivanov notifications@github.com Sent: Monday, January 28, 2019 8:33:18 PM To: datech/node-red-contrib-amazon-echo Cc: nike12354; Author Subject: Re: [datech/node-red-contrib-amazon-echo] No devices found with Echo 2 and Echo Dot 3 (#9)

I’m glad that it is working now.

Light devices are simulated, so the color mode have to be available in the Alexa app. Here is how it is looking on my setup with Echo Dot 3rd gen:

[node-red amazon echo alexa]https://user-images.githubusercontent.com/535026/51860845-59547900-2343-11e9-80f6-dfad1a01397a.jpg

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/datech/node-red-contrib-amazon-echo/issues/9#issuecomment-458269795, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Asb_Ad-fB6FstgoeRJ-JyPJlKPvMSNyUks5vH1B-gaJpZM4aUVdS.

datech commented 5 years ago

Thanks, I will close it.