#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
###########################################################################
# Eole NG - 2007
# Copyright Pole de Competence Eole  (Ministere Education - Academie Dijon)
# Licence CeCill  cf /root/LicenceEole.txt
# eole@ac-dijon.fr
#
# init_scan.py
#
# démarre la fonction de vérification de timeout des serveurs
#
###########################################################################

import xmlrpc.client, time, socket, sys
from zephir import config

z=xmlrpc.client.ServerProxy('http://zephir:zephir@localhost:%s/xmlrpc/' % (str(int(config.PORT_ZEPHIR)+1)))
retries = 10
end_wait = False
time.sleep(2)
while not end_wait:
    try:
        z.uucp.scan_timeouts()
        end_wait = True
        print("")
    except socket.error:
        if retries == 0:
            end_wait = True
            print("\nErreur de lancement de la boucle de surveillance, le serveur zephir n'est pas accessible.\n")
        time.sleep(3)
        retries -= 1
    except:
        # impossible d'accéder à la fonction scan_timeouts
        # cela arrive lors de l'instance quand les droits ne sont pas en place dans la base
        end_wait = True
