go-ecobee

command module
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 6, 2021 License: Apache-2.0 Imports: 3 Imported by: 0

README

go-ecobee

A go library and simple tools for accessing the Ecobee Thermostat API.

The go-ecobee CLI is built with the underlying go-ecobee API, and serves as it's primary example.

Setup

Install
go install -u github.com/rspier/go-ecobee`
Build
go build main.go

# fully static binary
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o main
Application ID

Obtain an Ecobee API Application ID at https://www.ecobee.com/consumerportal/index.html#/dev

Thermostat ID

You'll need to know the serial number (Thermostat ID) of your thermostat. You can find it on the About page of the Ecobee portal.

Config

You can store your default thermostat id and appid in ~/.go-ecobee.yaml or you can use the --thermostat and --appid flags to the CLI.

thermostat: <Thermostat ID>
appid: <App ID>

CLI Usage

Status
$ go-ecobee --command=status
Current Settings (Home): 68.0 - 75.0.  Fan: auto
Holding at 68.0 - 75.0 (Fan: auto) until 2017-04-22 00:00:00
Temperature: 75.0
  Bedroom\*: 74.7
  My ecobee3\*: 76.2
Hold Temperature
$ go-ecobee hold --heat 70 --cool 76 --duration 10m
Successfully Held Temperature
Message
$ go-ecobee message --message="Hi there!"
Successfully sent message: "Hi there!"
Fan
$ go-ecobee fan --duration=5m
Running fan for 5 minutes"
List
$ go-ecobee list
${THERMID}: My ecobee3

Development

Staticcheck

https://github.com/dominikh/go-tools

staticcheck ./ecobee/ ./cmd/ .

Ideas for future development

Sensor Failure Test

Use includeSensors on the thermostat endpoint to analyze sensors where the presence sensor may have failed -- i.e. present all the time.

Disclaimer

This is not an official Google project.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL