originallyus / node-red-contrib-alexa-local

An easy-to-use NodeRED node for adding Alexa capability to NodeRED. NO Alexa Skills required.
106 stars 25 forks source link

Alexa local stop working!! #100

Closed delta010 closed 4 years ago

delta010 commented 4 years ago

After a few hours ago Alexa local on node-red stop working. I am using a 2nd gen echo dot .but node red Alexa home skill working fine

Samoticha commented 4 years ago

same here

guardiande commented 4 years ago

I have the same problem at my mother's place but cannot debug locally. Over here it's still working. Strange. Worked for months without problems.

fteston commented 4 years ago

Same issue here, looks like the new alexa Firmware is blocking Hue Emulation

alexlinno commented 4 years ago

I also upgrade node-red this, could the problem be there?using 0.20.7

guardiande commented 4 years ago

I was partly able to resolve my problems by switching to Alexa Home within Node Red. In one of two installations it works perfectly. The other worked at the beginning but refuses to discover new devices now.

But nevertheless I would suggest switching from Alexa Local to Alexa Home. Be sure to read the documentation and either run the controller on port 80 or redirect traffic to port 80 via iptables.

fteston commented 4 years ago

Guardiande, thank you I have node-red running on Windows , any idea how to set the port 80 on the node-red files ? Thanks

alexlinno commented 4 years ago

Guardiande, using port 80 is that also necessary for echo dot gen 1? tried with and without port 80, cannot get it to work

godofglow commented 4 years ago

Same problem here. Any ideas?

slopsjon commented 4 years ago

Stopped working for me as well. Annoying as I just moved everything to a new server last night.

freaky-m0 commented 4 years ago

Same here. Stopped working overnight.

NodeRed 0.20.7 // AlexaLocal 0.3.24 // EchoDot FW 644580520

MosesHill commented 4 years ago

"Most of" my locals do not now ?!?. Sometimes 1 or 2 are working for a very short time, but then I get device malfunctioned for all devices on the alexa app. No new devices can be found. it is not the node red update because I still have 0.17.5, but then I have updated alexa local to 0.3.24

godofglow commented 4 years ago

Have someone any other idea or an existing workaroung? Or is there some other working solution?

scargill commented 4 years ago

All of this sounds feasable- I'm on Node-Red 0.20.8 as of yesterday - until then, all my Alexas were working fine - but then the issue I'm having is Espurna and Sonoff Basic with Alexa - Node-Red doesn't come into it. I do hope Amazon have not screwed up, When companies get too big they tend not to think about others. My Xiaomi Mi Fit just (dliberately or otherwise) blocked 3rd party watchface suppliers but I just went back a version. In the case of Amazon Alexa and the DOT, I'm not aware of any recent updates, or would they just happen automatically?

fteston commented 4 years ago

I'm able to fixed only 1 of my devices on alexa-local plugin, I change the file inside .node-red/alexa-local folder have many files no extension open the file and change the value to port 80 {"key":"4f391f3012608","value":80} this is the only way to make a know device work again, however alexa can't find new devices, I'm still working on find a solution.... if you have other ideas let me know.

slopsjon commented 4 years ago

I don't think it's Node-red. I reinstalled all my node-red on a new server yesterday and it was working just before I went to bed at midnight. When I woke nothing responded and when I looked at the alexa app it had added duplicate devices but prefixed by "Royal Phillips"? Is there a way of checking when alexa last did a firmware update?

scargill commented 4 years ago

It seems to me that it is likely to be Amazon messing about - as everyone has different problems - mine are Espurna-related mainly.

alexlinno commented 4 years ago

Hue-emulation on my Tasmota still works.....just for info

ReeceJohn commented 4 years ago

Handshake for discovery seems to be malfunctioning. The discovery never completes. I also suspect this happened after an echo firmware update.

rf-ir-learner commented 4 years ago

Yep, my Node-RED node-red-contrib-alexa-local modules are in 'Discovery' mode for the last week or so, and Alexa cannot discover anything ... something has definitely gone wrong somewhere ... AB

scargill commented 4 years ago

It is starting to point strongly to something Amazon has done. I never get anywhere contacting Amazon - I hope someone out thre has better influence and can get this fixed. Node-Red-Contrib-Amazon-Echo works but it just found the same device twice - I had to delete one of them. All of this is new behaviour.... and annoying.

rf-ir-learner commented 4 years ago

Agreed, so it looks like a firmware issue - maybe they automatically update the firmware (I certainly didn't)?

And just for the record this caused me to buy another one because it showed up in my router admin with the word "Kindle" in it, so I thought it was my wife's old Kindle, and not the Echo Dot. So I was thinking that the Wifi section of it had failed. Then I realized I could get the MAC address of the Alexa device by logging into my Amazon Alexa account with a browser, so now I have properly renamed it in my router. It can be difficult to identify these devices when you have over 60 items tied to your router.

thmeger commented 4 years ago

I updated all used components - Alexa, Node-RED, the nodes, node js, the complete pi :-) No more "lights"/devices are found. They turn from oline to discovery in NR after a few seconds. The Alexa devices page shows nothing found. Is this something that can be fixed, or is this something Amazon doesn't want anymore?

slopsjon commented 4 years ago

I've switched to using node-red-contrib-alexa-home-skill It's account based and a bit more configuring but a least I have someone to talk to now. Hopefully this will get sorted.

AndyWo83 commented 4 years ago

@slopsjon i switched also to the node-red-contrib-alexa-home-skill, but the reaction time is sometimes to long, because it's account based. When I say "Alexa, turn the TV off" it sometimes takes 5 or more seconds to complete. With the local it was very fast. I hope the problem will be solved...

Jibbonator commented 4 years ago

I have the same problem. I solved this using this: https://flows.nodered.org/node/node-red-contrib-amazon-echo. suits for my needs. had to route iptables (Routed port 80 tcp and udp. Manual). but since then it works. And its local!

nob0dy80 commented 4 years ago

mine was working till yesterday. i noticed unter alexa.amazon.com under devices that all devices were doubled! There were the correct ones as "color lights" and one with the same name as "Royal Philips Electronics intelligent device"

i never did any search after the first detection so they came automatically.

To bad i deleted all devices ...at least i can use alexa as door stopper till now :-)

nob0dy80 commented 4 years ago

@Jibbonator i guess its working with hue emulation too ? If so, there is hope alexa-local could be fixed ;)

Jibbonator commented 4 years ago

@nob0dy80 I don´t know exactly. My devices are now shown as "Royal Philips Electronics intelligent device". I just changed my nodes and it works. Yesterday i had the same with the double Devices.

nob0dy80 commented 4 years ago

@Jibbonator Hue = Philips. So it must be emulating. That makes real hope alexa-local can be fixed.

maybe i should try alexa-home. Website says "No additional settings are needed if Node-Red is started as Home Assistant add-on"

Using iobroker so i guess i dont need to do anything with iptables.

in case..what iptables settings must be done?

Jibbonator commented 4 years ago

I marked it in my previous post. I have iobroker too. Why don´t you try it?

I have the same problem. I solved this using this: https://flows.nodered.org/node/node-red-contrib-amazon-echo. suits for my needs. had to route iptables (Routed port 80 tcp and udp. Manual). but since then it works. And its local!

nob0dy80 commented 4 years ago

@Jibbonator

yeah but you routed from what to what ? if it says it will work without configuration in home assistants, i dont get the point why you routed anything?

Jibbonator commented 4 years ago

@nob0by80 I could not assign my Port 80 in iobroker. Maybe due to Root restrictions. So i routed Port 80 to 1880(You can set this Port manually in the Amazon Echo Hub)

nob0dy80 commented 4 years ago

@Jibbonator

hmmm isnt 1880 the port of the node-red frontend ? so the amazon echo hub and the web frontend will run on the same port ??? That sounds for me like upcoming problems :-)

Jibbonator commented 4 years ago

@nob0dy80

Oh i forgot to say i use 1879 for node red. But you could use 1890 or whatever you want. But i think Alexa only finds devices that are discoverable over port 80.

nob0dy80 commented 4 years ago

@Jibbonator Yeah that is a really important information !

Thanks for your tips. I guess i will wait a week or so if alexa-local gets fixed and if not, ill try your way ;)

Jibbonator commented 4 years ago

So Here is my Full Conclusion for all.

My System runs on IoBroker. I Use this node Red Module : https://flows.nodered.org/node/node-red-contrib-amazon-echo This Module works local without any Cloud Connection.

But i could not assign Port 80 to the "Amazon Echo Hub" from the new Module. So i routed my Port 80 tcp and udp to another Port.(In my Case 1880, but you can choose whatever you want) In fact you should use another Port like 1890 because 1880 is the default Node Red Port.

Here´s an Manual for IP Table Routing: https://o7planning.org/de/11363/redirect-port-80-443-auf-ubuntu-server-mit-iptables If you want to save at the end again (Beacuse of TCP and UDP), this is the Command: sudo iptables-save

After this I created a "Amazon Echo Hub" ,set the Hub to the Routed Port and replaced my Nodes with the new ones. Connected all Nodes to the Hub and deployed my Flow.

That´s it . After that I started the Discover and all Devices were found again.

Hope it helps some people.

scargill commented 4 years ago

I've always used another port and this still works for NR Amazon Alexa node but Espruino is still acting up.

nob0dy80 commented 4 years ago

Perfect, thanks again @Jibbonator

nob0dy80 commented 4 years ago

https://github.com/mabunixda/node-red-contrib-alexa-home/issues/53#issuecomment-531149988

Info in an other alexa skill that stops working. seems like when changes are adapted to alexa-local it will start to work again. Sounds good to me at the moment.

Gieskanne commented 4 years ago

I think I understood the problem now. Amazon has changed the way how devices are discovered. The handshake between a new device and an Echo has to be finished on port 80. The numbers you see in Node-RED next to the alexa-local nodes are actually the ports (!!!) of the individual nodes (not the IDs). For me also the solution by @Jibbonator works, but to fix this adapter here seems to be not that straight forward. It has not been maintained for 8 months, so maybe we have to switch to the newer working adapter.

nob0dy80 commented 4 years ago

@Gieskanne

yeah i know that the numbers are the ports, but didnt see any documentation about alexa thats saying it must be port 80 now.

no matter what, sounds absolute logical.

So if thats really the case, the adapter needs to change his whole way of working. And as you said, 8 month not maintained will (i guess) end up in dead of this adapter.

gordonthree commented 4 years ago

Darn Amazon, locking out emulated devices. My whole system has crashed now. It used to be just one or two not responding but now all the devices on my node red, no more Alexa control. Will check out the alternatives mentioned above.

scargill commented 4 years ago

Darn Amazon, locking out emulated devices. My whole system has crashed now. It used to be just one or two not responding but now all the devices on my node red, no more Alexa control. Will check out the alternatives mentioned above.

What a dirty trick - my node-red-contrib-amazon-echo punked out this morning - I though I'd escaped the worst of it. This stinks....

nob0dy80 commented 4 years ago

@scargill are you saying the amazon-echo module isnt working any longer?

@Jibbonator can you confirm this?

Jibbonator commented 4 years ago

My system runs flawlessly. This morning i even tried it with 44 nodes.

@scargill do you have routed the Port 80? Which Firmware Version does your echo dot have? I saw that u used the "node-red-contrib-amazon-echo" before. So i think you could may use another port than port 80.

nob0dy80 commented 4 years ago

thanks ..wanted to start today to switch over

scargill commented 4 years ago

@scargill are you saying the amazon-echo module isnt working any longer?

@Jibbonator can you confirm this? Yesterday on my RPI NR and ESP8266-based home control system, N-R-C-Amazon-Alexa was working just fine - turning on and off and controlling the colour of a pair of LED strips (my-bench-light) as it has done through all of the recent troubles. Today, though my NR desktop is controlling these lights, nothing from Amazon. "alexa turn on my bench light" - On Echo the light flashed and produced the confirmation tone - nothing actually happens - so I deleted the device "my bench light" in the Amazon app... and deleted the AMAZON ECHO DEVICE in NR. I then added a new node - same name... and told Echo to find devices. It said it found 2 new devices... and to try "turn off my bench light". It worked but the Amazon app now had 2 bench lights. I deleted one. I then said "alexa, turn on my bench light". It worked but the wrong colour - green instead of red. I shouldnt have to do any of this.. it should just work, it always did before now. It is now reliably turning on the bench light but to RED, even if my desktop control sets it to blue or green (and can turn it on and off and maintain the right colour).

nob0dy80 commented 4 years ago

@scargill

answer the question from @Jibbonator . Did you do a port redirect to 80? I guess you were getting your alexa firmware update a bit later and thats the reason why you are facing the problems now.

If you dont do a redirect to port 80 yet, follow the steps @Jibbonator posted some postings above.

scargill commented 4 years ago

I have no idea what firmware is running on the Echos (I have 2 version 3 dots and a version 2 dot)., I’ve not manually changed it. In Amazon-echo-hub-node I refer to port 8980 – this has always worked. Can’t remember what it is I do to the RPI to make that work with port 80 but it has always worked – EVERYTHING worked until the last few days.

It occurs to me this is the wrong forum to be discussing node-red-contrib-amazon-echo

Pete

From: Jibbonator notifications@github.com Sent: 14 September 2019 16:29 To: originallyus/node-red-contrib-alexa-local node-red-contrib-alexa-local@noreply.github.com Cc: Peter Scargill pete@scargill.org; Mention mention@noreply.github.com Subject: Re: [originallyus/node-red-contrib-alexa-local] Alexa local stop working!! (#100)

My system runs flawlessly. This morning i even tried it with 44 nodes.

@scargill https://github.com/scargill do you have routed the Port 80? Which Firmware Version does your echo dot have?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/originallyus/node-red-contrib-alexa-local/issues/100?email_source=notifications&email_token=AAONJAZMHGFSN5XDRWIGVATQJTYKTA5CNFSM4IUGT462YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6W43DQ#issuecomment-531484046 , or mute the thread https://github.com/notifications/unsubscribe-auth/AAONJAZ63KFZPBZHS7KTTCTQJTYKTANCNFSM4IUGT46Q . https://github.com/notifications/beacon/AAONJA4KVD4GGEA5KQS77SDQJTYKTA5CNFSM4IUGT462YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6W43DQ.gif

nob0dy80 commented 4 years ago

Pete. At this point you are not wrong here even its for alexa-local and not for alexa-echo. i know that everything worked for long time. That is why we are talking here. We are all facing the same problem. Updates are not always coming at the same time to all users. some have the problems for a month now, i'm facing the problem 3 days ago.

But the solution is here! Just read what @Jibbonator wrote here: https://github.com/originallyus/node-red-contrib-alexa-local/issues/100#issuecomment-531302942

now its up to you to follow the instructions.

@Jibbonator it wasnt the best decission to explain iptables redirections with a german site, but @scargill the commands are all there. Redirect your port 8980 to 80 on the Pi with the instructions @Jibbonator posted! then delete all your devices in the alexa app (or alexa.amazon.com) and start detection again