
jjacques68
Membres confirmés-
Compteur de contenus
4 346 -
Inscription
-
Dernière visite
-
Jours gagnés
39
Tout ce qui a été posté par jjacques68
-
oh punaise j'y étais pas du tout merci !! Je viens de regarder vite fait ton QA KODI, En fait j'avais pas du tout pensé à cette manière utiliser les "fichiers". C'est de la bombe !! Je me permets : pour commences tu tes librairies avec tools = {} ou encore KODI = {} C'est obligatoire ?
-
merci pour le lien, J'utilise déjà le local x=y or 1 Mais le tien, j'arrive toujours pas à le comprendre... J'essaye de le réécrire avec la syntaxe classique, mais même ça j'y arrive pas
-
hc3 HC3 - 5.061.36 - BETA - 22/12/2020
jjacques68 a répondu à un(e) sujet de jjacques68 dans Firmware
perso... ces historique là... moi je m'en fiche un peu. la seule chose qui m'intéresse c'est les événements. Et je les stocke en base, donc... -
ok pour l'explication, j'ai juste un problème avec la syntaxe, il manque un "if then"... faut impérativement que je jette un œil à tes QA. Mon esprit est trop resté à l'ancienne. Malgré ce que j'ai déjà fait...
-
hc3 HC3 - 5.061.36 - BETA - 22/12/2020
jjacques68 a répondu à un(e) sujet de jjacques68 dans Firmware
ah ben oui ! et maintenant il prendra moins de place ! enfin normalement... -
ok donc la condition : if data.contents and data.contents.quotes and data.contents.quotes[1] then ne fonctionne pas. déplace voir self:debug(response.data.state) juste après self:debug("headers:", response.headers["Content-Type"])
-
interessant, mais lors des modifications, tu dois te taper tous les QA où tu utilises ces fonctions !!! pour ma culture, je ne comprends absolument pas cette ligne de code ??? y a eu un loupé dans le copier/coller ? local id = type(self) == "userdata" and self ~= tools and self.id or type(self) == "number" and self > 0 and self
-
cette librairie d'outil est un bien un partage de fichier entre QA ? non ? où tu copies/colles la fonction ? on s'est mal compris, je n'utilise pas les VG ! mais bien les variable des quickapp que j'appelle "VG Quickapp"..; ben justement actuellement, j'en ai 3 : 2 qui stockent l'heure, justement pour chaque réveil et 1 pour le backup auto. alors que sur la HC2, j'en avais des dizaines ! alors là, j'ai vraiment pas compris l'intérêt de partager des fonctions entre quickapp !!
-
??? j'ai pas la fin du message d'erreur... et si tu fais : self:debug(response.data.state) sinon l'afficher dans ton label peutêtre ? c'est juste une histoire de formatage, c'est pas grand chose !
-
hc3 HC3 - 5.061.36 - BETA - 22/12/2020
jjacques68 a répondu à un(e) sujet de jjacques68 dans Firmware
nan perso moi j'attends les retour... enfin si tout le monde fait comme ça ... y aura pas de retour -
si ! je sais qu'on peut, mais c'est pas "simple"... après pourquoi pas utilisé l'option "fichier" des QA, qui permet de partager des fonctions... Il faudrait alors juste créer une fonction qui renvoie la variable locale au QA qui partage sa fonction. avec un simple : function QuickApp:ReturnVG(MaVg) return self:getVariable(MaVg) end Mais bon... Faut partager le fichier, l'inclure dans le QA qui a besoin de cette ressource... Y a moins de ligne de code que ta solution, Mais c'est pas plus "simple" non plus ! Mais c'est pas bête ! nan ?
-
What's new: Alarm Added column with alarm scene ID. Backup Disabling backup creation button when reached the backups limit. Optional saving of the history content when creating backup manually. Dashboard Serial number displayed as a tooltip after hovering on FIBARO logo. Exact value from the api displayed as a tooltip on device tile and on the right sidebar. Possibility to control com.fibaro.player devices from the right sidebar. Possibility to open video gate from the right sidebar. Thermostat preview available from the FIBARO Home Center app. Icons for opening and closing states of roller shutters. Devices Power consumption charts in device Advanced tab. Three new icon sets for valves. Support for Heatit Z-Smoke Detector 230V version 4.1. Support for Heatit Z-Temp2 version 1.1. Support for Heatit Z-TRM3 version 4.0. Support for Sensative Strip Guard in any version. Support for U-Fairy Valve Shut-Off Controller. Gateway Connection Unlocked early access feature of connecting two or more gateways: FIBARO Home Centers 3 may be connected only to other Home Centers 3. Slave gateway must be empty or will be restored to factory settings. All gateways must have the same version installed. Backing up connected gateways together using the master gateway. Updating connected gateways one after another starting from slave gateways. Possibility to update all gateways or master gateway only. Possibility to restore backup for all gateways or master gateway only. Possibility to access slave gateways via generated password. History Displaying events related to power consumption of devices. Improved displaying events from FIBARO RGBW Controllers. Notifications Critical push notifications available as a new channel in device notifications. Other Beta version status displayed on the login screen and in General Settings. Optimized services performance and events handling. Optimized database write and read times. Plugins Tedee lock plugin. Quick Apps Buttons and sliders available as actions in block scenes. Update Notice of the necessary local connection to perform the update. Redirection to current system status after starting the update. Bug fixes: Alarm Possibility to add Z-Wave devices to Satel alarm zones. Cannot add alarm zones during the First Time Installation. Backup Cannot migrate cloud backups from one Home Center 3 to another. Incorrect states when creating backups. Cancellation of downloading an update stops creating/restoring the backup. Cameras No pause button on camera image preview. Complex stream paths are improperly translated. Devices Temperature setpoint chart is displayed incorrectly. Energy data on device Advanced tab is not cleared. No possibility to add FIBARO RGBW 2 (FGRGBW-442) in security mode. History Incorrect units for events from multilevel sensors. Filtering events by rooms does not work properly. Network Services do not start if there is a network connection without the Internet. Notifications Critical push notifications are not sent. No notifications from BiDi Z-Wave device after rebooting the gateway. Other Chinese language version choice is not saved. Services do not start after leaving the stand-by mode. Power diode is not lit after leaving the stand-by mode. Plugins Planika fireplace plugin status is refreshed too often and results in mobile app crash. Profiles Scene in which the active profile is a condition does not start after rebooting. Quick Apps Non-admin users get the login screen when opening the quick app on the mobile app. Non-admin users get only the custom part of quick app on the mobile app. The first letter in labels is automatically changed to a capital letter. No button for removing the device after leaving the edit mode. No family section in general device settings. Recovery Large systems in some cases start up in recovery mode. Scenes Scene Activation IDs are not displayed when creating block scene. Deactivation of a running scene does not stop the scene. Soft reconfiguration of the device is required to run scenes with Access Control Events. No protection against running the same scene at short time intervals.
-
Hello tout le monde, Petite question de bon sens... avant de me lancer dans de longues heures de codage et tout recommencer Actuellement, j'ai 2 scènes qui me gère mes lampes de chevet (gauche et droite) pour simuler le réveil. Ce qui est bête c'est que ce sont 2 scènes exactement identiques ! Y a juste l'ID du dimmer qui change !!! J'ai un QA type générique qui me permet d'activer/désavtiver les scènes et de régler l'heure. Celle-ci est stockée dans une VG spécifique à chaque réveil (gauche et droite). On est complement dans l'esprit de la HC2 Donc l'idée serait de créer un QA Parent avec 2 Child (une pour chaque lumière) Ces Child serait de type binarySwitch, pour activer/désactiver le réveil - logique... Le soucis va être le réglage de l'heure de chacun ! Le QA parent aura toujours un IHM pour effectuer ces réglages. MAIS où stocker l'information ???? dans une VG ? dans une VG du QA Child ? dans une VG du QA Parent ? Dans le cas des VG QA, je ne pourrais pas récupérer ce paramètre depuis un autre QA (du moins facilement...) Nécessaire afin de mettre en place le trigger (ça c'est un autre sujet). Le top aurait été de pouvoir créé un QA Child de plus pour lui donner l'heure de réglage comme value "07:00"... Mais c'est pas possible ça... A moins de prendre un multiLevelSensor et de stocker non pas l'heure sous la forme "07:00" mais sous la forme d'un nombre entier ! mais c'est un peu bof comme méthode... Mais là je pourrais interroger l'heure depuis n'importe où ! Si vous avez de meilleurs idées ?! merci pour vos conseils !!!
-
Et bien j'arrive à me séparer totalement des "sleep" avec justement un "handler". ça complique la compréhension du code, mais ça marche super bien... Encore faut-il bien structurer son tableau de fonctions... Après avec ça, j'ai l'impression que l’intérêt de la scène disparaît complètement ! Ce principe de handler couplé avec le contrôle du RefreshState = fini les scènes ! tout passe dans les QA !! Punaise, je me suis lancé trop vite au mois de mars, j'ai envie de refaire plein de script... Après pour mon excuse, toutes les fonctionnalités n'étaient pas encore présentes à l'époque
-
oui c'est un peu ce que je fais. J'en avais discuté avec lui à l'époque. Pour mes histoire de "sleep", je sens que ça finir dans une sorte de "handler", comme j'ai déjà fait pour les mouvements des caméras... Aussi discuter avec @jang à l'époque...
-
Ben... Je n'utilise pas GEA, désolé Par contre j'ai bien un QA qui tourne et analyse le RefreshState... pour plusieurs raisons... Il suffirait d'y ajouter un contrôle de l'heure et comparer avec la VG... Mais je trouve ça lourd...
-
euh... on s'est pas compris là, pour un déclenchement sur Date/Time on utilise : { type = "date", property = "cron", operator = "match", value = {"30", "15", "*", "*", "*", "*"}, isTrigger = true } Et bien moi je souhaiterai pas mettre 15h30 en dur dans le trigger, mais prendre une heure stockée dans une VG !
-
Pour déclencher des actions sur changement de VG oui ok !! Et directement dans une scène aussi ! Mais pour trigger sur une condition Date/heure avec une valeur dans une VG... j'ai un sérieux doute
-
Justement, c'est bien documenté, et visiblement y a pas moyen. On peut pas mettre fibaro.getGlobalVaraible() dans le trigger de la scène...
-
Je vois pas comment le faire, les scènes sont de la programmation séquentielle, j'ai du mal à imaginer comment faire autrement Je vois pas quelle syntaxe utiliser, et y a rien du tout sur le site de fibaro sur de tels cas ! Je me demande si c'est possible...
-
Hello tout le monde ! j'ai besoin de vos conseils Dans une scène : 1- Comment mettre le déroulement d'un script "en pause" pendant un certain temps, SANS utilisé fibaro.sleep() ? Le setTimeout étant asynchrone, la suite du scripte continuera ! 2- Est-il possible d'avoir un trigger de type CRON avec comme value, une variable, afin d'éviter la bonne vieille méthode de bouclage de la HC2 : function MaFonction() if os.date("%H:%M", os.time()) == MaVariable then [...] end fibaro.setTimeout(60*1000, MaFonction) end 3- Quelle est la bonne méthode pour faire clignotter une ampoule pendant x minutes ? (toujours pareil sans les fibaro.sleep()) merci pour vos conseils !! EDIT : je cherche à me séparer les fibaro.sleep(), car si on stoppe une scène avec ces sleep, on a une erreur sans libellés qui apparait !
-
hc3 Quick App Doorbird Manager
jjacques68 a répondu à un(e) sujet de MAM78 dans Quick App Developpeur
si tu remplaces le "&" par "%26" ? -
roah c'est moi comme qui ait fait mon gros boulet de base !!! j'avais une instruction dans une autre fonction du QA qui ajoutait un element à mon tableau avec table.insert() et donc sans passer par ma fonction... Du coup, des éléments pouvaient être ajoutés sans que la taille ne soit contrôlée ! J'ai corrigé et tout marche très bien maintenant ! désolé !! Merci pour la participation !
-
hmmm pourtant c'est pas l'ajout qui pose problème, mais bien le fait de devoir compter le nombre d'éléments... EDIT : Tu penses qu'il se peut que j'ajoute des valeurs null dans la table ? Et ce serait ça qui ferait la pagaille ?
-
hello tout le monde ! j'ai une fonction dans un QA qui ajoute une valeur dans une variable tableau, grâce à table.insert(), qui ajoute la valeur à la fin de la table. si j'ai plus de 500 valeurs dans ma table, je supprime, à chaque nouvel ajout, le premier élément de la table. Comme ça je garde les derniers éléments arrivés. Le but est de ne pas avoir une table qui grossit éternellement. Voici le code tout bête : function QuickApp:AddElement(element) if element ~= "" then table.insert(self.ListElement,element) if #self.ListElement > 500 then table.remove(self.ListElement, 1) self:warning(#self.ListElement) end end end et bien visiblement le table.remove() marche pas !!! c'est quoi qui cloche ? Ce qui est étrange, c'est que quand je l'avais fait, y a plusieurs mois, je suis persuadé que ça fonctionnait !!! Si vous une idée... merci d'avance !