{"id":13586611,"url":"https://github.com/danobot/entity-controller","last_synced_at":"2025-04-05T20:08:24.801Z","repository":{"id":33816314,"uuid":"158194879","full_name":"danobot/entity-controller","owner":"danobot","description":"Home Assistant Entity and lighting controller for managing devices with timers, scripts, and sun-based time restrictions.","archived":false,"fork":false,"pushed_at":"2024-05-04T13:48:30.000Z","size":5605,"stargazers_count":277,"open_issues_count":15,"forks_count":41,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-05-05T13:29:04.951Z","etag":null,"topics":["entity-controller","finite-state-machine","hass","home-assistant","home-automation","internet-of-things","iot","lighting-controller","motion-light","motion-sensor","python","smart-home"],"latest_commit_sha":null,"homepage":"https://danobot.github.io/ec-docs/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/danobot.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://paypal.me/danielb160","https://gofund.me/7a2487d5"]}},"created_at":"2018-11-19T09:26:13.000Z","updated_at":"2024-08-01T16:32:43.770Z","dependencies_parsed_at":"2024-01-13T09:28:25.615Z","dependency_job_id":"a6670bd7-485e-4044-a7ad-92435f034690","html_url":"https://github.com/danobot/entity-controller","commit_stats":null,"previous_names":[],"tags_count":105,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danobot%2Fentity-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danobot%2Fentity-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danobot%2Fentity-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danobot%2Fentity-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danobot","download_url":"https://codeload.github.com/danobot/entity-controller/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393570,"owners_count":20931813,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["entity-controller","finite-state-machine","hass","home-assistant","home-automation","internet-of-things","iot","lighting-controller","motion-light","motion-sensor","python","smart-home"],"created_at":"2024-08-01T15:05:40.800Z","updated_at":"2025-04-05T20:08:24.782Z","avatar_url":"https://github.com/danobot.png","language":"Python","funding_links":["https://paypal.me/danielb160","https://gofund.me/7a2487d5"],"categories":["Python"],"sub_categories":[],"readme":"[![License](https://img.shields.io/github/license/danobot/entity-controller.svg?style=flat-square)](https://github.com/danobot/entity-controller/blob/develop/COPYING)\n[![Blog](https://img.shields.io/badge/blog-The%20Budget%20Smart%20Home-orange?style=flat-square)](https://danielbkr.net/?utm_source=github\u0026utm_medium=badge\u0026utm_campaign=entity-controller)\n[![donate paypal](https://img.shields.io/badge/donate-PayPal-blue.svg?style=flat-square)](https://paypal.me/danielb160)\n[![donate gofundme](https://img.shields.io/badge/donate-GoFundMe-orange?style=flat-square)](https://gofund.me/7a2487d5)\n\n\n# :wave: Introduction\nEntity Controller (EC) is an implementation of \"When This, Then That for x amount of time\" using a finite state machine that ensures basic automations do not interfere with the rest of your home automation setup. This component encapsulates common automation scenarios into a neat package that can be configured easily and reused throughout your home. Traditional automations would need to be duplicated _for each instance_ in your config. The use cases for this component are endless because you can use any entity as input and outputs (there is no restriction to motion sensors and lights).\n\n[Entity Controller Documentation](https://danobot.github.io/ec-docs/)\n\n## Installation\nEC is available in HACS store. Once installed, add the the following to your `configuration.yaml`, replacing the values for `sensor` and `entity` with one of your own. Reboot your Home Assistant server and you should have a motion controlled light that turns off after 5 seconds.\n```\nmotion_light:\n  sensor: binary_sensor.living_room_motion\n  entity: light.tv_led\n  delay: 5\n```\n## :clapper: Video Demo\nI created the following video to give a high-level overview of all EC features, how they work and how you can configure them for your use cases.\n\n[![Video](images/video_thumbnail.png)](https://youtu.be/HJQrA6sFlPs)\n\n## Support\nMaintaining and improving this integration is very time consuming because of the sheer number of supported use cases. If you use this component in your home please donate a few dollars or check the issue tracker to help with the investigation of defects or the implementation of new features. I would be happy to receive your pull request.\n\n[![donate paypal](https://img.shields.io/badge/donate-PayPal-blue.svg?style=flat-square)](https://paypal.me/danielb160)\n[![donate gofundme](https://img.shields.io/badge/donate-GoFundMe-orange?style=flat-square)](https://gofund.me/7a2487d5)\n\n# Contributions\nAll contributions are welcome, including raising issues. Expect to be involved in the resolution of any issues. \n\nThe `close-issue` bot is ruthless. Please provide all requested information to allow me to help you.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanobot%2Fentity-controller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanobot%2Fentity-controller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanobot%2Fentity-controller/lists"}