L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Discussion sur la box eedomus

L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar merou_95 » 09 Jan 2019 23:43

Bonjour,

Pendant pas de mois, mon alarme myfox était visible dans l'eedomus et depuis un certains nombre de mois ce n'est plus le cas. Avez vous le même problème? Si la réponse est non pouvez-vous me montrer votre script .
Voici le mien. J"ai volontairement remplacé mes identifiants, le Client ID et Client Secret par des xxx.

A noter que dans https://api.myfox.me/, j'ai vérifié /client/site/items . Tout est OK. Le N° Installation s'affiche correctement.

En revanche lorsque je teste le script dans l'interface eedomus j'obtiens ce message :
Erreur lors de l'authentification: invalid_client (grant_type = password)

Voici mon script
<?php

// script créé par Pierre Pollet pour eedomus
// librement inspiré du script netatmo écrit par Connected Object
// généré à partir des données Myfox récupérées via Oauth
// basé sur l'auth "Resource Owner Password Credentials Grant"
// une auth basée sur un "authorization code" serait mieux, mais ce n'est faisable
// que par Connected Objects (à cause de la callback)

// encodage iso-8859-1 pour les accents

// Version 1 / 22 mai 2014 / 1ère version disponible


$GLOBALS['api_url'] = 'https://api.myfox.me:443/v2/';
$api_url = 'https://api.myfox.me:443/v2/';
$ClientId ='xxxxxxxxxxxxxxxxxxxxxx';
$ClientSecret='xxxxxxxxxxxxxxxxxxxxxx';
$getToken_url = 'https://'.$ClientId.':'.$ClientSecret.'@api.myfox.me';
$UserName ='xxxxxxxxxxxxxxxxxxxxxx' ;
$UserPassword='xxxxxxxxxxxxxxxxxxxxxx';
$access_token='';

// on reprend le dernier refresh_token seulement s'il correspond au même code
$refresh_token = loadVariable('refresh_token');
$expire_time = loadVariable('expire_time');
// s'il n'a pas expiré, on peut reprendre l'access_token
if (time() < $expire_time)
{
$access_token = loadVariable('access_token');
//echo "re-utilisation du token existant";
}


// on a déjà un token d'accés non expiré pour le code demandée
if ($access_token == '')
{
if (strlen($refresh_token) > 1)
{
// on peut juste rafraichir le token
$grant_type = 'refresh_token';
$postdata = 'grant_type='.$grant_type.'&refresh_token='.$refresh_token;
$url=$getToken_url;
}
else
{
// 1ère utilisation aprés obtention du code
$grant_type = 'password';
$postdata = 'grant_type='.$grant_type.'&username='.$UserName.'&password='.$UserPassword;
$url=$getToken_url;
}

$response = httpQuery($url.'/oauth2/token', 'POST', $postdata);
$params = sdk_json_decode($response);
//var_dump($params);


if ($params['error'] != '')
{
die("Erreur lors de l'authentification: <b>".$params['error'].'</b> (grant_type = '.$grant_type.')');
}

// on sauvegarde l'access_token et le refresh_token pour les authentifications suivantes
if (isset($params['refresh_token']))
{
$access_token = $params['access_token'];
saveVariable('access_token', $access_token);
saveVariable('refresh_token', $params['refresh_token']);
saveVariable('expire_time', time()+$params['expires_in']);

}
else if ($access_token == '')
{
die("Erreur lors de l'authentification");
}

//extraire le code du site
$siteId=loadVariable('siteId');
if ($siteId == '')
{
$request="client/site/items";
$response = httpQuery($api_url.$request."?access_token=".$access_token, 'GET');
$params2 = sdk_json_decode($response);
$siteId=$params2['siteId'];
saveVariable('siteId', $siteId);
}
}

function sdk_myfox_query($request, $method = 'GET', $post = NULL, $return_xml = true)
{
$access_token= loadVariable('access_token');
if ($post == '')
{
$response = httpQuery($GLOBALS['api_url'].$request."?access_token=".$access_token, 'GET');
//echo "GET: ". $GLOBALS['api_url'].$request."?access_token=".$access_token;
}
else
{
$response = httpQuery($GLOBALS['api_url'].$request."?access_token=".$access_token, 'POST');
echo "GET: ". $GLOBALS['api_url'].$request."?access_token=".$access_token;
}

$json = sdk_json_decode($response);

if ($return_xml)
{
// permet d'avoir une mise en forme plus lisible dans un browser
sdk_header('text/xml');
echo jsonToXML($response);
}
else
{
return $json;
}
}

switch($_GET['action'])
{
case 'api_get':
$query = getArg('query');
sdk_myfox_query($query,'');
break;
case 'api_post':
$query = getArg('query');
sdk_myfox_query($query,'POST');
break;
}
?>
merou_95
 
Messages : 33
Inscription : 07 Août 2015

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar merou_95 » 12 Jan 2019 19:59

Es ce qu'un utiliateur peut juste me confirmer sur l'API myfox est fonctionnel dans eedomus? Car j'ai l'impression que myfox a arrêté le service.
merou_95
 
Messages : 33
Inscription : 07 Août 2015

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar thevret » 16 Jan 2019 16:25

Bonjour,
Je viens d’acquérir une box eedomus et je cherche à la relier avec ma box Myfox HC2.
J'ai suivi le tuto de domoblog. J'ai édité le fichier et j'en suis à la phase d'upload du script.
Et là la box eedomus me sort un message d'et=rreur
"fonction sdk_myfox _query n'est pas autorisée" et idem pour la fonction si().
Comme je débute, j'ai pu faire une erreur,
je travaille à partir d'un chromebook avec l'éditeur Caret
et dans ce cas, pouvez vous m'aider à trouver ce qui cloche?
Merci par avance.
thevret
 
Messages : 67
Inscription : 05 Déc 2018

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar thevret » 14 Mars 2019 14:17

Bonjour,
Je suis toujours dans l'installation du script Myfox.
J'ai fait les tests sous la page api.myfox.me et tout fonctionne correctememnt. Je recupère bien le token pour tester les différentes commandes.
Par contre quand je fais les tests avec le script eedomus sur la base du tuto de domo-blog
https://www.domo-blog.fr/integration-la ... -leedomus/
Après avoir mis à jour les 4 variables
$api_url = 'https://api.myfox.me:443/v2/';
$ClientId ='<CCCCCCCC>';
$ClientSecret='<DDDDDDD>';
$getToken_url = 'https://'.$ClientId.':'.$ClientSecret.'@api.myfox.me';
$UserName ='<AAAAAA>' ;
$UserPassword='<BBBBBBB>';
lorsque je fais le test, je rencontre l'erreur suivante:
Erreur lors de l'authentification: invalid_client (grant_type = password)
Pourtant je suis certain de mes identifiants:
SI vous comprenez d'ou vient l'erreur ou est ce que le script est toujours fonctionnel?
Cordialement
thevret
 
Messages : 67
Inscription : 05 Déc 2018

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar RAR69 » 14 Mars 2019 19:02

Bonjour,
J'ai eu le même genre de problème avec le site LEGRAND.
La solution que nous avons trouvée est là :
viewtopic.php?f=11&t=7608&p=76816#p76816
Si cela peux-vous aider à comprendre...votre problème...
Attention, l'eedomus mémorise des variables qui peuvent dans votre cas vous empêcher de vous connecter aux serveurs distant...d'où les forçages à "null" pour reprendre la connexion depuis le début du cycle...
Roland
J'en ai rêvé, Thibautg16, Havok, P@t, merguez07, Xeos, influman et MaDomotic les ont fait !!!
RAR69
 
Messages : 539
Inscription : 30 Août 2018
Localisation : Rhône

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar thevret » 16 Mars 2019 21:07

Bonjour RAR69
Merci pour ces info.
J'ai donc intégré la modification indiquée mais je tombe toujours sur la même erreur, a savoir:
Erreur lors de l'authentification: invalid_client (grant_type = password)
On dirait qu'il ne connait pas l'identifiant et son mot de passe.
J'ai refait les essais a partir du site api.myfox.me et cela fonctionne.
Je patauger dure.
Si quelqu'un a une idée?
thevret
 
Messages : 67
Inscription : 05 Déc 2018

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar gaastra33 » 18 Mai 2019 13:02

j'ai exactement le même problème je me permet donc de remonter un peu ce post
j'ai tester mes mots de passe identifient sur le site api .myfox .me , en faisant un copier coller de ce que j'ai mis dans le script ... et meme message d'erreur
gaastra33
 
Messages : 3
Inscription : 03 Fév 2019

Re: L'alarme MyFox n'est plus reconnu dans EEDOMUS.

Messagepar xducmaug » 11 Juin 2019 15:59

Bonjour,
Je me permet de faire remonter ce post car j'ai également ce même problème. J'ai pu voir que certains d'entre vous on pris contact avec Somfy(MyFox) et Eedomus pour résoudre le problème, mais je n'ai trouvé aucune réponse directe à vos questions.
Est ce que l'un de vous à réussi à régler ce problème?
Merci.
xducmaug
 
Messages : 1
Inscription : 11 Juin 2019


Retour vers Box eedomus

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 10 invité(s)