flacon030 42 Signaler ce message Posté(e) 3 avril Bonjour J'ai un QA pour gérer mon ampli yamaha (mise en marche, sélection des sources , ect..) Je voudrais faire une scène qui permet d'allumer mon ampli, de le mettre en net radio, mais je ne sais pas comment récupérer les boutons QA dans une scene Merci pour votre aide Partager ce message Lien à poster Partager sur d’autres sites
Lazer 6 855 Signaler ce message Posté(e) 3 avril Aucun intérêt. Depuis ta scène, tu appelles directement la fonction du QA. J'en ai déjà parlé plusieurs fois sur le forum, les boutons, ça date de l'ère préhistorique (la HC2 quoi), car on ne pouvait pas faire autrement (*) Sur HC3 les QuickApps publient automatiquement toutes leurs fonctions (enfin toutes celles qui sont dans la classe QuickApp, du type : function QuickApp:maFonction() -- ... end Donc c'est cette fonction que tu dois appeler en direct depuis ta scène : fibaro.call(ID, "maFonction") (*) les boutons servent encore naturellement, mais uniquement pour l'interface utilisateur, via l'interface Web ou l'application mobile. Mais ils doivent être bypassés dans nos codes LUA, j'insiste, il faut perdre les mauvaises habitudes qu'on a pris sur HC2. Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 4 avril (modifié) Ok je comprends, j'ai mal du abordé le problème (je viens de faire quelques essais, désolé je début en QA sous HC3) Avec un bouton "onReleased " Stop function QuickApp:Stop() fibaro.call(142, "turnOff") fibaro.call(148, "turnOff") fibaro.call(223, "turnOff") end Mais comment faire cette fonction Je voudrais faire un QA qui puisse sur un bouton exécuter plusieurs actions (a moins de pouvoir le faire autrement?) J'avais sous HC2 réaliser un VD qui me permettait avec un bouton et ou avec une commande vocale google home: - D’éteindre plusieurs lumières (cela j'y arrive avec la commande ci dessus) - De mettre en marche mon ampli - De sélectionner une source de cet ampli - De régler le volume a un certain niveau sonore Pour ces 3 dernières fonctions je ne sais pas comment m'y prendre Merci pour votre aide Modifié 4 avril par flacon030 Partager ce message Lien à poster Partager sur d’autres sites
Lazer 6 855 Signaler ce message Posté(e) 5 avril Pour ton ampli, ben je sais pas, il faut que tu appelles les fonctions exportées par le QA avec fibaro.call() Je crois me souvenir que tu utilises un des QA partagés sur le market, je n'ai aucune idée de comment il fonctionne. J'ai prévu de migrer le miens (le VD Yamaha MusicCast), mais pas tout de suite, c'est même probablement l'un des derniers QA que je migrerai. Mais ce dont tu as besoin sera naturellement prévu. Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 6 avril Merci j'ai essayer avec un fibaro.call() mais sans résultat, pour le moment j'ai rusé en utilisant les fonction eARC pour que ma TV allume mon ampli, je verrais un peut plus tard pour récupérer ces fonctionnalités Partager ce message Lien à poster Partager sur d’autres sites
couillerot 636 Signaler ce message Posté(e) 6 avril (modifié) tu peux mettre ça dans une scène : fibaro.callUI(id_du_QA, "onReleased", "nom_du_bouton_off") Stef Modifié 6 avril par couillerot Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 6 avril (modifié) oui dans une scène cela fonctionne merci, mais cela ne semble pas fonctionner dans un QA. Mais après plusieurs essais et réflexion, je pense que le mieux serai que je fasse un QA "remote controller" avec des bouton virtuel qui permettra de créer une "action bouton X1" qui déclenchera une scéne Mais je n'arrive pas pour le moment a lier le bouton créer avec la bouton virtuel du QA... quoi mettre dans "onReleased " pour chaque bouton? le debug donne cela "[06.04.2021] [19:10:04] [TRACE] [QUICKAPP406]: UIEvent: {"values":[null],"eventType":"onReleased","elementName":"button1","deviceId":406}" Modifié 6 avril par flacon030 Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 518 Signaler ce message Posté(e) 6 avril je sais pas si je vais répondre à la question : tu mets ce que tu veux dans le onRealesed. par exemple "toto". ce sera le nom de la fonction qui sera appelée lors du clique sur le bouton. Il doit être unique, si plusieurs boutons, alors plusieurs nom. function QuickApp:toto(event) ... end le code présent dans cette fonction sera exécuté à chaque appuis sur le bouton. Ou par un fibaro.call(ID, "toto") Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 6 avril (modifié) merci oui cela je l'ai compris je pense. Ma question est quoi mettre d’après la capture d’écran sur la fonction "onReleased" du bouton, ou quoi modifier dans la capture pour que "toto" soit pris en compte dans le code "main" pour que cela soit en relation avec le bouton avec "onReleased" "toto" Modifié 6 avril par flacon030 Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 518 Signaler ce message Posté(e) 6 avril (modifié) je suis désolé mais je comprends pas ce que tu cherches à faire. Ne faudrait - il reprendre le problème à zéro. Peut-être es-tu parti dans une mauvaise direction... je connais bien ça Modifié 6 avril par jjacques68 Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 6 avril (modifié) peut être désolé, il est pas toujours évidant de définir exactement ses besoins, et d'être claire Après plusieurs essais la solution la plus simple de se que j'ai cru comprendre est: Comme dit plus haut je recherche une solution pour déclencher une scène a partir d'un bouton virtuel dans une QA Mais je n'ai aucune idée de comment m'y prendre pour créer ce dit bouton virtuel Modifié 6 avril par flacon030 Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 518 Signaler ce message Posté(e) 6 avril ben y a ça : Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 6 avril (modifié) parfait pour la fonction cela fonctionne fibaro.scene ("execute", {103}) A présent comment récupérer l'ID d'un bouton virtuel d'en QA car a présent je voudrais exécuter le bouton virtuel depuis le QA google home (quoi mettre a la place du "Off" ci dessous)? if value == "stop home cinéma chambre" then fibaro.call(403,"Off") end Modifié 6 avril par flacon030 Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 518 Signaler ce message Posté(e) 6 avril ben au lieu de "off" tu mets le texte que tu as saisis dans le champs "onRealesed". Partager ce message Lien à poster Partager sur d’autres sites
flacon030 42 Signaler ce message Posté(e) 6 avril (modifié) Je suis trop bête merci j'avais fait une erreur, c'est bon a présent Merci Modifié 6 avril par flacon030 Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 518 Signaler ce message Posté(e) 6 avril ajoute un debug pour savoir si tu appelles le bon QA et la bonne fonction. Partager ce message Lien à poster Partager sur d’autres sites