Chers utilisateurs,

Nous rencontrons actuellement des ralentissements sur nos serveurs pouvant impliquer des difficultés à vous connecter à Tahoma et Somfy Protect.

Nos équipes sont actuellement dédiées à la résolution de ce problème et nous vous tiendrons informés de l’avancement de la situation via ce bandeau d’information.

Veuillez nous excuser pour la gêne occasionnée et nous vous remercions pour votre compréhension.

L’équipe des Yellow’s SOMFY  

Question en attente de réponse

Trouver l'API TOKEN sur une Tahoma V2

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

David R.
David R.

David R.

Niveau
1
288 / 750
points
  • Partager cette question

    Réponses

    Patrick M.
    Patrick M.

    Patrick M.

    Niveau
    0
    72 / 100
    points

    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

    David R.
    David R.

    David R.

    Niveau
    1
    288 / 750
    points

    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""}"

    Patrick M.
    Patrick M.

    Patrick M.

    Niveau
    0
    72 / 100
    points

    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

    David R.
    David R.

    David R.

    Niveau
    1
    288 / 750
    points

    Changer votre mot de passe il est en clair.

    David R.
    David R.

    David R.

    Niveau
    1
    288 / 750
    points

    Il faud faire un script en powershell.

    Patrick M.
    Patrick M.

    Patrick M.

    Niveau
    0
    72 / 100
    points

    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 ?

    David R.
    David R.

    David R.

    Niveau
    1
    288 / 750
    points

    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

    Haut de page