def client_send_osc_message(self, category, name, data):
        """Sends an OSC message to the client to update it
        Parameters:
        category - type of update, sw, coil, lamp, led, etc.
        name - the name of the object we're updating
        data - the data we're sending
        """
        if self.OSC_clients:
            self.OSC_message = OSCmodule.OSCMessage("/" + str(category) + "/" +
                                                    name)
            self.OSC_message.append(data)

            for k in self.OSC_clients.items():
                try:
                    if self.config['debug_messages']:
                            self.log.info("Sending OSC Message to client:%s: "
                                           "%s", k, self.OSC_message, )
                    k[1].send(self.OSC_message)

                except OSCmodule.OSCClientError:
                    self.log.info("OSC client at address %s disconnected",
                                   k[0])
                    # todo mark for deletion
                    self.clients_to_delete.append(k)
                    break

        for client in self.clients_to_delete:
            if client in self.OSC_clients:
                del self.OSC_clients[client]
        self.clients_to_delete = []

        for client in self.clients_to_add:
            self.setup_osc_client(client)
dataset/ETHPy150Open missionpinball/mpf/mpf/plugins/osc.py/OSC.client_send_osc_message/original