A library based on asyncore, used to build tcp server/client application communicating each other with customized messages.
Server:
import asynmsg @asynmsg.with_message_handler_config class ServerSession(asynmsg.SessionS): @asynmsg.message_handler_config('Login') def on_Login(self, msg_id, msg_data): self.send_message('LoginAck', 'login success') class Server(asynmsg.Server): session_class = ServerSession Server(('127.0.0.1', 12345)) asynmsg.run_forever()
Client:
import asynmsg @asynmsg.with_message_handler_config class ClientSession(asynmsg.SessionC): def on_opened(self): asynmsg.SessionC.on_opened(self) self.send_message('Login', 'test1') @asynmsg.message_handler_config('LoginAck') def on_LoginAck(self, msg_id, msg_data): pass class Client(asynmsg.ClientBlockConnect): session_class = ClientSession client = Client(('127.0.0.1', 12345)) if client.is_started(): asynmsg.run_forever()