Example of Maker Integrating with Ecobee?

Are there any examples of how to use Maker with my Ecobee?

Don’t think so, but it looks like there’s a decently documented REST API - system.net.httpClient() would map fairly well.

Disclaimer

I haven’t used either Maker or ecobee. I do use the Ignition (Vision/Perspective) platform daily, though.

Documentation

Here is an article on ecobee’s website regarding their API.

Note that you must use HTTPS to make API requests, HTTP is not supported and your client will be redirected to the HTTPS URL. Most HTTP client implementations do not support redirection by default if at all.

Here is a list of available endpoints (from what I can tell; I don’t have an ecobee device to test this).

I believe this means you must configure an SSL certificate in the Ignition Maker gateway.

system.net.httpClient() example

Here is how you would use system.net.httpClient():

# create an HTTP client (open socket, etc)
client = system.net.httpClient()

# GET, POST, DELETE, PUT, etc are available methods
# request URL from https://www.ecobee.com/home/developer/api/documentation/v1/operations/get-thermostats.shtml
params = {"selection":
			{
				"includeAlerts":"true",
				"selectionType":"registered",
				"selectionMatch":"",
				"includeEvents":"true",
				"includeSettings":"true",
				"includeRuntime":"true"
			}}

# find the exact URL in docs
res = client.get('https://api.ecobee.com/{version}/thermostat', params = {'json': params})

# check response 
if res.good: 
	# do something
	system.perspective.print(str(res))

I would read the documentation carefully before integrating in any serious fashion. Here is a sample message I found in the docs (and there are others like this):

DO NOT have more than 2-3 open HTTP requests with the ecobee API at any given time; wait until the ecobee server has responded before issuing additional API requests.

1 Like

Thanks - some good starting points.

I use OpenHab to connect to my Ecobee. It has a binding that pulls in all the data I need. I then use Node Red to manipulate the data further then push to Ignition tags. I use OpenHab as an “integration layer”/gateway to many home automation technologies, Node Red as my home controller, and Ignition Maker as my HMI. Or HHI (Human House Interface) ?? :slight_smile:

2 Likes