Okay - so to extend this subject, I'm thinking about designing some form of schema that can support different types of light to be included in a "scene".
As I see it, the different types of light you might want to control would be:
- Single colour (e.g. 0-255) - could also apply to e.g. rollerblinds
- RGB
- RGBW
- RGBWW (I think these are RGB LED strips with TWO additional whites, cool white and warm white)
How about an internal lookup JSON file, which specifies a mapping between colour names and values (e.g. red=255,0,0; salmon=250,128,114... etc)
So the scene definitions might be stored like this. Is this a vaguely sensible idea? Is there a better way?
Should I work towards creating my own node type to handle this stuff? Could it be useful for other people? (I've never created a node before, would be interested in giving it a go...)
[
{
"lightingzone":"3F_Bedroom",
"scene":"0",
"scenename":"All Off",
"ceiling":"0",
"wall":"0,0,0",
"floor":"0,0,0,0",
"rollerblind":""
},
{
"lightingzone":"3F_Bedroom",
"scene":"1",
"scenename":"Bedtime",
"ceiling":"5",
"wall":"10,10,10",
"floor":"10,10,10,10",
"rollerblind":"255"
},
{
"lightingzone":"3F_Bedroom",
"scene":"2",
"scenename":"Reading",
"ceiling":"0",
"wall":"150,150,0",
"floor":"0,255,0,255",
"rollerblind":"0"
},
{
"lightingzone":"3F_Bedroom",
"scene":"3",
"scenename":"Work",
"ceiling":"255",
"wall":"150,150,0",
"floor":"0,255,0,255",
"rollerblind":"150"
},
{
"lightingzone":"3F_Bedroom",
"scene":"4",
"scenename":"Getting Dressed",
"ceiling":"255",
"wall":"150,150,0",
"floor":"0,255,0,255",
"rollerblind":"150"
},
{
"lightingzone":"3F_Bedroom",
"scene":"5",
"scenename":"Full",
"ceiling":"255",
"wall":"255,255,255",
"floor":"255,255,255,255",
"rollerblind":"0"
}
]