Aller au contenu

Recommended Posts

Dans la 1ere capture on voit bien que le TextField n'est pas en rouge. C'est vraiment important de le tapper à la main. Mais cela ne semble pas le seul problème. 

Partager ce message


Lien à poster
Partager sur d’autres sites

@Steven bon la seul chose passe dans IFTTT c'est de tapper dans le Body 

 {"args":[{"action":" {TextField}"}]}

et non 

{"args":[{"action":" {{TextField}}"}]}

maintenant comment puis je tester la scène ?

 

Partager ce message


Lien à poster
Partager sur d’autres sites

question conne, mais maintenant que Google home intègre pleinement et en francais Fibaro, pourquoi utilisez vous encore la passerelle ifttt?

Bon mis a part que j'ai un gros soucis de rafraîchissement des scenes, ca tourne plutot pas mal non?

Partager ce message


Lien à poster
Partager sur d’autres sites

Je suis en train de mettre en place des commandes HTTP pour appeler des commandes de la Fibaro via Google Home et IFTTT.

 

J'arrive bien à envoyer les commandes mais je souhaiterais coder mon login : mp via Base64

 

Exemple :

 

http://<LOGIN>:<PASS>@<IP>/api/callAction?deviceID=<ID>&name=pressButton&arg1=<BUTTON ID>

donc je vais sur le cite je tape :

login = admin = YWRtaW4K

Mp = admin = YWRtaW4K

 

Ce qui donne:

http://YWRtaW4K:YWRtaW4K@XX.XX.XX.XX:XX/api/callAction?deviceID=175&name=pressButton&arg1=4

mais malheureusement quand je tape l'adresse ci dessus dans mon navigateur il me demande mon login et mp.

 

Avez vous une petite idée ??

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Attention, dans l'URL, il ne faut pas encoder en base64, mais faire un url-encode (cherche ça sur google)

Le base64, c'est si tu veux encoder ton login:password pour le mettre en en-tête d'une requête http, afin de conserver une URL propre (ce que tu ne peux pas tester depuis ton navigateur, à moins d'utiliser un plugin spécifique). Par contre je n'ai aucune idée de ce que IFTTT sait faire, donc mon discours est purement théorique.

Partager ce message


Lien à poster
Partager sur d’autres sites

Et de mémoire, il ne faut pas encoder le login, puis le mot de passe, mais les deux en même temps avec les :

 

@Lazer corrige moi si j'ai faux ? 

Partager ce message


Lien à poster
Partager sur d’autres sites

Voilà.

 

Pour être clair (enfin j'espère) :

- Pour l'URL, c'est bien deux url_encode() distincts séparés avec le : au milieu.

- Pour le header de la requête, c'est le login:password concaténé, et le tout encodé en base64.

Partager ce message


Lien à poster
Partager sur d’autres sites

@speckery : perso j’ai l’impression d’être plus maître du système :) 

 

imagine que tu ne veuilles pas qu’un device soit accessible via le GH (exemple chez les volets ne peuvent pas s’ouvrir via une commande vocale...)

Je sais pas si c’est possible avec le plugin de Fibaro dans le GH ??

Partager ce message


Lien à poster
Partager sur d’autres sites

@Steven @Lazer 

 

Merci beaucoup pour les renseignements je vais tester d'encoder login:mp avec base64 est d'envoyer la commande dans IFTTT avec Webhooks pour voir si cela fonctionne.

 

 

Bon malheureusement cela ne fonctionne pas.

j'ai fait admin:admin encodé Base64 ce qui donne YWRtaW46YWRtaW4K

 

après j'ai renseigné l'URL dans Webhooks comme ceci :

 

http://YWRtaW46YWRtaW4K@XX.XX.XX.XX:XX/api/callAction?deviceID=175&name=pressButton&arg1=4

Je pense que je n'ai pas compris quelque chose.

 

Modifié par soulac

Partager ce message


Lien à poster
Partager sur d’autres sites

en effet, je t'ai dis que si tu souhaites mettre le login dans l'url, il faut faire un url_encode, donc pas de base64

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

 

Bon je reprends url encode égal admin:admin  admin%3Aadmin

 

après j'ai renseigné l'URL dans Webhooks comme ceci :

 

http://admin%3Aadmin@XX.XX.XX.XX:XX/api/callAction?deviceID=175&name=pressButton&arg1=4

cela fonctionne super.

 

Il y a 14 heures, Lazer a dit :

Voilà.

 

Pour être clair (enfin j'espère) :

- Pour l'URL, c'est bien deux url_encode() distincts séparés avec le : au milieu.

- Pour le header de la requête, c'est le login:password concaténé, et le tout encodé en base64.

quand tu dit le tout encodé en base64 tu entends par la de reprendre admin%3Aadmin et les encoder en base64 ?

 

Ou je lache l'affaire avec Base64 ?

Partager ce message


Lien à poster
Partager sur d’autres sites

oui c'est ce que je voulais dire, mais tu peux lâcher l'affaire, puisque ça ne concerne que le cas où tu passes le login:password dans l'entête de la requête, ce qui n'est pas ton cas (tu utilises l'URL)

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

 

ok merci donc si on utilise IFTTT pour envoyer des requêtes à notre HC2 je suis obligé d'envoyé l'adesse avec mon login et mp en claire ? il y a quelque chose de plus sécurise a faire ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui voilà

 

Tu comprends pourquoi je suis opposé à IFTTT....

 

Remarque que le base64 n'est pas plus sécurisé, puisque ça se décode aussi vite que ça s'encode.

 

Le seul moyen de sécuriser, c'est de faire du HTTPS, ce que ne sais pas faire la HC2, sauf à installer un reverse proxy (tuto sur le forum avec un NAS Synology)

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

 

Merci pour tout c'est renseignement constructif je vais voir du coté du proxy reverse.

Sinon il n'existe pas une possibilité d'envoyer les requêtes en local ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Non malheureusement Google impose du Cloud to cloud.

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

 

Du coup je tais écouté en faisant du HTTPS avec synology et un reverse proxy et cela fonctionne en passant par IFTTT.

N'étant pas expert j'ai quelques questions :

J'envois dans IFTTT la commande suivante

https://admin:admin@nondudomaine/api/callAction?deviceID=175&name=pressButton&arg1=4

Mon login et password est tjrs en claire. Peux tu me confirmer quand faisant du HTTPS l'ensemble de l'URL est codé et donc que le password ne se voit pas.

 

autre question je souhaite avoir le retour d'information de la température de mon salon via un FGMS-001.

Je tape la commande :

http://<LOGIN>:<PASS>@<IP>/api/devices?id=XXX

je me retrouve avec une liste d'information je souhaiterais récupérer l'information 

"userDescription":"","value":"24.30"

comment dois je faire ? Tu vas me dire il faut parcer mais malheureusement je ne sais pas le faire.

 

Merci encore pour ton aide

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Heuuu, ça part en vrille, quel rapport avec Google Home ?

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

@Steven

Effectivement pas de rapport avec la scène Google Home

 

Je continue la discutions avec Lazer et l'ensemble des informations précise sur l'interaction IFTTT et Google Home et essayer de sécuriser tout cela.

 

Maintenant ci cela dérange je sors.

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui en https l'URL aussi est chiffrée.

Pour info, attention en entreprise, la plupart des équipes réseaux se permettent d'installer un certificat auto-signé sur les portes de travail des salariés afin de pouvoir faire un gros man in the middle, à savoir intercepter toutes les requêtes https, les déchiffrer, pour les rechiffrer. Officiellement ce n'est que pour journaliser (et filtrer) les URL.... espérons qu'ils n'en fassent pas plus.

Dans le doute, je partage ma connexion 4G depuis mon portable, c'est idiot, mais au final j'ai plus confiance dans le réseau d'Orange que dans celui des entreprises que je visite....

Par contre là c'est vraiment HS, donc désolé.

 

Pour les remontée de température dans IFTTT / Google Home, désolé aucune idée.

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer merci beaucoup pour ton retour qui ma éclairci sur mon ignorance. 

Effectivement je suis HS donc fin de la discussion pour ne pas ce faire gronder :) 

Partager ce message


Lien à poster
Partager sur d’autres sites

Moi les requêtes https sont filtré. Du coup je passe par une borne ouverte que nous avons. Font chier les cowboys du réseau a la con. Les https est reconnus et puis après analyse il est bloqué par le proxy. 

Modifié par Domodial

Partager ce message


Lien à poster
Partager sur d’autres sites

bon sinon a part notre discutions http et htpps j'ai réussie à faire mon Applets IFTTT effectivement je me suis trompé dans le choix du trigger GH j'avais prit <Say a simple phrase> alors qu'il faut <Say a phrase whith a text ingredient>

merci @jjacques68

 

Maintenant je souhaite appuyer sur un bouton nommé <alarme> d'un VD nommé <Passerelle SMS> je vais au plus simple pour comprendre et tester.

Si j'ai bien compris je dois écrire dans ma scène :

 

local synonymes = {
  ["alarme"] 		    = "Passerelle SMS",

et la dans le débug j'ai

 

[DEBUG] 14:53:41: null
[DEBUG] 14:53:51: [{"action":"test SMS"}]
[DEBUG] 14:53:51: Utilisé : test sms
[DEBUG] 14:53:51: 2019-01-16 14:53:51.702507 [ fatal] Unknown exception: /opt/fibaro/scenes/169.lua:69: bad argument #1 to 'lower' (string expected, got nil)

par contre je n'ai pas inséré les lignes 

liliOnCommand = "allume la télévision"
liliOffCommand = "éteins la télévision"

car je ne comprends pas ou je dois le faire.

 

merci pour votre retour

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

chez moi je fais

["alarme"] = function() fibaro:call(147, "pressButton", 1) end

ou 147 est l’ID du VD en question et 1 est le n° du bouton dans le VD (= numéro de l’objet dans le VD... les labels sont aussi des objets...)

Modifié par jjacques68

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 15/01/2019 à 09:48, soulac a dit :

je suis obligé d'envoyé l'adesse avec mon login et mp en claire ? il y a quelque chose de plus sécurise a faire ?

tu peux créer un user spécifique à l’utilisation dans la HC2 et lui donner l’accès que à la scène qui doit exécuter les ordres.

c’est pas le top mais ça réduit les risques...

et c’est ce user que tu utilises dans la recettes d’IFTTT. du coup pas besoin de communiquer le super user.

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×