kdietrich / homeeup

WARNING: this repo is not maintained anymore. Use virtual devices in homee. <3
13 stars 9 forks source link

Idea for a new Plugins: StateMachine/VariableArray and some often requested homee features #10

Open hblaschka opened 6 years ago

hblaschka commented 6 years ago

A lot of users have the issue that they want to store Variables in homee, but cannot do this without "hacking the system" via workarounds (e.g. use the activation / deactivation of HGs for the storage of stati like Summer/Winter) or the state of Plugs/Switches to store a simple True/False state in a Variable that can then be used in HGs.

What if this could change with a homeeUp Plugin, that allows to store variables and their values in a bunch of "virtual Devices" that are fully managed by the Plugin itself?

The basic idea would be that this Plugin would automatically add fitting devices at the interface for each Variable that is defined on the config for the Plugin, that then can be used inside homee HGs.

How could this look like (to get an impression of the idea):

"deviceName": "homeeVariableArray", "type": "StateMachine", "pluginParams": { "Name of Variable 1": "TypeOfVariable", "Name of Variable 2": "TypeOfVariable", "........": "......."

The name of each Variable would then be delivered as a device (Name of Variable (homeeVariableArray) on the Interface.

The type of Variable defined would influence the devicetype used, for each type an instance of an existing device type would be generated that would behave in an expected and documented way.

That way Variables like

These "virtual" devices could then be used to store or trigger states, even complex ones, from outside homee.

This would need persistance (the actual status/values of all Variables would need to be stored locally by homeeUp at all times, in case homeeUp would be stopped or ends unexceptedly).

On top of that a unsorted list of probably useful other plugins:

Coffee-lover commented 6 years ago

Hi there,

today another idea came up to my mind: Why not using a emulated RGBW-device to store last status of a real LED or bulb to reuse later on. Holger helped me to get linked to this issue, so I just wanted to extend his issue with this idea. Basically it should be solvable in the same way.

Best regards.