Source code for caspia.gateway.rules.activate_group
from caspia.gateway.services import RelayBasedServiceMixin
from caspia.node import components
[docs]def activate_light_group_attach_rule(rule, context):
if not isinstance(rule.light, RelayBasedServiceMixin):
return None
group = context.get_lightgroup_behavior(rule.group)
group.add(rule.light)
relay_c = rule.light.relay_c
membership = components.Relay.GroupMembership(group.identifier, group.is_master(rule.light))
relay_c.config.group_memberships.append(membership)
return True