Ejemplo n.º 1
0
def main():
    global options, member_service, interconnect
    parser = argparse.ArgumentParser(sys.argv[0])
    parser.add_argument('--host', default='127.0.0.1')
    parser.add_argument('--port', type=int, default=7001)
    parser.add_argument('--redis-url', default='redis://localhost:6379')
    parser.add_argument('--member-service', default='localhost')
    parser.add_argument('--discuz-cookiepre', default='VfKd_')
    options = parser.parse_args()

    member_service = RPCClient((options.member_service, 7000), timeout=2)
    interconnect = Interconnect.spawn('forum', options.redis_url)

    run(server='gevent', host=options.host, port=options.port)
Ejemplo n.º 2
0
def main():
    global options, member_service, interconnect, log
    parser = argparse.ArgumentParser('aya_charger')
    parser.add_argument('--redis-url', default='redis://localhost:6379')
    parser.add_argument('--member-service', default='localhost')
    parser.add_argument('--log', default='INFO')
    options = parser.parse_args()

    logging.basicConfig(stream=sys.stdout, level=getattr(logging, options.log))
    log = logging.getLogger('aya_charger')

    member_service = RPCClient((options.member_service, 7000), timeout=2)
    interconnect = Interconnect.spawn('charger', options.redis_url)

    gevent.hub.get_hub().join()
Ejemplo n.º 3
0
            self.notify('current_users', rst)

        if topic == 'speaker':
            # [node, username, content]
            message.insert(0, node)
            self.notify('speaker', message)

    def notify(self, key, message):
        @gevent.spawn
        def _notify():
            events_history.rotate()
            events_history[0] = [[key, message], time.time()]
            [evt.set() for evt in list(event_waiters)]


Interconnect = Interconnect.spawn('forum', options.redis, options.redis_port)


@route('/interconnect/onlineusers')
def onlineusers():
    rst = []
    map(rst.__iadd__, current_users.values())
    return json.dumps(rst)


@route('/interconnect/events')
def events():
    try:
        last = float(request.get_cookie('interconnect_last_event'))
    except:
        last = time.time()
Ejemplo n.º 4
0
            self.notify('current_users', rst)

        if topic == 'speaker':
            # [node, username, content]
            message.insert(0, node)
            self.notify('speaker', message)

    def notify(self, key, message):
        @gevent.spawn
        def _notify():
            events_history.rotate()
            events_history[0] = [[key, message], time.time()]
            [evt.set() for evt in list(event_waiters)]


Interconnect = Interconnect.spawn('forum', options.redis, options.redis_port)


@route('/interconnect/onlineusers')
def onlineusers():
    rst = []
    map(rst.__iadd__, current_users.values())
    return json.dumps(rst)


@route('/interconnect/events')
def events():
    try:
        last = float(request.get_cookie('interconnect_last_event'))
    except:
        last = time.time()