Metadata-Version: 2.0
Name: asynmsg
Version: 0.1.15
Summary: A library help to build tcp server/client application
Home-page: https://github.com/sunjinopensource/asynmsg/
Author: Sun Jin
Author-email: sunjinopensource@qq.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3

asynmsg
=======

A library based on asyncore, used to build tcp server/client application communicating each other with customized messages.

Examples
--------

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()


