Julien Lemare Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Bonjour, Je voudrais reproduire un fonctionnement en mode bloc qui était présent sur ma LITE. Le tout en LUA car il devra être commandable via un VD. Jusqu'ici j'ai ceci : J'ai crée 1 variable globale nommée : automanu Je change sa valeur via un VD: Celui-ci pour le mode auto : --j'affiche directement la valeur de automanu, dans le but de connaitre sa précedente valeur fibaro:debug(fibaro: getGlobalValue ('automanu')); --J'affete la valeur Auto à la variable automanu fibaro:setGlobal('automanu', 'Auto'); --idem que au dessus, j'affiche maintenant la nouvelle valeur de automanu. Soit obligatoirement Auto fibaro:debug(fibaro: getGlobalValue ('automanu')); am = fibaro: getGlobalValue ('automanu'); fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Labelauto.value", am); fibaro:startScene(20); Celui ci pour le mode manu : --j'affiche directement la valeur de automanu, dans le but de connaitre sa précedente valeur fibaro:debug(fibaro: getGlobalValue ('automanu')); --J'affete la valeur Auto à la variable automanu fibaro:setGlobal('automanu', 'Manu'); --idem que au dessus, j'affiche maintenant la nouvelle valeur de automanu. Soit obligatoirement Auto fibaro:debug(fibaro: getGlobalValue ('automanu')); am = fibaro: getGlobalValue ('automanu'); fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Labelauto.value", am); fibaro:startScene(20); Je change aussi une étiquette avec cette ligne : fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Labelauto.value", am); Pour le moment, mes essais de la compréhension de la chose bloque à ce moment. En fin de VD je lance une scène. Elle devrait envoyer une notification pour chaque état mais cela ne fonction pas ;-) D'ou ma question : Can you help me ? --[[ %% properties %% globals --]] local automanu = fibaro:getGlobalValue('automanu') fibaro:debug(automanu); if ('automanu' == Auto) then fibaro:call(5, "sendDefinedPushNotification", "9"); end if ("automanu" == Manu) then fibaro:call(5, "sendDefinedPushNotification", "10"); --notif sur julien MANU end Merci d'avance.
Berale64 Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Sous %%globals tu dois ajouter automanu. C'est le signal de déclenchement de ta scène quand la variable automanu change de valeur. 1
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 aucuns changements ^^,
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 Et ce même en mettant la demande de notifications uniquement. Envoyé depuis la Station Spatiale Internationale
Berale64 Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 La ligne 18 dans les VD est de trop. La scène doit démarrer seule au changement de la variable. Va lire ce sujet que j'avais fais sur les trigger : http://www.domotique-fibaro.fr/index.php/topic/3540-de-lutilisation-des-triggers/
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 Ça ne fonctionne toujours pas ;-) Envoyé depuis la Station Spatiale Internationale
Moicphil Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Regarde ou ca bloque en utilisant des debug, c'est facile ensuite à trouver. Déjà , dans les boutons, je vois des pb de syntaxe... des problèmes d'espace en trop , ça m’étonnerais que ce debug t'affiche quelque-chose. fibaro:debug(fibaro: getGlobalValue ('automanu')); Je te conseil de t'aider de ça au début : http://www.domotique-fibaro.fr/index.php?app=cp&do=show&pageId=3 Je ne te corrige pas la scène volontairement, c'est pour que tu trouve tout seul tes erreurs
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 merci merci ;-)Mon debug me renvoi bien les infos que j'attend ^^, Je continue de chercher ...
CaptainIgloo Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Petite remarque : pourquoi appeler une scène alors que tout peut être dans le VD ?
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 Car je n'ai aucune notion et que c'est la seule chose qui me soit venu a l'idée ^^,
CaptainIgloo Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 --[[ %% properties %% globals --]] local automanu = fibaro:getGlobalValue('automanu') fibaro:debug(automanu); if (automanu == "Auto") then fibaro:call(5, "sendDefinedPushNotification", "9"); end if (automanu == "Manu") then fibaro:call(5, "sendDefinedPushNotification", "10"); --notif sur julien MANU end si tu mets entre cote ou doublecote tes variables chargées tu vas pas y arriver. De plus, Auto et Manu ne sont déclaré nul part. J'ai donc modifié considérant que Auto et Manu sont tes statuts chargés en VG.
CaptainIgloo Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Mais ce code peut être dans ton VD directement.
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 la scene est la uniquement pour m'assurer que ma variable a bien changer. Si automanu = auto alors notif auto OU Si automanu = manu alors notif manu. Mais a terme c'est pour integrer la valeur de automanu dans des différentes scènes. Par exemple si Manu, la scène qui ouvre le volets roulants ne s’effectuera pas. Idem pour la vocalisation de la météo le matin.
CaptainIgloo Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Mais si ta VG a des statuts prédéfinis, il faut plutôt utiliser les variables prédéfinies.
Julien Lemare Posté(e) le 12 septembre 2015 Auteur Signaler Posté(e) le 12 septembre 2015 je suis désolé, mais la je comprend plus rien. Entre VG, mettre direct dans VD, si tu mets double quote ou quote ca passe pas ...
CaptainIgloo Posté(e) le 12 septembre 2015 Signaler Posté(e) le 12 septembre 2015 Il faut lire et comprendre ce que tu codes. Si tu déclares une variable toto et que tu la charge cela donne local toto = "le contenu de ma variable toto" Le problème est que tu mélanges le nom de la variable et son contenu. Si Manu et auto ne sont pas declarés tu ne peux les utiliser. Si Manu et auto sont des contenus, ils doivent être entre côté ou double côté.
Julien Lemare Posté(e) le 13 septembre 2015 Auteur Signaler Posté(e) le 13 septembre 2015 Après quelques essais et modifs, je pense être sur la bonne voie.
Julien Lemare Posté(e) le 13 septembre 2015 Auteur Signaler Posté(e) le 13 septembre 2015 Yep, j'ai tout remis à plat, revu un peu les notions de variable, local, etc ... Mais c'est sur la bonne voie.
pepite Posté(e) le 14 septembre 2015 Signaler Posté(e) le 14 septembre 2015 Poste ton nouveau code ;-)
Berale64 Posté(e) le 14 septembre 2015 Signaler Posté(e) le 14 septembre 2015 Question bête, mais as tu avant créé la variable "automanu" avec comme valeurs possibles "Auto" et "Manu" en respectant bien les majuscules ?
Julien Lemare Posté(e) le 14 septembre 2015 Auteur Signaler Posté(e) le 14 septembre 2015 Je post tout ça ce soir. Il me reste juste un essai. Il est très minime. Donc je peux dire sans trop me tromper que tout est OK. J'avais une erreur dans mes déclarations et une écriture de variables. Tient petite question : - quel est le rapports entre une variable " local ceciestmavar " et une variable globales situées dans le panneau variables ? Merci. @pepite. Je viens de finir la modification de ton météo et je doit dire que ça me sert bien. J'ai température actuelle, mini, maxi. Vent et humidité prévue. Condition météo. Et ça sur "appart" et "travail". Que du bonheur d'entendre la météo le matin amen prenant le café. Prochaine étape, proposer le type d'habits et accessoires pour passer une bonne journée ; -) Envoyé depuis la Station Spatiale Internationale
Berale64 Posté(e) le 14 septembre 2015 Signaler Posté(e) le 14 septembre 2015 Tient petite question : - quel est le rapports entre une variable " local ceciestmavar " et une variable globales situées dans le panneau variables ? Aucun. Ce sont deux choses fondamentalement différentes.
pepite Posté(e) le 14 septembre 2015 Signaler Posté(e) le 14 septembre 2015 @juju : super partage ta modif de la version du module météo, ca peut servir !! la variable "local ceciestmavar" n'est utilisable que depuis la scene dans laquelle elle se trouve, alors que celle créé dans le panneau varibale est appelable et modifiable depuis n'importe ou, VD, scene ..avec un fibaro:getglobal ou fibaro:setGlobal ;-)
Julien Lemare Posté(e) le 14 septembre 2015 Auteur Signaler Posté(e) le 14 septembre 2015 C'est bien ce qui me sembler. Ma local ne me sert que en local finalement tandis que l'autre se balade ou bon me semble. Merci pour la réponse ;-) Je mettrai ça ce soir. Météo odifier je le met ici ou àla suite de ton post ? Envoyé depuis la Station Spatiale Internationale
Messages recommandés