Awesome Open Source
Awesome Open Source
Sponsorship

SceneGen

Scenegen is a scene generation tool for Home Assistant home automation software. It creates scenes by example, by reading the current states of devices and outputting a corresponding scene. Scenegen is written in python using Home Assistant's RESTFul API so can be run from anywhere. It currently supports lights and switches only.

To set up SceneGen and install it locally, run the following from a shell in the checkout:

$ make

Then the script can be run locally from the checkout:

$ ./bin/scenegen --help

See the Home Assistant documentation for full usage instructions and documentation.

Exporting Multiple Scenes

Use the $ make export target to aid in exporting multiple scenes to YAML on the filesystem. This can be useful for "exporting" scenes from an integration, such as SmartThings, to native Home Assistant themes:

$ make EXPORT_ALL_SCENES=true URL=https://home-assistant.example.com:8123 TOKEN=... EXPORT_SCENE_DIR=../path/to/scenes export

If you don't want to export all the scenes, you can create a .scenes file in the EXPORT_SCENE_DIR listing one scene per line to export and remove the EXPORT_ALL_SCENES option.

Beyond these options, the export* targets in Makefile can be used as a reference or starting point to automate exporting multiple scenes.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
python (46,708) 
home-automation (188) 
home-assistant (159) 
scene (40) 

Find Open Source By Browsing 7,000 Topics Across 59 Categories

Advertising 📦10
All Projects
Application Programming Interfaces 📦124
Applications 📦192
Artificial Intelligence 📦78
Blockchain 📦73
Build Tools 📦113
Cloud Computing 📦80
Code Quality 📦28
Collaboration 📦32
Command Line Interface 📦49
Community 📦83
Companies 📦60
Compilers 📦63
Computer Science 📦80
Configuration Management 📦42
Content Management 📦175
Control Flow 📦213
Data Formats 📦78
Data Processing 📦276
Data Storage 📦135
Economics 📦64
Frameworks 📦215
Games 📦129
Graphics 📦110
Hardware 📦152
Integrated Development Environments 📦49
Learning Resources 📦166
Legal 📦29
Libraries 📦129
Lists Of Projects 📦22
Machine Learning 📦347
Mapping 📦64
Marketing 📦15
Mathematics 📦55
Media 📦239
Messaging 📦98
Networking 📦315
Operating Systems 📦89
Operations 📦121
Package Managers 📦55
Programming Languages 📦245
Runtime Environments 📦100
Science 📦42
Security 📦396
Social Media 📦27
Software Architecture 📦72
Software Development 📦72
Software Performance 📦58
Software Quality 📦133
Text Editors 📦49
Text Processing 📦136
User Interface 📦330
User Interface Components 📦514
Version Control 📦30
Virtualization 📦71
Web Browsers 📦42
Web Servers 📦26
Web User Interface 📦210