I'm writing code so that LinuxMCE will automatically add Insteon devices that are in the same LinuxMCE scenario into an Insteon Group (by updating each insteon devices' ALDB). When the user chooses to activate that scenario it will send an Insteon Group Command (instead of sending separate individual commands to each insteon device, resulting in a staggered response).
I've got the code written that updates the ALDBs of each insteon device accordingly, based on data from pluto_main (queried through the XML_Data_Handler_Plugin).
Now there's one thing I'm trying to figure out: what kind of command should I send from LinxuMCE to the Insteon PLM drivers to trigger the Group command?
Tschak in the IRC channels has recommended the following.
<TSCHAKeee> basically, i would put the devices in a DeviceGroup
<TSCHAKeee> figure out in the plugin if the devices are part of a DeviceGroup
<TSCHAKeee> and if they all belong to the same parent interface
<TSCHAKeee> and then ask if the target interface implements an execute broadcast scenario command
<TSCHAKeee> if so, execute it, passing in the devicegroup
<TSCHAKeee> so the target device can do its mapping of devicegroup to whatever it needs to do internally
Any other thoughts on this problem?
PS: I've also fully implemented support for Insteon Motion Detectors in the Ruby GSD drivers, and I've cleaned up the code. I will commit my changes shortly.