I ran into a little delay due to some linting issues, but here it is:
Get it while it’s hot!
The PR is now being examined by kai, so I expect that it will be merged soon. Please join me in testing the binding to make sure it does what it needs to do :-). The update and authentication issues should be solved as well, so I hope you can run without hiccups now.
Hi guys, unfortunately my binding still crashed after a couple of days…
I added a more robust safeguard to the update mechanism which should definitevely solve it.
And it still stops updating. Seems like the changes needed to get it merged didn’t really contribute to its stability. I’ll update here when it runs successfully for a week at my end.
Sure, a cronjob should work as well. I posted something similar in the trådfri topic a while back.
Anyway, I’m not blocking the PR by it and try to fix it in the meantime. Feels like a trivial thing, but I’m not sure what the issue is right now. It seems to only occur after a couple of days, so preproducing and validating is slow.
That response never comes thus halting the update loop, ultimately letting the access token go stale. According to the docs of jetty this is expected behavior since the timeout of a request is bound to system settings. My system is, apparently, configured to never timeout.
I fixed this in my development system and has been running for three workdays days now. In between days, my computer goes into sleep mode, resuming the morning after; the binding still running smoothly.
In the meantime kai has reviewed my code as well - some minor remarks as a result. I’ll pick these up with the next release, which will include my fixes for a fixed timeout. I think that’ll be the last step before it will be merged. Please help me test the next release thoroughly so we will have a stable, well performing binding in the 2.3.0 release!
Can anyone assist? While I realise this is alpha software it seems that others have it working happily.
I’ve installed the binding as an addon and I can get the Evo Home account online
evohome:account:evo_home' changed from INITIALIZING to ONLINE
but I cannot get the display or any zones to come online and get the following error
'evohome:display:evo_home:display' changed from INITIALIZING to OFFLINE (COMMUNICATION_ERROR): Status not found, check the display id
The display id I got from my display by holding down the Display Settings button - is this correct?
How do I get the ID’s for the individual heating zones?
@timwelch I’m not sure what you mean by “Holding down the Display Settings button”. Could you check the status of your account Thing and check if it’s online? If it is you should get your zones autodetected. Take the id you get from that e.g. evohome:display:myplace:1234567 so the id is 1234567. You can also see the id’s if you enable TRACE logging on the binding in Karaf and analyze the raw response data but that’s somewhat more involved, and not really the user interface to finding your display id.
@mjcumming Yes, this should work (I’m using the same). How are you providing your credentials: things file or PaperUI?
@mjcumming Ok, good that you are able to make it work. Not sure why the PaperUI does not work for you. Maybe strange characters in your password? Hard to check this since you probably wouldn’t (and shouldn’t!) share that May I can log the username and password before authenticating. Since I don’t feel comfortable logging plain text passwords that will probably an MD5 of SHA hashed one, but then you can still do the same hashing and see if it matches.
your_display_alias and your_zone_alias are values that you can freely choose. so maybe my_home and living_room respectively. It makes you channel names somewhat more friendly. OpenHAB generally generates a random value for these when it autodetects them.
@timwelch Looking at https://tccna.honeywell.com/WebAPI/emea/api/v1/userAccount and the fact that you are New Zealand based makes me think that it maybe is correct that you are not getting anything back. EMEA is for Europe, Middle East, and Afrika. Let me check if I can fix that. Thanks for the details!
@timwelch Could you enable TRACE logging and send me the response to the Requesting: [https://tccna.honeywell.com/Auth/OAuth/Token] call? Remove the token values but leave the rest, please. For me (based in Holland) I get this back:
I think you snipped off the scope bit; which is the bit I was interested in
Edit: hm, I changed the Token request to request for APAC instead of EMEA, and I don’t seem to get the scope back as well. I think I need to add a region selection option to the credentials bit. I’ll try to get that in as well. Would you be willing to test this out when I release the next version with that option available?