Slack integration with Tado. Ask your Tado smart thermostat whats happening.
This project is not affiliated with Tado in anyway. The Tado API is not public and therefore cannot be considered stable and so this project may cease to work or have unintended behaviour. Use at your own risk!!
You need to run this bot somewhere - you can run this with any standard Ruby stack. Heroku is the easiest place to give it a go.
At the moment we have 1x bot per Tado user in the form of a Team bot, this means one bot controls one Tado. If you invite tadobot
to a Slack room then anyone can control it.
We need two bits of information to get going, your Tado details and Slack bot authentication key.
The Tado API is not public (as of 2 May 2016) but we do seem to be able to use the username and password you use to log into the my.tado web panel to perform authenticated requests.
All requests are sent over HTTPS. Keep your username and password private!
Requirements
- Username and password for my.tado
- The Tado device
home_id
for which to associate the bot with - TBC
Create a new Bot Integration under services/new/bot. On the next screen, note the API token.
- Create a new Heroku app
- Git clone & deploy this repo to your new app
- Set Environment variables
Set SLACK_API_TOKEN, TADO_USERNAME, TADO_PASSWORD, TADO_HOME_ID
from the Bot integration settings on Slack and your my.tado config.
heroku config:add SLACK_API_TOKEN=... \
SLACK_API_TOKEN=... \
TADO_USERNAME=... \
TADO_PASSWORD=... \
TADO_HOME_ID=... \
-a app-name
Invite the bot to a channel or send a direct message. tadobot
responds to the following commands:
tadobot status
Show the current status of your Tado.
tadobot weather
Show the current weather at the Tado device location.
tadobot set manual on {temperature}
Set the heating manual override on to a specific temperature.
tadobot set manual off
Set the heating manual override off.
tadobot
Shows tadobot version and links.
tadobot hi
Politely says 'hi' back.
tadobot help
How to get some help.
Bug reports and pull requests are welcome on GitHub at https://github.com/rob-murray/slack-tadobot. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
The gem is available as open source under the terms of the MIT License.