Group rules trigger

@5iver this would sure trigger when the state is updated.

Then the design is somehow not as i would expect it. On Trigger RECEIVED COMMAND i expect to be able to read out the command which triggered the change. This is solved by the implicite variable, but somehow not intuitiv, IMHO.

  1. A different question comes up then: the rule gets executetd multiple times when the group triggers the change of the members. And multiple times as the members updating the group.

  2. I would have wished that a group change would just do a postUpdate of the member. So when using changed you may trigger the rule when members get updated by the group, and using received command you may trigger when actually a command was issued.

rule "Single Plug"
  when
    Item member_1 changed or
    Item member_2 changed or
    Item member_3 changed or
    Item member_4 changed or
    Item group changed 
  then
    logInfo("GroupTest", "Member " + triggeringItem.name + " to " + receivedCommand)
 end
[INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'group' received command ON
[INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'member_1' received command ON
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member member_4 to ON
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member member_2 to ON
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member member_1 to ON
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member group to OFF
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member group to OFF
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member group to ON
[INFO ] [ipse.smarthome.model.script.GroupTest] - Member member_3 to ON
[INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'member_2' received command ON
[INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'member_3' received command ON
[INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'member_4' received command ON
[INFO ] [smarthome.event.ItemStateChangedEvent] - member_1 changed from OFF to ON
[INFO ] [home.event.GroupItemStateChangedEvent] - group changed from ON to OFF through member_1
[INFO ] [home.event.GroupItemStateChangedEvent] - group changed from OFF to ON through member_3
[INFO ] [smarthome.event.ItemStateChangedEvent] - member_2 changed from OFF to ON
[INFO ] [smarthome.event.ItemStateChangedEvent] - member_4 changed from OFF to ON
[INFO ] [smarthome.event.ItemStateChangedEvent] - member_3 changed from OFF to ON