“An exercise for the reader”
Seeing as you have multiple similar Items, this is an ideal case for deploying ‘Associated Items’ naming techniques with the vers 2.3 on Group rule triggers.
This allows all related Items to share one set of rules.
Use a scheme to name Items like myLight, myLight_sonoff, hisLight, hisLight_sonoff.
Group these items, e.g. gLights , gSonoffs
This will allow rules to work out the name of an associated Item from the name of the one it’s working with.
Rules can then retrieve the Item called XX from a given group.
Rules can triggered from Group member events e.g. member of gLights received command
Rule can get triggering Item name (that ‘member’), manipulate the string to add “_sonoff”, and search another Group by name string to get the Item that pairs with the light it started with.
And then go on to do its thing of course.
It’s a little more effort to implement to begin with, but is expandable to 4, 8, 400 Items easily, requiring only sticking to a naming convention.