homecineplexx / ioBroker.homepilot20

Rademacher Homepilot 2.0 (version >= 5.0.39)
MIT License
23 stars 7 forks source link

Sync issues with very "full" homepilot #60

Open hundertvolt1 opened 9 months ago

hundertvolt1 commented 9 months ago

I am trying to connect the homepilot20 adapter to my HomePilot v3.

The HomePilot itself actually is very close to its limits: 84 physical DuoFern devices, Huebridge, allover above 200 logical devices, and several hundred scenes and triggers. Operation as such is perfectly stable, but the web interface often crashes ("Ups! Etwas ist schiefgelaufen!") by just opening a device / scene / trigger, while the configuration with the Android app is almost flawless. I already reported this to Rademacher and there was some slight improvement with the last update, but not really well yet.

Maybe this is somewhat linked to the issues I see in ioBroker. The adapter instance connects to the HomePilot, the attributes are generally available and updated, but the log is totally flooded with hundreds of warnings of such type:

  | Read  sensors -> Cannot connect to Homepilot:  {"statusCode":504,"body":"<!DOCTYPE  html>\n<html>\n<head>\n<title>Error</title>\n<style>\nhtml  { color-scheme: light dark; }\nbody { width: 35em; margin: 0  auto;\nfont-family: Tahoma, Verdana, Arial, sans-serif;  }\n</style>\n</head>\n<body>\n<h1>An error  occurred.</h1>\n<p>Sorry, the page you are looking for is  currently unavailable.<br/>\nPlease try again  later.</p>\n<p>If you are the system administrator of this  resource then you should check\nthe error log for  details.</p>\n<p><em>Faithfully yours,  nginx.</em></p>\n</body>\n</html>\n","headers":{"server":"nginx/1.22.1","date":"Tue,  12 Sep 2023 20:37:49  GMT","content-type":"text/html","content-length":"497","connection":"close","etag":"\"6452a22a-1f1\""},"request":{"uri":{"protocol":"http:","slashes":true,"auth":null,"host":"192.168.85.5","port":80,"hostname":"192.168.85.5","hash":null,"search":"?devtype=Sensor","query":"devtype=Sensor","pathname":"/v4/devices","path":"/v4/devices?devtype=Sensor","href":"http://192.168.85.5/v4/devices?devtype=Sensor"},"method":"GET","headers":{"0":{"Cookie":["HPSESSION=pr1BPmSgK95Yf7cIAG9L0Uidfg5kKw0xc96wcFlPH7M7Mlb7NoisbKzrRrJpr6eW;   Path=/"]},"1":{"Content-Type":"application/json"},"cookie":"HPSESSION=pr1BPmSgK95Yf7cIAG9L0Uidfg5kKw0xc96wcFlPH7M7Mlb7NoisbKzrRrJpr6eW"}}}
-- | --

It's all the same for actuators, scenes, sensors and transmitters. For me it does not look like a bug as such, but rather an issue likely to occur with a very "full" Homepilot - but maybe there is a way to get around this (e.g. allowing a larger response timeout or the like)... Maybe you have an idea; if you need more infos please let me know! :)

homecineplexx commented 5 months ago

Hello yes, this is an issus of the homepilot himself, if he isn't available anymore.

but i am working on an fix for that, if the polling of e.g. scenes got an error because of 504 or something like that, i will do the next polling 24 hours later...i think sensor, transmitter, scenes are not so important as actuators

;-)

hundertvolt1 commented 5 months ago

Hi, thanks for your reply!

Actually, I have to admit that meanwhile I switched to OpenHAB, as all of my essential home functions are managed through the HomePilot, and they have it more or less based on scripts. Which, of course, does not mean that it makes IOBroker less interesting, all ecosystems have their specific strengths.

That being said, I found that none of the available open source smarthome systems supported all the functions I urgently hoped for concerning the external binding for Rademacher. So I took some time, Wireshark and my HomePilot and reverse-engineered the API as far as I could ;-)

Long story short:

I posted all of these findings in the OpenHAB Forum - so if you are interested, a sensible location to start reading might be here.

:-)