Blocage du lien entre le plugin et le serveur (erreur 401)

Bonjour à tous,

Enfin, j’ai trouvé la raison du blocage qui se produit depuis quelques semaines chez la plupart d’entre vous.

image

Je vous explique en deux lignes.

Pour vous éviter d’avoir à régénérer le cookie manuellement, le plugin le fait tout seul.
Il faut donc un test pour voir depuis quand date votre cookie et s’il le considère trop ancien, il lance une régénération. Il faut cela très bien tout seul et vous n’avez rien à faire.

L’opération de renouvellement du cookie fonctionne bien, ce n’est pas elle qui pose souci, c’est juste à la fin de cette génération que le problème apparait, en effet, pour une raison que je cherche encore, le lien précédent est perdu et l’erreur d’authentification 401 apparait (au lieu de 200). Une simple relance du daemon corrige le souci, c’est ce que certains d’entre vous font. En effet, à la relance du démon, le cookie n’est pas assez ancien pour être généré et donc le dernier lien est bon, plus d’erreur.

La facilité serait de lancer une nouvelle relance du daemon a la fin de la génération du cookies, je vais essayer de l’éviter pour ne pas avoir deux relances successives du daemon (que jeedom n’aime pas), je voudrais trouver ce qui se passe à la régénération du cookies.
Amazon a dû ajouter une sécurité à la sécurité. Est ce que l’identification précédente d’un cookie généré n’est plus autorisée ? peut-être, je vais creuser cela…

Tout cela pour vous dire qu’il est maintenant inutile de m’envoyer vos logs (j’ai trouvé d’où vient le souci !! oufffffffffffff) ou de continuer à poster aveuglement des messages pour raconter votre blocage (si si je vous assure, il existent encore beaucoup de membres de community qui ne regarde pas si leur problème a déjà été évoqué).
J’en ai trouvé la cause et cherche comment la corriger.
Mille merci à tous ceux qui m’ont envoyé des lignes et des lignes de code pour trouver à quel moment le souci apparaissait.

Si un modérateur peut fermer tous les autres messages, merci par avance.

Je vous tiens au courant ici.
:wink:

10 « J'aime »

Salut @sigalou
Bonne nouvelle que tu arrives à reproduire et bon courage :slight_smile:

oui et il ne lirons pas non plus ce message, donc tu en aura encore :stuck_out_tongue:

Ce ne sera pas de l’impolitesse si je ne réponds pas du coup … :crazy_face:

1 « J'aime »

Si moi je l’ai lu :crazy_face::stuck_out_tongue_winking_eye:

C’est bien plus de 2 lignes ça !!! lol

Merci pour ton retour et ton support.
Bon courage à toi.

T’es sur de ta phrase ??? :stuck_out_tongue_winking_eye:

corrigé, mais tu l’as remarqué, je ne suis pas agrégé de littérature…

Sans vouloir enfoncer des portes ouvertes, mais pour essayer de comprendre également, lorsque tu te connectes à Amazon avec un cookie arrivant à expiration, tu lances une génération et dans la logique, Amazon attend maintenant une nouvelle connexion avec le nouveau cookie. Donc ta précédente session est morte en soit. Pas moyen de refaire une connexion sans relancer le démon ?

Non car le daemon lance le lien au serveur, donc pour relancer la connexion, il faut relancer le démon.

Ce soir, j’ai poussé une nouvelle version :muscle:. Très heureux :grin:

Je pense que c’est ça, Amazon n’a aucune tolérance avec un cookie qui a été recréé, les sessions précédentes sont maintenant immédiatement interdites :grimacing:, même si le cookie n’est qu’actualisé.

J’ai donc mis une nouvelle identification dès régénération du cookie, cela allonge d’une seconde chez moi la séquence d’initialisation (uniquement en cas de régénération du cookie). Si le cookie est toujours bon, aucun changement, il n’y avait pas de plantage précédemment.

Je vous laisse le plaisir de mettre à jour la bêta. :wink:
SVP, :innocent: manifestez vous ci-dessous pour dire que vous avez mis à jour et sans aucun nouveau message, j’en déduirai que tout fonctionne bien (on va le faire dans ce sens). Si vous avez un changement de volume ou un" faire parler alexa" qui donne une erreur 401 :face_with_head_bandage:, passez vite me le dire ici. Je ne pense pas, tous les tests ont bien fonctionné chez moi. Mais on ne sait jamais.

Au plaisir de vous lire ci-dessous. :upside_down_face: :grin:
Bons tests, bonne soirée. :last_quarter_moon_with_face:

2 « J'aime »

Toi … tu as lu le coup de gueule de qlq un ! :sweat_smile: :upside_down_face:

Je mets a jour, et te reviens dans les prochains jours pour dire si OK ou KO ! :slight_smile:

Bonjour,

Je viens de mettre à jour avec la beta. Je te tiens au courant par rapport à la stabilité de cette version et encore bravo pour avoir trouvé (ouhhh les coquins d’amazon!!!) :wink:

Bonjour et merci encore pour le travail effectué ! Mise à jour faite ce matin.

bonjour,

Je confirme la résolution :

[5/4/2021, 8:12:25 AM][INFO] : {API}               ╔═════════════════════════════════════════════╗
[5/4/2021, 8:12:25 AM][INFO] : {API}               ║   Lien au serveur Amazon En COURS D ARRET   ║
[5/4/2021, 8:12:25 AM][INFO] : {API}               ╚═════════════════════════════════════════════╝
[5/4/2021, 8:12:31 AM][INFO] :
[5/4/2021, 8:12:32 AM][INFO] : {API}    ╔═══════════════════[Lancement du lien au Serveur Amazon]═════════════════════════════════════════════════════════
[5/4/2021, 8:12:32 AM][DEBUG] : {Remote} ║ Use as Login-Amazon-URL: amazon.fr
[5/4/2021, 8:12:32 AM][DEBUG] : {Remote} ║ Use as Base-URL: alexa.amazon.fr
[5/4/2021, 8:12:32 AM][DEBUG] : {Remote} ╠═╦═> Cookie OK
[5/4/2021, 8:12:32 AM][DEBUG] : {Remote} ║ ╠═════> Dernier cookie généré le 03/05/2021 à 07:47:09
[5/4/2021, 8:12:32 AM][DEBUG] : {Remote} ║ ╠═════> Anciennes données existent - On tente un rafraîchissement
[5/4/2021, 8:12:32 AM][DEBUG] : {Remote} ║ ╚═════> 
[5/4/2021, 8:12:32 AM][INFO] : {Cookie} ║ ┌────────────────────────────────────────────────────────────────────────────────────────────────────
[5/4/2021, 8:12:32 AM][INFO] : {Cookie} ║ │        Récupération du Cookie Amazon
[5/4/2021, 8:12:32 AM][INFO] : {Cookie} ║ ├────────────────────────────────────────────────────────────────────────────────────────────────────
[5/4/2021, 8:12:32 AM][DEBUG] : {Cookie} ║ │ Use as Login-Amazon-URL: amazon.fr
[5/4/2021, 8:12:32 AM][DEBUG] : {Cookie} ║ │ Use as Base-Amazon-URL: amazon.com
[5/4/2021, 8:12:32 AM][DEBUG] : {Cookie} ║ │ Use as User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36
[5/4/2021, 8:12:32 AM][DEBUG] : {Cookie} ║ │ Use as Accept-Language: fr-FR
[5/4/2021, 8:12:32 AM][DEBUG] : {Cookie} ║ │ Proxy mode disabled
[5/4/2021, 8:12:32 AM][DEBUG] : {Cookie} ║ │ Refresh Token

Cookie « périmé » régénération, testé juste après, pas de problème pour « faire parler Alexa »

[5/4/2021, 8:16:55 AM][INFO] : {API}    ╔═══════════════════[Lancement du lien au Serveur Amazon]═════════════════════════════════════════════════════════
[5/4/2021, 8:16:55 AM][DEBUG] : {Remote} ║ Use as Login-Amazon-URL: amazon.fr
[5/4/2021, 8:16:55 AM][DEBUG] : {Remote} ║ Use as Base-URL: alexa.amazon.fr
[5/4/2021, 8:16:55 AM][DEBUG] : {Remote} ╠═╦═> Cookie OK
[5/4/2021, 8:16:55 AM][DEBUG] : {Remote} ║ ╠═════> Dernier cookie généré le 04/05/2021 à 08:12:33
[5/4/2021, 8:16:55 AM][DEBUG] : {Remote} ║ ╠═════> donc encore valable, on ne le regénère pas

Confirmation que le cookie a bien été regénéré.

En revanches les heures ne sont pas bonnes, ni pour les log, ni pour le cookie, 8h == 10h

ca n’est pas le cas pour toutes les logs de tous tes plugins ?

non juste pour les logs du Alexaapi_Node.

il me semble que je ne suis pas le seul dans ce cas. Et comme la librairie provient d’un allemand, je pense que ce code, pend une config horaire allemande.

moi je ne suis pas Allemand et tout va bien :slight_smile:
image

en tout cas cela ne proviens pas du logger de jeedom :

image

Dans log Alexaapi_mqtt :

et dans log alexaapi-node :

image

:upside_down_face: :rofl: :joy: Merci d’exister sinon il faudrait t’inventer :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :crazy_face: :stuck_out_tongue_winking_eye:

1 « J'aime »