Esempio n. 1
0
def heartbeat(request):
    """
    心跳
    :param request:
    :return:
    """
    logger.debug("uid: %s, userdata: %s", request.gw_box.uid, request.gw_box.userdata)

    if current_app.config["REDIS_ONLINE_SAVE"]:
        # 有效
        try:
            save_redis_online(request.gw_box.uid, request.gw_box.userdata)
        except:
            logger.error("exc occur. request: %s", request, exc_info=True)

    request.write_to_client(dict(ret=0))
Esempio n. 2
0
def heartbeat(request):
    """
    心跳
    :param request:
    :return:
    """
    logger.debug('uid: %s, userdata: %s', request.gw_box.uid, request.gw_box.userdata)

    if current_app.config['REDIS_ONLINE_SAVE']:
        # 有效
        try:
            save_redis_online(request.gw_box.uid, request.gw_box.userdata)
        except:
            logger.error('exc occur. request: %s', request, exc_info=True)

    request.write_to_client(dict(
        ret=0
    ))
Esempio n. 3
0
def login(request):
    """
    登录
    :param request:
    :return:
    """
    user_table = kit.mongo_client.get_default_database()[current_app.config['MONGO_TB_USER']]

    user = user_table.find_one({
        'uid': request.json_data['uid'],
        'key': request.json_data['key'],
    })

    if not user:
        request.write_to_client(dict(
            ret=proto.RET_NO_DATA
        ))
        return

    # 因为现在注册永远是第一步,所以不需要再在login的时候做更新了
    # 只有部分数据要更新,其他的就按照注册的时候来
    # user_table.update({
    #     '_id': user['_id'],
    # }, {
    #     '$set': dict(
    #         os=request.json_data.get('os'),
    #         os_version=request.json_data.get('os_version'),
    #         sdk_version=request.json_data.get('sdk_version'),
    #     )
    # })

    # 放appid的原因是,心跳的时候可以直接取到appid,这样写入redis的时候就方便多了
    request.login_client(user['uid'], user['appid'])

    if current_app.config['REDIS_ONLINE_SAVE']:
        # 有效
        try:
            save_redis_online(user['uid'], user['appid'])
        except:
            logger.error('exc occur. request: %s', request, exc_info=True)

    request.write_to_client(dict(
        ret=0
    ))
Esempio n. 4
0
def login(request):
    """
    登录
    :param request:
    :return:
    """
    user_table = kit.mongo_client.get_default_database()[current_app.config["MONGO_TB_USER"]]

    user = user_table.find_one({"uid": request.json_data["uid"], "key": request.json_data["key"]})

    if not user:
        request.write_to_client(dict(ret=proto.RET_NO_DATA))
        return

    # 因为现在注册永远是第一步,所以不需要再在login的时候做更新了
    # 只有部分数据要更新,其他的就按照注册的时候来
    # user_table.update({
    #     '_id': user['_id'],
    # }, {
    #     '$set': dict(
    #         os=request.json_data.get('os'),
    #         os_version=request.json_data.get('os_version'),
    #         sdk_version=request.json_data.get('sdk_version'),
    #     )
    # })

    # 放appid的原因是,心跳的时候可以直接取到appid,这样写入redis的时候就方便多了
    request.login_client(user["uid"], user["appid"])

    if current_app.config["REDIS_ONLINE_SAVE"]:
        # 有效
        try:
            save_redis_online(user["uid"], user["appid"])
        except:
            logger.error("exc occur. request: %s", request, exc_info=True)

    request.write_to_client(dict(ret=0))