Connexion impossible sur le plugin Connexoon API SOMFY

Ces logs indiquent que l’authentification n’a pas fonctionné.

La callback url est correcte ? Tu as l’icône qui indique que le token est correct ?

Edit : Pardon, j’ai lu 401 au lieu de 404

Cela veut dire qu’il s’agit d’un objet non reconnu par la box Connexoon.

C’est un objet que tu as créé manuellement ou autre ?

C’est vraiment bizarre

Non je vois pas le Token il me semble (met une image de ta config avec le token ok stp)

Je pense comprendre d’où ca peut venir : mon calback est externe en https://dns… mais quand je me connecte en local, le calback dans le plugin passe avec une adresse IP Local : 192.168.x.x donc ca ne marche pas. Et quand je me connecte avec mon adresse externe j’ai bien le bon Calback. Du coup je peux bien me connecter et j’ai ca en log

[2020-10-11 18:26:43][DEBUG] : [Somfy] Get token
[2020-10-11 18:26:43][DEBUG] : [HTTP] GET - https://accounts.somfy.com/oauth/oauth/v2/token?client_id=fdsfds&client_secret=gfsdfds&grant_type=authorization_code&code=fsdfsd&redirect_uri=httpsFindex.php%3Fv%3Dd%26plugin%3DbenjaminprevotConnexoon%26modal%3Dcallback&state=fdsfsdfdsf - Status: 200 - Body:
[2020-10-11 18:26:43][DEBUG] : [Somfy] Token saved

Pour autant je ne vois pas mon Token passait en vert ?

La solution serait peut etre que le Callback reste fixe, Il faudrait qu’il garde la valeur que je lui donne quand je sauvegarde et qu’il ne bouge pas en fonction si je suis en local ou en externe ?
J’ai quand meme l’impression que il y a un probleme d’enregistrement du token car ensuite j’a
i encore le probleme ou il indique un probleme de connexion du au token…

En fait c’est ça mon problème : actuellement, il faut que le host, port… soient les mêmes pour l’URL d’accès à la console Jeedom et à la callback.

Pour des raisons de sécurité en particulier.

(Et la callback doit aussi être déclarée dans l’admin Somfy)

C’est pour ça qu’elle était calculée à l’origine, pour respecter cette contrainte.

Pour l’affichage de l’état du token après enregistrement, je n’ai pas encore trouvé comment rafraîchir l’icône.

En rechargeant la page, l’état est correct.

Donc peut etre que la solution serait de déclarer dans ton plugin 2 callback (même si l’on en met qu’un dans somfy) comme sur le plugin NUKI ou tu peux en avoir deux.

Comme ca tu rentres l’adresse local dans le callback 1et l’adresse externe dans la ligne 2.
Mais au final ce qui est important c’est d’avoir le bon Callback qui correspond à celui rentré chez SOMFY.

Du coup j’ai une question, si je rentre une adresse externe dans SOMFY et que je me connecte en local sur ma box jeedom ca ne peut pas marcher. Si je me connecte en externe c’est ok

Par contre inversement est ce que si tu rentres un callback local dans SOMFY ca marche si tu te connectes en externe ?

C’est dû à l’implémentation du protocole d’authentification sur le portail Somfy (OAuth2) :

  1. Une requête est envoyée à partir de ta console Jeedom pour afficher l’écran de login Somfy
  2. Quand l’authentification est correcte une validation d’autorisation est faite par un écran Somfy (oui / non)
  3. Si oui, une redirection est faite sur la console Jeedom pour enregistrer les informations d’authentification

Pour ce dernier écran à l’étape 3, il faut que tu sois authentifié sur ta console Jeedom pour permettre le retour en toute sécurité.

C’est pour ça qu’il faut impérativement que l’URL utilisée pour se connecter à la console Somfy soit la même pour le retour.

Du coup, ce n’est pas possible de te connecter avec une URL externe et d’avoir la callback en local, et inversement.

ok je comprends mieux le problème merci. Ca n’est donc pas utilisable dans mon cas ou je me connecte aussi bien en externe que en local.

Sinon, je viens de penser à une solution : il serait possible de créer 2 applications (ou plus si nécessaire) dans le portail Somfy ; 1 pour l’accès interne et 1 pour l’accès externe.

Chacun aurait ses « secrets » et chacun aurait une callback.

Au moment de l’enregistrement, on vérifie quelle connexion est utilisée et on utilise la bonne callback.

Et le plugin se débrouille pour utiliser le bon token.

Ca irait pour toi ?

oui ca serait parfait, je veux bien tester :slight_smile:

Bonjour,

Désolé pour le délai, la modification était assez complexe :wink:

J’ai mis en place une nouvelle version beta qui prend en compte plusieurs URLs d’accès possibles à la box Jeedom.

Il faudra alors créer plusieurs applications dans le portail Somfy et se connecter à chaque URL de la box pour mettre en place les différentes configurations du plugin.

Le plugin gère automatiquement la reprise des informations de configuration existantes lors de la mise à jour.

Dis-moi ce que tu en penses :wink:

Merci

Re-bonjour,

Une nouvelle version beta est disponible : 2020-10-24 19:19:03

Elle contient les modifications précédemment indiquées pour la gestion des plusieurs URLs.

Il est également possible d’inverser la commande position dans l’onglet « commandes » des volets.

Bonsoir,
Je viens de faire l’installation du plugin en version beta qui est actuellement la version 2020-11-03 20:45:22.

Je suis sous Jeedom 4.0.61.

Je ne peux pas modifier l’url de connexion et J’ai qu’une ligne, pour les URL

Je me connecte en IP local pour faire le paramétrage, mais j’ai également à accès externe en https.

Quand je sauvegarde ,j’ai le message suivant

image

Voici mes logs

[2021-01-03 15:23:14][DEBUG] : Lancement de : /var/www/html/core/class/../../core/php/jeePlugin.php  plugin_id=benjaminprevotConnexoon function=remove callInstallFunction=1
[2021-01-03 18:33:58][INFO] : Début d'activation du plugin
[2021-01-03 18:33:59][INFO] : Info sur le démon : {"launchable_message":"","launchable":"nok","state":"nok","log":"nok","auto":0}
[2021-01-03 18:33:59][DEBUG] : Lancement de : /var/www/html/core/class/../../core/php/jeePlugin.php  plugin_id=benjaminprevotConnexoon function=install callInstallFunction=1
[2021-01-03 18:35:02][ERROR] : [Somfy] GET - https://api.somfy.com/api/v1/site -  Number of tries exceeded
[2021-01-03 19:00:50][INFO] : Début d'activation du plugin
[2021-01-03 19:00:51][INFO] : Info sur le démon : {"launchable_message":"","launchable":"nok","state":"nok","log":"nok","auto":0}
[2021-01-03 19:02:03][INFO] : Début d'activation du plugin
[2021-01-03 19:02:04][INFO] : Info sur le démon : {"launchable_message":"","launchable":"nok","state":"nok","log":"nok","auto":0}
[2021-01-03 19:02:18][ERROR] : [Somfy] GET - https://api.somfy.com/api/v1/site -  Number of tries exceeded
[2021-01-03 19:05:02][ERROR] : [Somfy] GET - https://api.somfy.com/api/v1/site -  Number of tries exceeded
[2021-01-03 19:08:48][ERROR] : [Somfy] GET - https://api.somfy.com/api/v1/site -  Number of tries exceeded

Merci

Rodolphe

Bonjour @rto,

je suis exactement dans le même cas que toi, impossible de trouver la source du problème.
As-tu trouvé la solution de ton côté ?
@benjamin.prevot, aurais-tu une idée du problème ?

Merci à vous par avance
Cordialement

Bonsoir,
Je viens de seulement voir ton post.
J’ai pas avancé sur le sujet depuis la dernière fois.
Je m’y remets et reviens vers toi

Bonjour,

J’ai le même problème, avez-vous trouvé une solution?

Bonjour,
Malheureusement non.
J’attends voir si le développeur du plugin mette à jour éventuellement son plugin

Bonsoir ,

je m’ajoute à la liste des personnes bloquées avec le même message que « rto »

C’est frustrant :sob:

Patientons pour une mise à jour :wink:

Bonjour,

Désolé de répondre si tardivement :disappointed_relieved:

Si je comprends bien, plusieurs utilisateurs obtiennent le message Somfy « Une erreur est survenue… ».

Pouvez-vous essayer en supprimant la configuration des clés (correspondant à l’URL en cours) puis réessayer ?

Je viens de publier une nouvelle version du plugin (2021-03-09 21:13:00) :

  • La configuration courante est maintenant indiquée
  • A chaque sauvegarde de la configuration, la popup d’authentification Somfy s’ouvre pour saisir les identifiants ; cela permet de forcer le rafraîchissement du token

Après mise à jour, vous pourrez sauvegarder la configuration pour rafraîchir les informations.

Cela permettra de repartir sur des valeurs « propres » :wink:

Bonjour Benjamin,

j’ai mis à jour le plug in mais malheureusement j’ai toujours la même erreur après le login des mes identifiants.

et dans les logs j’ai erreur 400 :
2021-03-11 16:00:08 benjaminprevotConnexoon [Somfy] An error occured while refreshing token - HTTP code: 400

Bonjour,
De mon coté, toujours le même soucis.
Il faudrait depuis le plugin pouvoir changer l’adresse CALBACK URL, car je pense que ça vient de là
Rodolphe