[Twisted-Python] How to run function from protocol class
Jp Calderone
exarkun at divmod.com
Fri Aug 12 09:11:10 EDT 2005
On Fri, 12 Aug 2005 13:48:27 +0200, Michał Tyde <ajchos at wp.pl> wrote:
>I got the code:
>from twisted.internet.protocol import Protocol
>
>class MyClientProtocol(Protocol):
> buffer = ''
> def connectionMade(self):
> self.transport.write('hello world')
l = task.LoopingCall(self.myFunction)
l.start(5.0)
> def myFunction(self):
> self.transport.write('blah')
> def dataReceived(self, data):
> self.buffer += data
> if self.buffer == 'hello world':
> self.transport.loseConnection()
>from twisted.internet.protocol import ClientFactory
>
>class MyFactory(ClientFactory):
> protocol = MyClientProtocol
> def startedConnecting(self, connector):
> pass # we could connector.stopConnecting()
> def clientConnectionLost(self, connector, reason):
> connector.connect() # reconnect
> def clientConnectionFailed(self, connector, reason):
> print "connection failed"
> reactor.stop()
>
>from twisted.internet import reactor, task
>
>
>reactor.connectTCP('localhost', 7771, MyFactory(), timeout=30)
>reactor.run()
>
Jp
More information about the Twisted-Python
mailing list