home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
71.11k stars 29.79k forks source link

MELCloud - Error - "This request has been throttled due to an excessive amount of traffic to our service" #109728

Closed samboman closed 4 days ago

samboman commented 7 months ago

The problem

UPDATE / EDIT: It is not related to the HA upgrade. It is related to some change MELCloud have done on their servers.

2024-02-05 17:04:27.418 ERROR (MainThread) [homeassistant.components.climate] melcloud: Error on device update! Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 573, in _async_add_entity await entity.async_device_update(warning=False) File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1216, in async_device_update await self.async_update() File "/usr/src/homeassistant/homeassistant/components/melcloud/climate.py", line 125, in async_update await self.api.async_update() File "/usr/src/homeassistant/homeassistant/components/melcloud/init.py", line 107, in async_update await self.device.update() File "/usr/local/lib/python3.11/site-packages/pymelcloud/device.py", line 86, in update self._energy_report = await self._client.fetch_energy_report(self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/pymelcloud/client.py", line 195, in fetch_energy_report async with self._session.post( File "/usr/local/lib/python3.11/site-packages/aiohttp/client.py", line 1194, in aenter self._resp = await self._coro ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/aiohttp/client.py", line 693, in _request resp.raise_for_status() File "/usr/local/lib/python3.11/site-packages/aiohttp/client_reqrep.py", line 1060, in raise_for_status raise ClientResponseError( aiohttp.client_exceptions.ClientResponseError: 429, message='This request has been throttled due to an excessive amount of traffic to our service.', url=URL('https://app.melcloud.com/Mitsubishi.Wifi.Client/EnergyCost/Report')

What version of Home Assistant Core has the issue?

core-2024.1.6

What was the last working version of Home Assistant Core?

core-2024.1.5

What type of installation are you running?

Home Assistant Container

Integration causing the issue

MELCloud

Link to integration documentation on our website

https://www.home-assistant.io/integrations/melcloud

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

oakmountainsweden commented 7 months ago

Today it's back working again — changed my polling from 30 seconds to 1 minute, but it would be good to know how much polling one should be using and their limitations to prevent being blocked.

Hi, Where did you do that?

petebanham commented 7 months ago

I've received a response from MELcloud Support over email:

On Tue, Feb 6, 2024, at 11:21, Alexy M. wrote: Hello, We are experiencing a malfunction on the Melcloud application. Our teams are working to solve the problem Regards, Alexy M. After sales support technician

Hopefully this is the case but it may also be that their support teams don't know what their tech teams have done yet! 🙂

Aylmer666 commented 7 months ago

Same problem

somatyi commented 7 months ago

image

https://www2.melcloud.com/Support support page

I believe that issue is from 2 years ago.

simonepittis commented 7 months ago

yes... my bad :-)

nlruugeu-oss commented 7 months ago

Still i have the same problems with Melcloud, now password changes zo no p[olling can by done by any client. Is there anyone with a workaround?

ts67 commented 7 months ago

Everything works for me now!

leor7446 commented 7 months ago

Everything works for me now!

What is the solution :-) Thanks

ts67 commented 7 months ago

Everything works for me now!

What is the solution :-) Thanks

I have no idea. Suddenly I was able to log in to the website and the app without any problem. After restarting the HA integration everything looks ok again.

calielc commented 7 months ago

I was facing the problem last evening (CET) , I disabled the integration during the night. This morning I went into the MELClould app, made a Guest Access to another email (+homeassitant@gmail.com), remove thed HASS integration and re added with the new email.

It has ben running for a 5 hours now the problem did no appear anymore.

dasom78 commented 7 months ago

Everything works for me now!

What is the solution :-) Thanks

I have no idea. Suddenly I was able to log in to the website and the app without any problem. After restarting the HA integration everything looks ok again.

Let us know if you're blocked again after a while ! Did you deactivate HA pooling ?

simonepittis commented 7 months ago

You can only disable the integration for +1hr. After 1hr you can re enable it and all works. image

DaanDeSmedt commented 7 months ago

It appeared that everything had returned to normal on my end (after disabling, waiting and re-anabling the MelCloud integration) until I reviewed the system logs and noticed that some calls were still intermittently failing (the famous 429 HTTP responses).

GHA2036 commented 7 months ago

Same for me. polling activated since 1h without problem

nlruugeu-oss commented 7 months ago

After i created a guest account now HASS is running on this account. so far no problems..

scroll commented 7 months ago

It is working for me as well, but with disabled polling option. I am now afraid to turn it on again.

ts67 commented 7 months ago

Everything works for me now!

What is the solution :-) Thanks

I have no idea. Suddenly I was able to log in to the website and the app without any problem. After restarting the HA integration everything looks ok again.

Let us know if you're blocked again after a while ! Did you deactivate HA pooling ?

No, Automatic Polling is activated.

leor7446 commented 7 months ago

It is working for me :-) I create a few new invite accounts !

miguelpruivo commented 7 months ago

Today it's back working again — changed my polling from 30 seconds to 1 minute, but it would be good to know how much polling one should be using and their limitations to prevent being blocked.

Hi, Where did you do that?

I'm using NodeRed with MELCloud package. No HA. But the issue was similar, so I joined the thread. :)

Edit: after some hours, it's not working again. I had polling set to once per minute and it seems to have resulted in the account blocked, again. They need to tell us our quota limit.

@lourou what is their support email?

petebanham commented 7 months ago

It is working for me :-) I create a few new invite accounts !

Hi When you added the guest account to HA , did it create new entities and so did you have edit all the automations and dashboards etc? Thanks

thephantom commented 7 months ago

Mitsubishi Electric in Germany has imposed restrictions on the HomeAssistant plugin since February 5, 2024 to relieve their server. According to them, HomeAssistants is an unauthorized external application.

If you have made too many requests, they will block your account for a number of hours. It is still unclear how many hours. There is a contact email address in the app and on the website where you can report your problem. With this we may be able to change Mitsubishi Electric's mind.

I have disabled the plugin for now.

The info comes from Aklima, the importer for the Netherlands.

nlruugeu-oss commented 7 months ago

I removed all dashboard entry's and the melcloud intergrations. Automations works without problems after reinstall Melcloud. This is now my second guest account, so now if have disable Temp Polling fingers cross for the future.

nlruugeu-oss commented 7 months ago

https://chrdavis.github.io/hacking-a-mitsubishi-heat-pump-Part-1/

OlivierZal commented 7 months ago

Hi @vilppuvuorinen, I'm the MELCloud Homey app owner and obviously Homey users experience the same. I would be glad to share with you on this topic, is there any way to communicate with you via private messages?

socquique commented 7 months ago

Created a guest account and reconfigured the plugin. Working as workaround for now.

miguelpruivo commented 7 months ago

I understand that they could impose limits but at least give us some docs or details on how many requests we can do daily/hourly whatever. The MELCloud is a expensive piece of hardware for those who bought it and being locked in the MELCloud app that doesn't allow any other integrations, is completely dumb (specially considering how bad their app is).

mafonso commented 7 months ago

With this we may be able to change Mitsubishi Electric's mind.

Might be worth also reaching to the MelCloud Product Owner. Not going to share the contact here, but searching LinkedIn will get there. ;)

Raising awareness that the official app is very limited and outdated, and that allowing the user community to use 3rd party apps adds value to their products with very little effort from their end.
Of course having a public API for integrations like other vendors would be best, but Mitsubishi's digital wing does not seem to care to much about it.

MatthiasVanDE commented 7 months ago

I can't add the Melcloud integration to my Home Assistant anymore.

stuartford commented 7 months ago

I'm not getting any messages about throttling, but now the Climate entities are missing. Still got energy consumption and temperature, but lost all control features.

Did not upgrade anything, just happened overnight.

adamlonsdale commented 7 months ago

Just spoken to the MELCloud tech support on the phone. They say they have introduced throttling but refuse to reveal the throttling rate and just said 3rd party 'apps' are not supported. Asked for specific advice on the API quota / at what point they consider too much but again they just said you can only use through the MELCloud app.

I'm assuming it will just throttle again for those that have it working after an hour or two (even guest accounts) unless the polling can be turned off or reduced to every 5 minutes or something like that.

Poor design of an API here!

petebanham commented 7 months ago

Created a guest account and reconfigured the plugin. Working as workaround for now.

@socquique Just repeating one of my earlier questions to be sure :-) When you deleted the integration and re added it with the new account, did it recreate all the entities etc with the same names or did everything like dashboards etc need to be re set up? I just want to be sure before i delete the current integration as i have a lot of set up. Thx

socquique commented 7 months ago

Created a guest account and reconfigured the plugin. Working as workaround for now.

@socquique Just repeating one of my earlier to be sure :-) When you deleted the integration and re added it with the new account, did it recreate all the entities etc with the same names or did everything like dashboards etc need to be re set up? I just want to be sure before i delete the current integration as i have a lot of set up. Thx

Not deleted. Just changed the user account. Everything same as before.

petebanham commented 7 months ago

Created a guest account and reconfigured the plugin. Working as workaround for now.

@socquique Just repeating one of my earlier to be sure :-) When you deleted the integration and re added it with the new account, did it recreate all the entities etc with the same names or did everything like dashboards etc need to be re set up? I just want to be sure before i delete the current integration as i have a lot of set up. Thx

Not deleted. Just changed the user account. Everything same as before.

Sorry to divert the tread a bit but can you advise how you did that please. I can only find the option to add a new entry on the integration (which asks for new account details, but I assume will create new duplicate entitys) or delete and re add with the new details

xamxamxam commented 7 months ago

Created a guest account and reconfigured the plugin. Working as workaround for now.

@socquique Just repeating one of my earlier to be sure :-) When you deleted the integration and re added it with the new account, did it recreate all the entities etc with the same names or did everything like dashboards etc need to be re set up? I just want to be sure before i delete the current integration as i have a lot of set up. Thx

Not deleted. Just changed the user account. Everything same as before.

Sorry to divert the tread a bit but can you advise how you did that please. I can only find the option to add a new entry on the integration (which asks for new account details, but I assume will create new duplicate entitys) or delete and re add with the new details

just done, added new entry, deleted previous an then rescan new. All entities are the same and all is working

msolomos commented 7 months ago

this is silly. Have spent over 20K on Mitsubishi AC units and more than 500$ for WiFi modules. I just had a look on the manual and it is not mentioned that the module can't be used with 3rd party applications. So Mitsubishi. give my money back for the wifi modules or let me use them the way I like.

Maybe if we make a letter and send it to Mitsubishi they will consider it ?? As far as I show melcloud is been used from 1.1% of HA users (this is 2875 users!!)

image

Is this not enough ??

Saimoni82 commented 7 months ago

I have used Melcloud many years and haven't had any issues loading it. And now Mitsubishi is doing this because of server load? I don't buy it.

miguelpruivo commented 7 months ago

this is silly. Have spent over 20K on Mitsubishi AC units and more than 500$ for WiFi modules. I just had a look on the manual and it is not mentioned that the module can't be used with 3rd party applications. So Mitsubishi. give my money back for the wifi modules or let me use them the way I like.

Maybe if we make a letter and send it to Mitsubishi they will consider it ?? As far as I show melcloud is been used from 1.1% of HA users (this is 2875 users!!)

image

Is this not enough ??

Let alone other 3rd party integrations such as NodeRed etc.

I guess that as soon as my "ban" is raised from the 1 minute polling, I will try to make it every ~10 minutes (with a +5/-5 random variation) so they don't understand it's automated. I will also probably suspend at night time. Kinda dumb having to go around their limitations just because they can't give us a local API.

I'll report back if it works.

Saimoni82 commented 7 months ago

5 minutes polling isn't enough? I'm using Homebridge and the current plugin has maximum of 5 minutes.

miguelpruivo commented 7 months ago

5 minutes polling isn't enough? I'm using Homebridge and the current plugin has maximum of 5 minutes.

You can try and let me know if it works. Earlier today I used 1 minute and I got suspended.

jtfidje commented 7 months ago

How do you change the polling rate?

miguelpruivo commented 7 months ago

How do you change the polling rate?

It's in the NodeRed plugin. Not the HA. But behind the scenes, they use the same. So my conclusions may help HA community. We are all here for the same cause. :D

jtfidje commented 7 months ago

Aah I see 😊 yes agreed!

fcar12 commented 7 months ago

this is silly. Have spent over 20K on Mitsubishi AC units and more than 500$ for WiFi modules. I just had a look on the manual and it is not mentioned that the module can't be used with 3rd party applications. So Mitsubishi. give my money back for the wifi modules or let me use them the way I like.

Maybe if we make a letter and send it to Mitsubishi they will consider it ?? As far as I show melcloud is been used from 1.1% of HA users (this is 2875 users!!)

image

Is this not enough ??

Not to defend MelCloud, but it's in the T&C:

3.7 You will: (a) only use the System and the Services via the Application or the Website;

And to further support your point of view (I also invested some €€€ in AC because of the API availability), besides HA, there's also NodeRed users, Homebridge users and others.

klamminmaki commented 7 months ago

Does this mean that the Melcloud code owner is out?

https://github.com/home-assistant/core/pull/109793

KoenDierckx commented 7 months ago

Just was on the call with a local service department. Apparently version 2.0 of the melcloud app is close to being released. Perhaps they are making changes to prepare for that release ?

JohnMcGreevy commented 7 months ago

This is probably the first step in a paid subscription to access the units via the web

Saimoni82 commented 7 months ago

5 minutes polling isn't enough? I'm using Homebridge and the current plugin has maximum of 5 minutes.

You can try and let me know if it works. Earlier today I used 1 minute and I got suspended.

@grzegorz914 is fast to update his HB plugin, many updates today. Latest update gives the option to set polling to 15 minutes and I have done that. Let's see what happens.

simonk0606 commented 7 months ago

I'm not home, so i can't try the last update.. I hope it will work. I send a request to melcloud to, to complain. We never know, the mass effect can make them mind change !

miguelpruivo commented 7 months ago

Just give as a local API, ffs. Unless they have a reason to not (subscription?) they save costs and we are all happier.

osulivanDE commented 7 months ago

This is the reason why it is crucial to have a local API instead of relying on the benevolent of shitty management decisions.