Cozytouch - Version imprimable +- Forum Lifedomus (http://forum-lifedomus.com) +-- Forum : Vos automates et applications (http://forum-lifedomus.com/forumdisplay.php?fid=52) +--- Forum : Chauffage (http://forum-lifedomus.com/forumdisplay.php?fid=58) +--- Sujet : Cozytouch (/showthread.php?tid=4198) |
RE: Cozytouch - Al_Bla - 01-07-2020 Salut la communauté Lifedomus En cherchant un peu sur internet dans la communauté Domoticz, j'ai trouvé un programme en python, il me semble qui permet de se connecter au Cozytouch et avoir des infos. Je n'y connais rien, mais il y a une démarche à creuser. L'adresse de l'api semble être cela : https://ha110-1.overkiz.com/enduser-mobile-web/externalAPI/json avec le userId= xxxx@XXXX (login sur Cozytouch) & userPassword = XXXXXX (Password sur Cozytouch) à ajouter à la suite je peux donner mes identifiants en MP, si l'un d'entre-vous veux s'y atteler pour des test en entête : content-type : application/x-www-form-urlencoded cache-control : no-cache J'ai cherché de mon coté à créer un connecteur, il se connecte passe au vert mais le Listener ne renvoie rien. Je ne vois pas comment créer un connecteur pour Cozytouch avec toutes ces infos qui permettrait de faire remonter des données. Je mets le programme python pour Domoticz en fichier joint. Si Hsd, Tony, ou un autre peut jeter un œil et m'indique comment créer le connecteur, merci à eux. RE: Cozytouch - sud-domotique-expert - 01-08-2020 (01-07-2020, 07:32 PM)Al_Bla a écrit : Salut la communauté Lifedomus je viens de jeter un coup d'oeil au script python que tu as posté, la 1ère chose qui est faite c'est d'obtenir un N° de session (cookie) qui sera utilisé par la suite pour tous les dialogues avec cozytouch, donc dans ton listener si tu ne vois rien c'est que ce 1er dialogue n'est pas bon. Code PHP : def cozytouch_login(login,password): grosso modo, il va falloir créer un connecteur l'invariant : provient de sa variable url_cozytouch=u'https://ha110-1.overkiz.com/enduser-mobile-web/externalAPI/json/' doit être dans l'URL du connecteur pour les tests le header et le login dans le corps de la commande de l'équipement, exemple commande "login" tu créés aussi une variable : cozy_touch_sessionId en double dans ton équipement, lier au connecteur construire une requête en POST: dans ta requête (commande 'login' de l'équipement) tu va mettre en - POST - le header : doit comprendre Code PHP : { et tu dois ajouter un espace data qui va reprendre : 'userId='+login+'&'+'userPassword='+password pour le test tu peux mettre login et password en dur normalement tu devrais voir quelquechose dans le connecteur en mode listener , dans tous les cas je t'invite à mettre dans la commande ldrpint("début de requête") command='login'; dans le parser json tu dois récupérer le contenu retour Code PHP : try { voilà pour le début le reste est à faire, y a pas mal de commande et c'est à reprendre en javascript (je ne sais pas si LD sait directement traiter le php ? - en tout cas je n'ai jamais fait donc il faudra quelqu'un d'autre te renseigne) si tout cela fonctionne alors tu vas pouvoir avancer. RE: Cozytouch - Al_Bla - 01-08-2020 Bonjour Sud Domotique expert, Désolé je ne connais pas ton prénom. Merci pour ton aide. Comme tu me l'as proposé j'ai créé : 1. un connecteur Cozytouch avec en URL : "https://ha110-1.overkiz.com/enduser-mobile-web/externalAPI/json/" et rien d'autre. [attachment=2493] 2. un équipement Cozy Zone Control 2 avec : une variable : cozy_touch_sessionId en double une commande : Label : CozyLogin Type : Ascii Commande : command="login" Lecture cyclique : RAS Méthode : POST Paramètres : command="login userId=xxxxxx&userPassword=xxxxxx" En-tête : Nom : cache-control Valeur : no-cache Nom : content-type Valeur : application/x-www-form-urlencoded Parseur JS de la commande : J'ai recopier le parseur "Try...." mais il me dit qu'il manque ";" avant la ligne 7, Il y a-t-il une erreur ? ldprint("Début de requète") command='login [attachment=2494] Je dois faire une erreur quelque part, car rien ne remonte dans le Listener. Je te joins les écrans. D'avance merci. RE: Cozytouch - sud-domotique-expert - 01-08-2020 la commande est dans la partie haute commande et pas dans le parser dans le parser en bas tu mets le json qui va récupérer le résulat du retour le 1 à l'air d'être bon le 2 a ==> OK b : non tu mets les data : userId=alain_blanca@orange.fr&userPassword=3157ajcb (je ne sais plus si c'est {userId=alain_blanca@orange.fr&userPassword=3157ajcb} ou direct userId=alain_blanca@orange.fr&userPassword=3157ajcb ou "userId=alain_blanca@orange.fr&userPassword=3157ajcb" c ==> OK d: non tu mets Code : try { RE: Cozytouch - Al_Bla - 01-08-2020 Merci de ta rapide réponse. mais il me signale une erreur dans le script. il manque soi-disant un ";" avant une instruction (js#7). Je ne vois pas où ? RE: Cozytouch - sud-domotique-expert - 01-08-2020 (01-08-2020, 12:13 PM)Al_Bla a écrit : Merci de ta rapide réponse. oui je penses que qu'il y a un ) fermante et pas ouvrante enlève le ), il sert à rien Code : obj_cozytouch.cookies['JSESSIONID']); RE: Cozytouch - Al_Bla - 01-08-2020 (01-08-2020, 12:21 PM)sud-domotique-expert a écrit :(01-08-2020, 12:13 PM)Al_Bla a écrit : Merci de ta rapide réponse. J'ai essayé avec les 3 manières de mettre le userId & userPassword, il ne remonte rien. As-tu une idée ? RE: Cozytouch - sud-domotique-expert - 01-08-2020 (01-08-2020, 12:40 PM)Al_Bla a écrit :(01-08-2020, 12:21 PM)sud-domotique-expert a écrit : oui je penses que qu'il y a un ) fermante et pas ouvrante enlève le ), il sert à rien oui j'ai testé avec juste un navigateur et http request il me signale une erreur 403 ou 401 , c'est donc qu'il y a une erreur dans la requête, je cherche et je reviens dès que j'ai trouvé - tu es certains des userId et Password ? RE: Cozytouch - Al_Bla - 01-08-2020 (01-08-2020, 12:48 PM)sud-domotique-expert a écrit :(01-08-2020, 12:40 PM)Al_Bla a écrit : J'ai essayé avec les 3 manières de mettre le userId & userPassword, il ne remonte rien. Oui je suis certain de mes identifiants, je les ai malencontreusement diffusés, je viens de les modifier et de me connecter avec mon smartphone cela fonctionne bien. Merci de prendre en charge mon problème. Je peux te transmettre mes nouveaux identifiants pour test en MP, si tu en as besoin. A + RE: Cozytouch - Al_Bla - 01-08-2020 Salut JL, En bidouillant un peu. dans l'équipement j'ai mis dans Commande : login (et non pas command ="login") J'ai un Listener qui m'a envoyer ceci. [attachment=2495] Qu'en penses-tu ? |