Retorcido: envío de datos a clientes seleccionados

Hay un servidor que hice con Twisted que recibe cadenas de un cliente y las envía a todos los demás clientes conectados. ¿Pero hay una manera de enviar la cadena a solo clientes a los que el remitente quería enviarla? Si es así, ¿cómo lo hago en código? Esto es lo que hice hasta ahora (NOTA: soy un noob completo en Python. Solo necesito crear un servidor para mi aplicación iOS, así que lo siento si la pregunta es tonta):

from twisted.internet.protocol import Protocol, Factory from twisted.internet import reactor class IphoneChat(Protocol): def connectionMade(self): #self.transport.write("""connected""") self.factory.clients.append(self) print "clients are ", self.factory.clients def connectionLost(self, reason): self.factory.clients.remove(self) def dataReceived(self, data): #print "data is ", data a = data.split(':') if len(a) > 1: command = a[0] content = a[1] msg = "" if command == "iam": self.name = content msg = "iam" + self.name + " has joined" elif command == "msg": msg = self.name + ": " + content elif command == "img": msg = command + ":" + content + ":" + command elif command == "img2": msg = content elif command == "img3": msg = content print msg for c in self.factory.clients: c.message(msg) def message(self, message): self.transport.write(message + '\n') factory = Factory() factory.protocol = IphoneChat factory.clients = [] reactor.listenTCP(53080, factory) print "Iphone Chat server started" reactor.run() 

Gracias por la ayuda

 self.factory.clients[24].transport.write("You are client 24!") 

Creo que deberia funcionar