herrersystem / fbxtools

Interface within Freebox API and Python
GNU General Public License v3.0
13 stars 5 forks source link

Déconnexions de l'API #5

Closed fpp-gh closed 6 years ago

fpp-gh commented 6 years ago

Bonjour,

J'ai réussi à faire marcher cette lib (grand merci !), après avoir compris qu'elle ciblait Python3, puis découvert les dépendances l'une après l'autre (apize, colorama etc.). (ce serait plus rapide si tout ça était indiqué sur la page d'accueil :-)

Bref, mon souci est que je vise des sessions longues (récupération en continu des stats de connexion, pour conserver un historique du fonctionnement de la ligne). Mais au bout d'un temps aléatoire (généralement une heure, ou deux), les appels à l'API retournent un résultat vide (None), sans erreur, mais évidemment la suite du traitement échoue. Ça ressemble à un échec (ou timeout) de l'authentification. J'ai essayé de capter ça dans des try/except pour relancer des get_token() à ce moment-là, mais ça ne change rien.

C'est un phénomène connu, ou peut-être ma box, ou juste mon code trop naif ?

Si quelqu'un a eu le même problème et a trouvé comment le contourner, je suis preneur de l'astuce :-)

D'avance merci, FP

fpp-gh commented 6 years ago

Vérification faite, l'auth expire systématiquement au bout d'une heure, à quelques secondes près. C'est normal ? Comment la renouveler sans relancer le script ?...

fpp-gh commented 6 years ago

Bon, au cas où, pour les nuls comme moi... un petit "check" comme ça, au début de la boucle de "polling":

while 1:
    resp = get_xdsl()
    if resp[data][success] : break
    time.sleep(1)
    app.get_session_token()

Bourrin, mais efficace :-)