I've written a simple protocol, factory and service and can't seem to get it to work right. It is so simple that I can't seem to figure out the problem. Here is the code: --------------------------------------------------------- # Import standard python modules from random import random from cmath import exp # Import 3rd party modules from twisted.internet.protocol import DatagramProtocol, ServerFactory from twisted.internet import reactor from twisted.application import internet class NeedFilesServer(DatagramProtocol) : def datagramReceived(self, dgram, sourceIP) : if dgram == 'HELPNeedFiles' : self.transport.write(IAmHere",sourceIP) class NeedFilesFactory(ServerFactory): protocol = NeedFilesServer class NeedFilesService(internet.UDPServer): def __init__(self,wkp): internet.UDPServer.__init__(self,wkp,NeedFilesFactory()) ----------------------------------------------------------------- When I do the standard application thing... application = service.Application('foo') srv = service.MultiService() NeedFilesSrv = NeedFilesService(config['wkp']) NeedFilesSrv.setServiceParent(srv) srv.setServiceParent(service.IServiceCollection(application)) I get a the following trace: Traceback (most recent call last): 2006/06/14 15:23 EDT [-] File "/usr/bin/twistd", line 25, in ? 2006/06/14 15:23 EDT [-] run() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/scripts/twistd.py", line 205, in run 2006/06/14 15:23 EDT [-] app.run(runApp, ServerOptions) 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/application/app.py", line 278, in run 2006/06/14 15:23 EDT [-] runApp(config) 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/scripts/twistd.py", line 196, in runApp 2006/06/14 15:23 EDT [-] startApplication(config, application) 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/scripts/twistd.py", line 173, in startApplication 2006/06/14 15:23 EDT [-] service.IService(application).privilegedStartService() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/application/service.py", line 191, in privilegedStartService 2006/06/14 15:23 EDT [-] service.privilegedStartService() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/application/service.py", line 191, in privilegedStartService 2006/06/14 15:23 EDT [-] service.privilegedStartService() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/application/internet.py", line 68, in privilegedStartService 2006/06/14 15:23 EDT [-] self._port = self._getPort() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/application/internet.py", line 86, in _getPort 2006/06/14 15:23 EDT [-] return getattr(reactor, 'listen'+self.method)(*self.args, **self.kwargs) 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/internet/posixbase.py", line 307, in listenUDP 2006/06/14 15:23 EDT [-] p.startListening() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/internet/udp.py", line 85, in startListening 2006/06/14 15:23 EDT [-] self._connectToProtocol() 2006/06/14 15:23 EDT [-] File "/usr/lib64/python2.4/site-packages/twisted/internet/udp.py", line 105, in _connectToProtocol 2006/06/14 15:23 EDT [-] self.protocol.makeConnection(self) 2006/06/14 15:23 EDT [-] AttributeError: NeedFilesFactory instance has no attribute 'makeConnection' I've looked at the FTP protocol code and I seem to be doing the same things. Does anyone know what I am doing wrong? Thanks in advance, Chaz.