A dead-simple stand-alone server for implementing a Google Home integration written with Flask on python 3.
It implements the most basic and simple OAuth 2.0 and is meant for running on your own computer inside your home network so it has no users, no log-ins and so needs no database.
NOTE: This was created for my own use and so it is very simple, bare-bones and in some places has hard-coded stuff.
pip install https://github.com/zeevro/wolf-iot/archive/master.zip
- A DNS domain name pointing to your computer
- A valid SSL certificate for that domain name (see Let's Encrypt or SSL For Free)
- A configured Google Actions project
- Go to the Google Actions Console and create a new project
- In the Actions tab fill in the Fulfillment URL as
https://my.public.dns.hostname:port/api/fulfillment/ - In the Account linking tab fill in Client ID, Client secret, Authorization URL and Token URL:
- Client ID and Client secret can be acquired by running
wolf_iot_server -i. - Authorization URL:
https://my.public.dns.hostname:port/oauth/authorize/ - Token URL:
https://my.public.dns.hostname:port/oauth/token/
- Client ID and Client secret can be acquired by running
- OPTIONAL: How to setup sync requests
- Store known devices in some permanent storage (e.g. file/database/redis/etc.)
- Device discovery (and sync requests)
- Finish writing README :)