tomcat59890 Posté(e) le 15 novembre 2014 Signaler Posté(e) le 15 novembre 2014 bonsoir, j'ai beau chercher je ne vois pas comment avec une HCL, affecter une valeur à une variable globale ? j'ai déclaré ma variable (je la vois et je peux la sélectionner dans mes scénes) j'ai crée un module virtuel avec 2 boutons (2 valeurs pour ma variable) et c'est la que ca merde.......comment affecter une variable à l'aide de mes boutons du module virtuel ? et je reprécise, j'ai une HCL pas une HC2...... Merci.
Lionel57 Posté(e) le 15 novembre 2014 Signaler Posté(e) le 15 novembre 2014 Tu as une HCL, donc àpriori, tu es limité au scène par bloc. Ben normalement, soit c'est une simple variable, tu définies la future valeur dans la rubrique verte, soit tu sélectionnes une valeur si c'est une variable prédéfinie (toujours dans la zone verte)
Krikroff Posté(e) le 15 novembre 2014 Signaler Posté(e) le 15 novembre 2014 il y a deux solutions: - utilises les scenes - utilises l' api du HCLite pour passer une valeur a la variable globale... Enfin si ton HClite accepte d' envoyer des requêtes sur l' API car nous ne sommes pas tous égaux à ce niveau ! edit: dsl, croisement de posts avec Lionel57
Lionel57 Posté(e) le 15 novembre 2014 Signaler Posté(e) le 15 novembre 2014 Pas de soucis, Krikroff, on n'est jamais de trop pour aider si on peut aider 1
tomcat59890 Posté(e) le 15 novembre 2014 Auteur Signaler Posté(e) le 15 novembre 2014 merci a vous 2, vous battez pas ! mais comme je suis loin d'avoir votre expertise, je n'ai réussi aucune de vos methode. si je passe pas une scène, je peux tester la variable, mais pas lui affecter une valeur. si je passe par une requête http, encore faut-il avoir la syntaxe et ca c'est pas gagné
jojo Posté(e) le 15 novembre 2014 Signaler Posté(e) le 15 novembre 2014 courage tomcat, voici ce qui marche chez moi avec aussi une HCL. SI j'ai bien compris ton besoin, tu as défini une virtual device avec deux boutons, un par valeur possible de la variable. Et ainsi tu pourras modifier la valeur de ta variable via ton tél Android, ce qui n'est pas possible autrement. Facile en HCL 1) variable "VAR" avec deux status "Oui" et "Non" 2) scène VAR_Oui (non active !) si at any time alors variable VAR = Oui (repère l'ID de la scène sur le panneaux general) 3) scène VAR_Non (non active !) si at any time alors variable VAR = Non (repère l'ID de la scène sur le panneaux general) 4) dans ta device virtuelle, complète les champs IP Adresse et TCP port avec l'IP et le port (80) de ton HCL 5) pour chaque bouton de ta virtual device, rentre GET<space>/api/sceneControl?id=##&action=start<space>HTTP/1.10x0D0x0AHost:<IP><space>0x0D0x0AAuthorization:<space>Basic<space><user:pwd inBase64><space>0x0D0x0A0x0D0x0A où ## est ID de la scène modifiant la valeur de la variable où <user:pwd inBase64> est ton user:password en Base64 : https://www.base64encode.org/ ça DOIT marcher 1
tomcat59890 Posté(e) le 16 novembre 2014 Auteur Signaler Posté(e) le 16 novembre 2014 salut Jojo super les explications ! Merci mais j'ai encore un petit souci. Les variables se mettent bien à jour par les scènes, ca c top Mais je n'arrive pas à le mettre à jour par les boutons du module virtuel. j'ai bien sur chaque bouton GET<space>/api/sceneControl?id=12&action=start<space>HTTP/1.10x0D0x0AHost:<IP><space>0x0D0x0AAuthorization:<space>Basic<space><xxxxxxxxxxxxxx><space>0x0D0x0A0x0D0x0A (12 l'ID de la scène, et xxxxxxxxxxxxxx le psw de ma HCL). J'ai loupé un truc ?
jojo Posté(e) le 16 novembre 2014 Signaler Posté(e) le 16 novembre 2014 tomcat, Tu ne dois pas mettre dans le code le ( ) à la fin, mais uniquement : GET<space>/api/sceneControl?id=12&action=start<space>HTTP/1.10x0D0x0AHost:<IP><space>0x0D0x0AAuthorization:<space>Basic<space><xxxxxxxxxxxxxx><space>0x0D0x0A0x0D0x0A ​dans le code tu remplace <space> par un espace (TRES important). Comme les espaces sont difficiles à identifier dans un texte, j'ai écrit <space> le <xxxx> c'est bien le user:pwd (user & pwd) converti en base64 (pas en clair) . Si ton user est admin et pwd est admin => admin:admin encodé en base64 = YWRtaW46YWRtaW4= (tu ne dois pas mettre les crochets 1
tomcat59890 Posté(e) le 16 novembre 2014 Auteur Signaler Posté(e) le 16 novembre 2014 alors Jojo, c top. je suis vraiment une truffe, car en plus de laisser <space>, j'avais également laissé <IP> en fait, en bon informaticien, j'ai un copier/coller..........en changeant ce que tu m'avais indiqué (enfin presque tout) Bref, là ça fonctionne top. Merci.
jojo Posté(e) le 16 novembre 2014 Signaler Posté(e) le 16 novembre 2014 Tant mieux, content pour toi => tu peux abuser de cela, et tu verras tu feras des choses WAF (que même ta femme va apprécier). J'avais un ancien collègue qui disait : "Il n"y a pas de mystère, il n'y a que des conneries" c'est à dire, qu'il y a une explication pour tout, et que c'est souvent une bêtise qui est la cause du problème. Il faut sortir la tête du guidon.
MasterBT Posté(e) le 20 novembre 2014 Signaler Posté(e) le 20 novembre 2014 alors Jojo, c top. je suis vraiment une truffe, car en plus de laisser <space>, j'avais également laissé <IP> en fait, en bon informaticien, j'ai un copier/coller..........en changeant ce que tu m'avais indiqué (enfin presque tout) Bref, là ça fonctionne top. Merci. Hello, Afin d'aider les autres "nouveaux" membres, pourrait tu poster un screen de tes scènes et un c/c du script de tes boutons des virtual device. Ca pourrait être d'une grande aide. Merci et bon amusement
tomcat59890 Posté(e) le 20 novembre 2014 Auteur Signaler Posté(e) le 20 novembre 2014 Bonsoir à tous, Alors voilà le résultat de mon travail. Ne cherchez pas une quelconque finalité, c'est juste un proto pour préparer le futur avec mon HCL. Je voulais avoir la possibilité de tester dans mes scripts / blocs (HCL oblige) une variable genre, COUCHER, REVEILLER, etc...... j'ai donc créé une variable globale DODO (voir screenshot) créé 2 scènes DODO et PAS DODO (voir screenshot) créé un module virtuel avec ces 2 boutons COUCHER (activation variable DODO=OUI), REVEILLER (activation variable DODO = NON) (voir screenshots) chaque bouton avec 1 commande du type : GET /api/sceneControl?id=12&action=start HTTP/1.10x0D0x0AHost:192.168.0.34 0x0D0x0AAuthorization: Basic XXXXXXXXXXX 0x0D0x0A0x0D0x0A dans mon exemple 12 = n° id de la scène déclenchée par le bouton 192.168.0.34 = IP de ma HCL XXXXXXXXXXX = code d'accés:psw pour ma HCL en base 64 (voir post de DID au dessus) Résultat: quand je clique sur COUCHER j'active la variable globale à la valeur OUI quand je clique sur REVEILLER j'active la variable globale à la valeur NON et je peux tester ainsi cette variable dans mes scénarios blocs. J'espère avoir été complet.
jojo Posté(e) le 20 novembre 2014 Signaler Posté(e) le 20 novembre 2014 dans mon exemple XXXXXXXXXXX = code d'accés:psw pour ma HCL en base 64 (voir post de DID au dessus) 192.168.0.34 = IP de ma HCL 12 = n° id de la scène déclenchée par le bouton "voir post de DID au dessus" ??? Je ne vois pas ... Ne confonds-tu pas Did et Jojo pour le coup ? Moi perso je suis honoré que tu me prennes pour Did, mais lui, qui dira-t-il ?
tomcat59890 Posté(e) le 21 novembre 2014 Auteur Signaler Posté(e) le 21 novembre 2014 bonsoir à tous, alors j'ai encore fait une boulette, je voulais évidemment parler (dans ce post) de Jojo. Désolé Jojo, je ne recommencerai plus.
nafnaf Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 (modifié) Bonsoir J'ai fait tout comme jojo et tomcat mais cela ne marche pas chez moi ...J'ai aussi fait attention de ne pas commettre les mêmes petites erreurEst ce un pb de config ou de code ? Problème résolu / Merci à jojo Modifié le 20 décembre 2014 par nafnaf
jojo Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 Nafnaf, Ca doit marcher, mais la bête est très sensible aux espaces ... As-tu bien référencé dans l'écran de ta Virtual Device l'IP et le port (80) de ton HCL ?
nafnaf Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 Merci jojo de ta réponse rapide Je suis bien embêté car avant de mettre ce post sur le forum j'ai vraiment tout checké y compris les espaces J'ai bien indiqué aussi l'IP et le port 80 de mon HCL Je suis sec ... Tu indiques plus haut que les deux scènes doivent être 'non active' > j'ai bien décoché mais pour ma culture personnelle, quel impact cela a t'il ? Encore merci d'aider les petits nouveaux
jojo Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 j'ai aussi été nouveau en aoà»t ... tu deviendras donc vite expert en cherchant à aider les autres ... Si la scène est cochée active, cela veux dire qu'elle fonctionne, et que si les conditions de départ sont remplies, ce qui se trouve après le "alors" s'exécutera. Ici, ce qu'on veut c'est qu'elle ne démarre que quand on appuie sur le bouton de la virtual device. Dans ce cas là , la scène passe directement à après les "alors", et donc, on met ce qu'on veut comme condition de départ (car c'est obligatoire), et la scène ne doit pas être active (il ne faut pas qu'elle risque de démarrer toute seule, dès que les conditions de départ seraient remplies). Il y a aussi une 2° case, juste en dessous : "Start when HC starts" : cette case DOIT être cochée si une des conditions de départ est une condition temporelle.
nafnaf Posté(e) le 17 décembre 2014 Signaler Posté(e) le 17 décembre 2014 Je baisse les bras J'ai tout vérifié mais ça ne marche tjs pas
jojo Posté(e) le 18 décembre 2014 Signaler Posté(e) le 18 décembre 2014 courage ... Fait quelques screenshots avec ce que tu as implémenter, et on te trouvera une solution. Tout problème à une solution. Donc, si pas de solution, pas de problème
Kr1s Posté(e) le 18 décembre 2014 Signaler Posté(e) le 18 décembre 2014 NafNaf, n'abandonne pas, donne nous ton code pour qu'on puisse t'aider. 1
nafnaf Posté(e) le 18 décembre 2014 Signaler Posté(e) le 18 décembre 2014 Merci àvous pour votre proposition d'aide Je suis en déplacement. Je vous ferai les copies d'écran ce WE Le problème est certainement situé entre la chaise et le clavier de mon PC ...
jojo Posté(e) le 18 décembre 2014 Signaler Posté(e) le 18 décembre 2014 ça c'est alors une bonne nouvelle, car on pourra t'aider à trouver la solution
nafnaf Posté(e) le 19 décembre 2014 Signaler Posté(e) le 19 décembre 2014 Bonsoir àtous Me voilàrevenu dans ma Normandie. Après plusieurs essais, ça ne marche toujours pas Vous trouverez ci dessous le code du bouton 1 de mon virtual device Adresse IP 192.168.1.12 Scene ID 13 GET /api/sceneControl?id=13&action=start HTTP/1.10x0D0x0AHost:192.168.1.12 0x0D0x0AAuthorization: Basic YWRtaW46b2traTI0MTE= 0x0D0x0A0x0D0x0A
Messages recommandés