enhance slave mode
Recent use cases reminded me that it's sometimes useful to separate 1 ebus into 2, which might require to emulate one or more clients. It would be very handy if ebusd would support a slave device mode with the capability to define a set of supported messages and their answer, that ebusd should send.
Maybe that's a too complex enhancement and should be done in a separate project, but I don't know any other projects dealing with ebus. Maybe ebusd could simply provide a method to interfere bus messages? Or some library mode to use from other scripts or programs? Then it could just hand over all messages to some "plug in", which is then able to respond via ebusd?
this is already supported up to the point where ebusd has to answer to queries from another participant. here the new constant value fields come in handy but variables and a store of variable values might be needed as well.
Ah, okay - I didn't get the sense of #39 as there's not much explanation. But yes, I could imagine using the normal cache of ebusd - so defining a read/write constant value field would enable to issue an "ebusctl w ConstantValueField 13" to set the value to respond to readings from bus...
the idea of the variables is somewhat different, i.e. the definition in CSV would allow for using "=$variable" instead of a constant value as referred to by #39, and then ebusd would be able to answer those from the internal variables. of course there would also need to be a command allowing to change those variables.
add option to define file for own config