ioBroker / AdapterRequests

This Place is used to track the status of new Adapter-Requests.
248 stars 36 forks source link

Honeywell EvoHome Adaptor #167

Open Taragorm opened 5 years ago

Taragorm commented 5 years ago

API is described here: https://developer.honeywell.com/api-methods?field_smart_method_tags_tid=All

It's currently possible to use a combination of MQTT and evohome2mqtt, but this seems less than optimal.

Taragorm commented 5 years ago

If needs be, I can supply the credentials to my system for testing, as long as the user contacts me to book an interval to work on the system.

Alternatively, I could perhaps attempt (or help with) coding it myself. I already speak C,C++,Java (and others..) but I've not done anything serious in JS yet, beyond a few snippets. It's on my todo list, so this would seem a reasonable project to get started on.

What's a good example adaptor for this case - i.e. a well-coded one that uses a REST interface?

DutchmanNL commented 5 years ago

It looks straight forward as the API allows get and post commands with oAuth.

Basically my discovery adapter (iobroker.discovergy) also uses tokes avves by oAuth2.0, that adapter only needs a get but the logic is very similar.

Iam willing to help here, time is a little limited and I don't have the hardware but maybe something to pickup together?

Cheers

Dutch

Taragorm commented 5 years ago

Thanks for the response.

It didn't look too complicated to me either, and I could bodge something in Python quite easily, but I'd like to get familiar with the internals of ioboker, if I'm going to use it (and right now, it looks as though I am).

I'm also busy, but given a bit of support, I should be able to get something done, hopefully soon. Right now I'm reading up on JS and setting up a dev environment.

I'll pull your code and have a look. The evohome2mqtt project is also JS, so parts of that will be highly applicable. I think it targets an earlier version of the API though, so it's featureset is a bit restricted.

For instance, you can access scheduling in the current API, which would be nice to have, although not required for a first cut.

There's also a python interface that I'm aware of: https://pypi.org/project/evohomeclient/

DutchmanNL commented 5 years ago

OK Sounds good so let's keep in touch

In basic I would not rely on MQTT in any way, the adapter should be able to get all the date from http get based on JSON format so there is no additional translation layer needed.

Ones the states are in iObroker everyone can device how to further process them

Taragorm commented 5 years ago

Fair enough - I'll revert here when I've got something to comment on or review.

Taragorm commented 5 years ago

First cut is done, at https://github.com/Taragorm/iobroker.evohome

If you can give this a quick review, I'd be grateful. It seems to work OK for me, but all the error paths have not been tested.

First major bit of JS I've ever attempted, so I'm probably doing something wrong!

Taragorm commented 5 years ago

(ah - close is close issue - nvm)

Taragorm commented 5 years ago

Any pointers on how to start writing my own Widgets? Is there a good getting started guide anywhere?

GermanBluefox commented 5 years ago

Any pointers on how to start writing my own Widgets? Is there a good getting started guide anywhere?

https://forum.iobroker.net/topic/19929/getting-started-with-visualisations/2 https://github.com/ioBroker/ioBroker.template/tree/master/VIS/widgets

Apollon77 commented 5 years ago

The adapter creator can also create a widget template ... https://github.com/ioBroker/create-adapter

ldittmar81 commented 2 years ago

@Taragorm Please request repo addition ... details see https://github.com/ioBroker/ioBroker.repositories