from twisted.internet import reactor, protocol from packetformat import PacketFormat import paatti_pb2 from messagetypes import messagetypes class DummyServer(PacketFormat): def connectionMade(self): loginmsg = paatti_pb2.LoginRequest(im_rpc_server = True) self.sendMessage(paatti_pb2.Login, loginmsg) def messageReceived(self, msgtype, payload): if msgtype == paatti_pb2.Login: return msg = messagetypes[msgtype].request.FromString(payload) print "Received " + messagetypes[msgtype].name print str(msg) error = paatti_pb2.ErrorResponse( scope = paatti_pb2.ErrorResponse.PROTOCOL, message = "This is a dummy server!") self.sendMessage(paatti_pb2.Error, error) def connectionLost(self, reason): if reactor.running: reactor.stop() class DummyServerFactory(protocol.ClientFactory): protocol = DummyServer if __name__ == '__main__': import sys if len(sys.argv) != 3: print "Usage: " + sys.argv[0] + " host port" sys.exit(1) host = sys.argv[1] port = int(sys.argv[2]) reactor.connectTCP(host, port, DummyServerFactory()) reactor.run()