Ejemplo n.º 1
0
def disconnect():
    # La sesión del usuario se limpia al reconectarse, aunque existen casos que
    # necesitan limpieza.
    logger.info(f"Ending session with user {session['user'].name}")

    # Puede estar buscando una partida pública
    if session["user"] in MM.users_waiting:
        MM.stop_waiting(session["user"])

    # NOTE: si el usuario está en una partida privada se cuenta como una
    # desconexión temporal y se podrá volver a unir.
    remove_from_public()
Ejemplo n.º 2
0
def stop_searching():
    """
    Parar de buscar una partida pública organizada por el servidor.

    :return: Devuelve un mensaje de tipo :ref:`msg_stop_searching` si se ha
        podido cancelar la búsqueda.

        Si se produce cualquier error (por ejemplo, que el usuario no esté
        buscando partida) se devolverá un :ref:`error <errores>`.
    """

    if session["user"] in MM.users_waiting:
        MM.stop_waiting(session["user"])
        emit("stop_searching")
    else:
        return {"error": "No estás buscando partida"}