Coder Social home page Coder Social logo

comfy's Introduction

Comfy

This is a small application that can enable/disable smartmode in sensibo depending on the current electricity prices

Environment

The application looks for a .env file in the root directory with the following content

TIBBER_API_KEY=API Key from Tibber
SENSIBO_API_KEY=API Key from Sensibo

Deploying with local portainer

Create a tarball for building the docker image

$  tar -czvf prod.tar.gz .

Once this has been created, go to the local portainer environment and click images, once inside images build a new image with the upload tarball option (dont forget to set path to dockerfile)

After the image has been sucessfully built go to containers and click comfy, click duplicate/edit and change the image to the newly created image tag. Finally click deploy the container and wait for it to start.

To ensure it's running correctly click comfy again and check the logs link, this should show that an inital check has been made and how long it will wait until next one.

comfy's People

Contributors

fredsson avatar suzanne923 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

comfy's Issues

Night Mode

it would be nice to set different smart mode levels depending on when in the day it is, for example temperature can be lower in the house during the night.

Survival Mode

When it's very cold outside, we might want to increase the price threshold for when to start the AC so that we don't freeze to death

Investigate Sensibo Schedule

Instead of polling every hour it should be possible to setup a schedule in sensibo for the entire day based on prices from tibber

Vacation Mode

Find a nice way to turn off the app alternativly lower the temperature range when away on vacation, so that we don't pay extra to warm the house when no one is around

Cache prices from tibber

Cache prices in the app instead of fetching it every hour since it only changes at the start of every day

Better Error Handling

Right now we handle most errors by just logging fatal and shutting the app down, we might want to consider if any of these cases can be recovered from

Scheduling

Instead of updating sensibo every hour it should be possible to build a schedule based on prices for the day and only run the app at those scheduled points

Summer Mode

Investigate and plan for the same functionality we have now but for cooling down the house in the summer

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.