
Hi, I am implementing a code through which i have to get devices connected to all network interfaces on my machine and list them . For this, i am first getting the ip of all network interfaces and then sending m-search command on them. After 2.5 seconds port is stopped to listen. But it is giving me some assertion error. (I am connected to 2 interfaces -ethernet and wifi) `Code:` class Base(DatagramProtocol): """ Class to send M-SEARCH message to devices in network and receive datagram packets from them """ SSDP_ADDR = "239.255.255.250" SSDP_PORT = 1900 MS = "M-SEARCH * HTTP/1.1\r\nHOST: {}:{}\r\nMAN: 'ssdp:discover'\r\nMX: 2\r\nST: ssdp:all\r\n\r\n".format(SSDP_ADDR, SSDP_PORT) def sendMsearch(self): """ Sending M-SEARCH message """ ports = [] for address in self.addresses: ports.append(reactor.listenUDP(0, self, interface=address)) for port in ports: for num in range(4): port.write(Base.MS, (Base.SSDP_ADDR,Base.SSDP_PORT)) reactor.callLater(2.5, self.stopMsearch, port) # MX + a wait margin def stopMsearch(self, port): """ Stop listening on port """ port.stopListening() `Error:` Traceback (most recent call last): File "work\find_devices.py", line 56, in sendMsearch ports.append(reactor.listenUDP(0, self, interface=address)) File "C:\Python27\lib\site-packages\twisted\internet\posixbase.py", line 374, in listenUDP p.startListening() File "C:\Python27\lib\site-packages\twisted\internet\udp.py", line 172, in startListening self._connectToProtocol() File "C:\Python27\lib\site-packages\twisted\internet\udp.py", line 210, in _connectToProtocol self.protocol.makeConnection(self) File "C:\Python27\lib\site-packages\twisted\internet\protocol.py", line 709, in makeConnection assert self.transport == None AssertionError This code worked: def sendMsearch(self): """ Sending M-SEARCH message """ address = socket.gethostbyname(socket.gethostbyname()) port = reactor.listenUDP(0, self, interface=address) for num in range(4): port.write(Base.MS, (Base.SSDP_ADDR,Base.SSDP_PORT)) reactor.callLater(2.5, self.stopMsearch, port) # MX + a wait margin Please tell what's wrong in code mentioned in the start of this mail and how to correct this. I have also posted this code on stackoverflow , but didn't get any response http://stackoverflow.com/questions/24178580/send-m-search-packets-on-all-net...