Skip to content

JMS55/nestalarm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nestalarm

Monitor an EnvisaLink alarm module running Honeywell firmware, and set a Nest device to Home/Away depending on whether the alarm is Disarmed/Away.

Setup

  • Install the requests library according to requirements.txt
  • Setup a config.py file
  • Generate the Nest API protobuf python bindings

Example Config

ALARM_IP = "168.178.46.43"
ALARM_PORT = 4025
ALARM_PASSWORD = "user"

NEST_ENDPOINT = "https://grpc-web.production.nest.com/nestlabs.gateway.v1.ResourceApi/SendCommand"
NEST_USER_ID = "2760334"
NEST_STRUCTURE_ID = "015FB2C46740F660"
NEST_ACCESS_TOKEN = "g.0.eyJraWQiOiIyMzhiNTU..."
NEST_USER_AGENT = "Mozilla/5.0..."

Your Nest userid and access_token can be obtained by logging into the Nest webapp and then visting https://home.nest.com/session. You will have to manually change the config when the token becomes invalidated.

Your Nest structure id can be obtained by running the program with an invalid structure id.

Generating Nest Protobuf Python Bindings

Copy the nest-protobuf folder from this git repo https://github.com/derek-miller/nest-protobuf, and then run generate-nestapi.sh.

References

About

Monitor an EnvisaLink alarm module running Honeywell firmware, and set a Nest device to Home/Away depending on whether the alarm is Disarmed/Away.

Resources

License

Stars

Watchers

Forks