Example #1
0
def registerUserRoomID(request_object):
    print(request_object)
    user, remain_sec = Auth.socket_logged_in_user(request_object)
    room_public_id = request_object.get('room_public_id')
    room = get_a_room(room_public_id)

    response_object = {
        'status': 'fail',
        'message': 'Fail to authenticate'
    }

    if room is None:
        response_object = {
            'status': 'fail',
            'message': 'Room not found'
        }
    else:
        if user is not None:
            # save pair of session id with user id
            result = save_user_id_room_id_with_sid(session_id=request.sid, user_id=user.id, room_id=room.id, remain_sec=remain_sec)

            if result == True:
                # join private room with specific name room is user with public id
                join_room(room=user.public_id, namespace='/')
                join_room(room=room_public_id, namespace='/rooms')
                # Notify user is authenticate successfully
                response_object = {
                    'status': 'success',
                    'message': 'Authenticate successfully'
                }
        
    emit('response_login_with_room', response_object, broadcast=False, namespace='/rooms')
def login_socket(request_object):
    user = Auth.socket_logged_in_user(request_object)

    if user is None:
        response_object = {
            'status': 'fail',
            'message': 'Fail to authenticate'
        }
        return None, response_object
    
    response_object = {
        'status': 'success',
        'message': 'Authenticate successfully'
    }
    return user, response_object
def login_room_socket(request_object):
    user = Auth.socket_logged_in_user(request_object)
    room_public_id = request_object.get('room_public_id')
    room = get_a_room(room_public_id)

    if user is None:
        response_object = {
            'status': 'fail',
            'message': 'Fail to authenticate'
        }
        return None, None, response_object

    if room is None:
        response_object = {
            'status': 'fail',
            'message': 'Room not found'
        }
        return None, None, response_object
    
    response_object = {
        'status': 'success',
        'message': 'Authenticate successfully'
    }
    return user, room, response_object