I've found an example for UDP broadcasting: <https://twistedmatrix.com/trac/browser/trunk/docs/projects/core/examples /udpbroadcast.py?rev=41516>
However, it combines the sender and receiver in a way that I find confusing. I figured out how output UDP broadcast packets, but not how to make a client that receives to the packets. Here is what we have, which doesn't work. Based on a comment on the broadcast UDP ticket. I suspect the problem is specifying the broadcast address using the interface argument to listenUDP, but I'm not sure. In any case, no value for interface that I've tried works: -"<broadcast>" (which is what my senders uses) results in twisted.internet.error.InvalidAddressError -"255.255.255.255" results in twisted.internet.error.CannotListenError: Couldn't listen on 255.255.255.255:1235: [Errno 49] Can't assign requested address. - omitting it results in no packets received. I also tried listenMulticast, but it didn't work (and I didn't expect it to, based on comments I saw on the ticket for implementing UDP broadcast support). Any hints would be appreciated. #!/usr/bin/env python2 """Attempt to listen to UDP broadcasts """ from twisted.internet.protocol import DatagramProtocol from twisted.internet import reactor Port = 1235 class BroadcastUDPClient(DatagramProtocol): def startProtocol(self): self.transport.setBroadcastAllowed(True) def datagramReceived(self, datagram, address): print "got a UDP broadcast packet" class UDPListener(object): def __init__(self, port): self.port = port self.broadcastClient = BroadcastUDPClient() self.listener = None self.startListening() def startListening(self): if self.listener is None: interface = "255.255.255.255" self.listener = reactor.listenUDP(self.port, self.broadcastClient, interface) def stopListening(self): if self.listener is not None: self.listener.stopListening() self.listener = None if __name__ == "__main__": listener = UDPListener(Port) reactor.run() _______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python