def execute(self, controller_id, command, *args, **kwargs):
        """
        Execute a single command, and sets sleep times properly.

        - controller_id = index of controller, zero-based
        - command is normal LedController command as a string
        - *args and **kwargs are passed to command

        For example, .execute(0, "on", 1) sends "on" command to group 1 on controller 0 (first IP passed to constructor).
        """
        controller_instance = self.controllers[controller_id]
        controller_instance.last_command_at = self.last_command_at
        ret_val = getattr(controller_instance, command)(*args, **kwargs)
        self.last_command_at = controller_instance.last_command_at
        return ret_val
def execute ( self , controller_id , command , * args , ** kwargs ) : controller_instance = self . controllers [ controller_id ] controller_instance . last_command_at = self . last_command_at ret_val = getattr ( controller_instance , command ) ( * args , ** kwargs ) self . last_command_at = controller_instance . last_command_at return ret_val
Execute a single command, and sets sleep times properly.

        - controller_id = index of controller, zero-based
        - command is normal LedController command as a string
        - *args and **kwargs are passed to command

        For example, .execute(0, "on", 1) sends "on" command to group 1 on controller 0 (first IP passed to constructor).