def METHOD_NAME(reactor, transport):
    @coroutine
    def session_main(reactor, session):
        result = yield session.call('com.example.add2', 2, 3)
        print('result={}'.format(result))
    # returns when the session_main has finished (!), the session
    # calls leave() or the underlying transport closes
    yield transport.join(session_main, transport)