Question en attente de réponse
Bonjour,
A la suite de Mise a Jour
Mon Home assistant me demande l' API TOKEN en local
j'ai une Tahoma V2 1206-9877-4500
comment fait on pour trouver le token ?
je n'ai trouvé aucune réponse a se sujet
si je configure Overkiz en Cloud
ça ne fonctionne pas non plus
dans les logs on vois qu'il recherche le Token
Merci de votre retour
N'hésitez pas à interroger la communauté d'entraide !
Réponses
Bonjour,
J'ai le même problème et je ne veut pas migrer sur Tahoma by Somfy pour obtenir le token car je veux garder mon alame dans mes équipements.
Merci pour vos conseils
P. Millot
Alors voici la solution
un script en powershell sous windows
il faud renseigner le pin le mail et le mot de passe dans le script en fair un fichier .ps1
-----------------------------------------------------
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
$pin = "0000-000-0000" # remplacer par le vrai "PIN" de la box Tahoma
$cloud = "ha101-1.overkiz.com"
Invoke-WebRequest "https://$cloud/enduser-mobile-web/enduserAPI/login" `
-Method post -ContentType "application/x-www-form-urlencoded" `
-Body 'userId=adressemail@gmail.com&userPassword=monmotdepasse' -SessionVariable "sess" # remplacer par mail et mot de passe
$r = Invoke-RestMethod "https://$cloud/enduser-mobile-web/enduserAPI/config/$pin/...; `
-Method Get -ContentType "application/json" `
-WebSession $sess
Write-Host "Token = $($r.token)"
Invoke-WebRequest "https://$cloud/enduser-mobile-web/enduserAPI/config/$pin/...; `
-Method Post -ContentType "application/json" `
-WebSession $sess `
-Body "{""label"":""Mon token"", ""token"":""$($r.token)"", ""scope"":""devmode""}"
Rebonjour, et merci pour votre réponse, mais il semble qu'il y ai un soucis avec le serveur .
Explications :
Ce journal d'erreur est très technique, mais il contient une information capitale : l'erreur TypeError: Scenario.__init__() missing 1 required positional argument: 'metadata'.
1. Diagnostic de l'erreur
Ce n'est pas votre nouvelle Box Orange qui est en cause, ni votre mot de passe. C'est un bug logiciel connu dans l'intégration Overkiz.
L'explication : Somfy a modifié la manière dont ses serveurs envoient les données des "scénarios" (vos programmes Somfy). L'intégration Home Assistant attend un certain format, mais Somfy en envoie un nouveau avec des "données métadonnées" obligatoires que le code actuel ne sait pas encore gérer.
Pourquoi maintenant ? La mise à jour de votre box Tahoma a probablement activé cette nouvelle structure de données côté Somfy.
La réponse du serveur :
PS C:\Users\pat10> [System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
PS C:\Users\pat10> $pin = "1206-5600-9565"
PS C:\Users\pat10> $cloud = "ha101-1.overkiz.com"
PS C:\Users\pat10>
PS C:\Users\pat10> # Connexion au Cloud Somfy
PS C:\Users\pat10> $session = Invoke-WebRequest "https://$cloud/enduser-mobile-web/enduserAPI/login" `
>> -Method post -ContentType "application/x-www-form-urlencoded" `
>> -Body 'userId=pat.millot@orange.fr&userPassword=Patmil#72600' -SessionVariable "sess"
Security Warning: Script Execution Risk
Invoke-WebRequest parses the content of the web page. Script code in the web page might be run when the page is
parsed.
RECOMMENDED ACTION:
Use the -UseBasicParsing switch to avoid script code execution.
Do you want to continue?
[O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] Suspendre [?] Aide (la valeur par défaut est « N ») : oO
[O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] Suspendre [?] Aide (la valeur par défaut est « N ») : 00
[O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] Suspendre [?] Aide (la valeur par défaut est « N ») :
Invoke-WebRequest : Operation cancelled due to security concerns. Use -UseBasicParsing parameter for safe HTML
parsing without script execution.
Au caractère Ligne:1 : 12
+ $session = Invoke-WebRequest "https://$cloud/enduser-mobile-web/endus ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : Erreur de sécurité: (https://ha101-1...nduserAPI/login:Uri) [Invoke-WebRequest], In
validOperationException
+ FullyQualifiedErrorId : WebCmdletIEParsingDeclined,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
PS C:\Users\pat10>
PS C:\Users\pat10> # Récupération du Token
PS C:\Users\pat10> $r = Invoke-RestMethod "https://$cloud/enduser-mobile-web/enduserAPI/config/$pin/...; `
>> -Method Get -ContentType "application/json" `
>> -WebSession $sess
Invoke-RestMethod : La connexion sous-jacente a été fermée : Une erreur inattendue s'est produite lors de l'envoi.
Au caractère Ligne:1 : 6
+ $r = Invoke-RestMethod "https://$cloud/enduser-mobile-web/enduserAPI/ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation : (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], W
ebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
PS C:\Users\pat10>
PS C:\Users\pat10> Write-Host "Votre Token est : $($r.token)"
Votre Token est :
PS C:\Users\pat10>
PS C:\Users\pat10> # Activation du mode développeur avec ce Token
PS C:\Users\pat10> Invoke-RestMethod "https://$cloud/enduser-mobile-web/enduserAPI/config/$pin/...; `
>> -Method Post -ContentType "application/json" `
>> -WebSession $sess `
>> -Body "{""label"":""Mon token"", ""token"":""$($r.token)"", ""scope"":""devmode""}"
Invoke-RestMethod : {"errorCode":"INVALID_API_CALL","error":"No such resource"}
Au caractère Ligne:1 : 1
+ Invoke-RestMethod "https://$cloud/enduser-mobile-web/enduserAPI/confi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation : (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], W
ebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
PS C:\Users\pat10>
PS C:\Users\pat10> Write-Host "Le mode développeur a été activé avec succès !"
Le mode développeur a été activé avec succès !
PS C:\Users\pat10> pause
Quel solutions ?
Merci d'avance pour votre réponse.
P. Millot
Changer votre mot de passe il est en clair.
Il faud faire un script en powershell.
Oui je changerais mon mot de passe après avoir résolu ce soucis et sinon j'ai bien envoyé le script en powershell il m'a bien reconnu mais pas donné de token.
J'ai eu pas mal de soucis aujourd'hui avec mon mot de passe que j'ai du changer plusieurs fois et qui était ensuite reconnu puis plus reconnu etc.. Il y a du avoir des mise à jour sur le site Somfy ?
J ai trouvé ce script dans la communauté jeedom.
J ai eu le pb a la suite a la mise a jour de mon home assistant.
J ai testé sur un vieux home assistant ca fonctionne.
Maintenant tout passe par des token .
Essayer d exécuter le script en administrateur
Ce n'est pas ce
que vous recherchez
Posez votre question