client:
'''
Demostration client from string
'''
from twisted.internet import protocol,reactor,endpoints
class ClientEcho(protocol.Protocol):
def connectionMade(self):
self.transport.write('greet!')
def dataReceived(self, data):
print 'Client received:',data
def connectionLost(self, reason):
reactor.stop()
if __name__ == '__main__':
f = protocol.ClientFactory()
f.protocol = ClientEcho
endpoints.clientFromString(reactor,\
'tcp:host=localhost:8888')\
.connect(f)
reactor.run()
server:
'''
Demostration server from string
'''
from twisted.internet import protocol,reactor,endpoints
class EchoProtocol(protocol.Protocol):
def dataReceived(self,data):
print 'Server received:', data
self.transport.write(data)
self.transport.loseConnection()
if data == 'quit':
reactor.stop()
if __name__ == '__main__':
#Use default ServerFactory
#In endpoints module according differ string to make differ endpoint
#Detail to see twisted.internet.endpoints
f = protocol.ServerFactory()
f.protocol = EchoProtocol
endpoints.serverFromString(reactor,'tcp:8888')\
.listen(f)
reactor.run()