示例#1
0
def backup():
    """
	Cette fonction crée une archive chiffrée du dossier personnel de l'utilisateur et l'envoie au serveur.
	Elle est utile pour permettre au client de se déconnecter de l'application sans pour autant perdre ses données.
	On pourrait également appeler cette fonction à intervalle de temps régulier afin d'assurer les donées du client.
	"""

    global username
    global mdp
    zipdirectory("backup.zip", username)
    backup_crpt = crpt.crypt("backup.zip", mdp)
    bkp_file = open(backup_crpt, 'rb')
    msg_to_send = "BACKUP\\" + binascii.hexlify(bkp_file.read())
    bkp_file.close()
    # --- AFFICHER UNE ANIMATION D'ATTENTE ET INFORMER : SAUVEGARDE DES DONNEES EN COURS ---
    ticket = connection_server.ask_for_ticket()
    connection_server.requests[ticket] = msg_to_send
    connection_server.ask_for_send(ticket)
    msg_from_server = attendre_reponse(ticket)
    if msg_from_server == "BACKUP\\OK":
        # --- AFFICHER A L'ECRAN : ENVOI DE LA SAUVEGARDE REUSSI ---
        os.remove(backup_crpt)
        with open("bkp_sended.txt", "a") as f:
            f.write(msg_to_send)
        return backup_crpt
    else:
        # --- AVERTIR L'UTILISATEUR AVEC UNE POPUP ET FERMER L'APPLICATION ---
        return "ERROR"
示例#2
0
def backup():
    global username
    global mdp
    zipdirectory("backup.zip", username)
    backup_crpt = crpt.crypt("backup.zip", mdp)
    bkp_file = open(backup_crpt, 'rb')
    msg_to_send = "BACKUP\\" + binascii.hexlify(bkp_file.read())
    bkp_file.close()
    print "Envoi de la sauvegarde..."
    connection_server.send(msg_to_send + chr(23))
    msg_from_server = attendre_reponse()
    if msg_from_server == "BACKUP\\OK":
        print "Envoye ! "
        os.remove(backup_crpt)
        with open("bkp_sended.txt", "a") as f:
            f.write(msg_to_send)
        return backup_crpt
    else:
        print "Une erreur est survenue lors de l'envoi de la sauvegarde. Vous n'allez pas être deconnecte."
        return "ERROR"