Aller au contenu

Steven

Membres confirmés
  • Compteur de contenus

    4 434
  • Inscription

  • Dernière visite

  • Jours gagnés

    201

Tout ce qui a été posté par Steven

  1. C'est tout à fait faisable. Envoyé de mon SM-G935F en utilisant Tapatalk
  2. Steven

    Freebox One et Freebox Delta

    Cool merci. Je vais faire tourner cela un moment voir ce que cela donne. Envoyé de mon SM-G935F en utilisant Tapatalk
  3. Steven

    Freebox One et Freebox Delta

    Dis @Krikroff penses-tu qu'un polling toutes les 30 secondes avec 1 seule requête (hormis ouverture/fermeture de session) via ton module Freebox est quelque chose de stupide ou cela peut le faire sans soucis ? L'idée est d'interroger le statut de l'alarme pour pouvoir couper la caméra et éventuellement d'autres traitements.
  4. Steven

    Freebox One et Freebox Delta

    Alors, il y a quelques adaptations à apporter pour être 100% compatible : Il n'y a plus 1 HDD mais 2 : 1 sata et 1 raid, le raid étant celui qui contient le free_bytes Le Wifi On/Off ne fonctionne pas, mais apparemment depuis la V5 Pour supprimer les entrées des appels reçus/loupés/... il y a une nouvelle API : /api/v5/call/log/delete_all mais le système actuelle fonctionne toujours Pour le Reebot, préférer l'API V6 (identique à la V1) Ci-joint, le code modifié mais c'est juste pour information. P.S. J'ai volontairement supprimé les informations de licence pour ne pas dépasser le nombre de caractères autorisés dans le main loop. Ceci en conservant le nom de @Krikroff bien évidement FreeboxV6_v0.1.1.lua
  5. Steven

    Freebox One et Freebox Delta

    Oui aussi bien que sur la révolution. En changeant la box, je n'ai pas fait de mise à jour du compagnon et cela fonctionne à l'identique avec les fonctionnalités "Home" (alarme, objets connectés,...) en plus. Envoyé de mon SM-G935F en utilisant Tapatalk
  6. Steven

    Freebox One et Freebox Delta

    Disons qu'il faut creuser un peu. Je n'ai pas l'état de mon HDD ni mon wifi. Mais en regardant la documentation, ils ont ajouté des API mais en gardant une rétro compatibilité. (c'est à dire "en évoluant pas les API existants") Envoyé de mon SM-G935F en utilisant Tapatalk
  7. Steven

    Freebox One et Freebox Delta

    Corrigé mais facile à trouver de toute façon [emoji6] Envoyé de mon SM-G935F en utilisant Tapatalk
  8. Steven

    Freebox One et Freebox Delta

    Merci @Krikroff et @Lazer Cette information sera super utile.
  9. Steven

    Support Gea

    Si tu as besoin de savoir si c'est une semaine pair ou impair, voici ce que tu peux faire : GEA.add( {"Frequency", "Monday", 2}, ..., "Lundi semaine pair") GEA.add( {"Frequency", "Monday", 1}, ..., "Lundi semaine impair") Par contre, il n'est pas possible de préciser plus d'un jour. Si tu veux faire tout les jours d'une semaine pair, tu peux aussi faire ainsi en ajoutant ta propre option : function config() -- =================================================== GEA.options.isoddweek = { name = "Semaine Pair", getValue=function() return os.date("%w") % 2 == 0 end, } -- =================================================== end function setEvents() -- ========================================================== GEA.add({"IsOddWeek"}, 0, "Semaine pair") GEA.add({"IsOddWeek!"}, 0, "Semaine impair") -- =========================================================== end Le isOddWeek fera partie de la 6.12 à venir quand j'aurais le temps. et après, il te suffira simplement de supprimer dans ton config()
  10. Steven

    Support Gea

    Je ne comprends malheureusement pas vraiment ce que tu souhaites, un exemple serait le bien venu. Pour l'instant, il y a toujours le moyen d'utiliser {"Function", function() ... end} pour les traitements que ne comprend pas GEA. Tu pourrais aussi faire un truc du genre {"StringToNumber", "12", {"Global", "Test"}} ... mais ça tu l'as déjà fait.
  11. Steven

    Support Gea

    @pepite ton "frenquency* ne le fait pas ?
  12. Steven

    Support Gea

    Il y en a d'autres que je garde secrète car elles sont utilisées uniquement pour le bon fonctionnement de GEA et n'apporteraient rien à l'utilisateur.
  13. Steven

    Support Gea

    GEA.checkEvery = 30 --- spécifié la fréquence de rafraichissement de GEA GEA.portables = {256} -- tableau des portables pour l'envoi de notification GEA.globalvariables = "GEA_Tasks6" -- Nom de la variable globale à utiliser GEA.language = "fr" -- langue pour l'affichage GEA.pluginsvariables = "GEA_Plugins" -- Nom de la variable globale utilisée pour les plugins GEA.debug = false -- true si on souhaite que GEA devienne très bavard GEA.showRoomNames = true -- false si on ne souhaite pas voir le nom de la pièce dans #name# GEA.batteriesWithRoom = GEA.showRoomNames -- comme showRoomNames mais uniquement pour {"Batteries", <niveau>} GEA.output = nil -- permet de contourner/supprime l'envoi des notifications fibaro exemple : GEA.output = function(message) -- faire ce qu'on veux avec le message end GEA.options.xxxxxxx -- toutes les options utilisateurs (voir quelques exemples sur le site)
  14. Steven

    Support Gea

    Il est possible de tester ceci mais je ne suis pas certain du résultat qui aura dans #value# GEA.add({"Global","NameVG", "#r#1|2|3|4|5"}, 30 , "", {"Global","AutreVG","#value#"}) Mais cela devrait fonctionner.
  15. Steven

    Support Gea

    Même moi, j'ai des options supplémentaires Totalement inutile aux autres utilisateurs. -- Mes options personnelles -- GEA.options.autravail = { name = "au travail", getValue=function() return fibaro:getGlobalValue("JourChome") == "NON" end } GEA.options.enfants = { name = "enfants présents", getValue=function() return fibaro:getGlobalValue("Enfants") == "Presents" end } GEA.options.notifgarage = { name = "Notif garage", getValue=function() return fibaro:getGlobalValue("GEA_Garage") == "ON" end } GEA.options.notif = { name="notif", action=function(message, button) fibaro:setGlobal("Notification", GEA.getMessage(message)); fibaro:call(id.NOTIFICATION_CENTER, "pressButton", button) end } GEA.options.notifimperihome = { name="Notification Imperihome", action=function(message) GEA.options.notif.action(message, 8) end } GEA.options.notifpushbullet = { name="Notification Pushbullet", action=function(message) GEA.options.notif.action(message, 2) end } GEA.options.lampeescalier = {name = "Lampe escalier", getValue=function() return fibaro:getValue(id["APLIQUE_ESCALIER"], "value") ~= "0" end} Je les utilise bêtement comme ceci : GEA.add({{"Days", "weekdays"}, {"auTravail"}, {"Time", "10:30"}}, 30, "", {"turnOff", id["VMC"]}, "Extinction VMC") GEA.add({id["DETECTEUR_GARAGE"], {"notifGarage"}}, 10*60, "La porte du garage est ouverte depuis plus de #duration#", {"NotifImperihome", "La porte du garage est ouverte depuis #durationfull#"}, "Avert. garage ouvert") GEA.add( {id["SPOTS"], {"Time", "Sunset", "Sunrise"}, {"Enfants"}} , -1, "", {{"Inverse"}, {"turnOn", id["VEILLEUSE"]}}, "Allumage de la veilleuse")
  16. Steven

    Support Gea

    Je en pense pas que cela soit possible. Il faudrait une sorte de modèle que les gens doivent recopier et compléter pour avoir toujours la même structure afin de facilité la lecture et un sujet très clair. Mais OUI un grand OUI. Edit : il y avait ce post qui expliquait comment écrire sa propre action/condition mais ce n'est pas une base de donnés d'exemple :
  17. Steven

    Support Gea

    Les options sont composée, en général, de 3 parties {"<nom>", <id>, "<argument>"}. Lors d'une condition, elles vont être additionnées d'une 4ème valeur qui sera donc la valeur souhaitée/recherchée {"<nom>", <id>, "<argument>", "<valeur souhaitée>"} GEA inclus un mécanisme qui permet à ce que le 3ème et les suivants paramètres puisse être d'autres options (C'est pas clair tout cela). Donc un exemple : {"Global", "Test", {"Label", 100, "mode"}} Le 3ème paramètre est remplacé par une autre option. Permettant ainsi que copier la valeur du Label "mode" dans la variable globale "Test". Appliqué à une condition, on pourrait imaginer quelque chose comme ceci : GEA.add({"Global", "Test", {"Regex", #value#, "Toto}}, 30, "") Voilà.
  18. Steven

    Support Gea

    Suffit de demander et surtout d'avoir quelqu'un de disponible pour te répondre ... Mea Culpa ... pour me manque de disponibilité Oui, non, je ne sais pas, je pense que c'est assez propre à ton usage et que 99% des utilisateurs devrait se suffire des fonctions déjà offertes. Je ne suis pas pour surcharger GEA par des fonctions utilisateurs. Par contre, je suis 100% pour l'échange de code qu'il est facilement intégrable, comme tu l'as fais en ajoutant, au besoin, des GEA.options.xxxxxx String To Number peut être une bonne option car elle permettrait de faire des calculs +/- sur des labels contenants du texte. Pour l'Upercase et Lowercase, je n'y voit pas d’intérêt en "domotique" que ce soit "Présent" ou "présent" revient au même dans, à nouveau, 99% des cas. D'ailleurs la méthode GEA.compareString lowercase systématiquement les valeurs fournies avec les valeurs des labels avant de les comparer. Réponse au prochain post.
  19. Steven

    Support Gea

    Au lieu de faire un égal, il fait un match() donc il faut juste regarder ce qu'accepte cette fonction. Cela revient à faire label:match("Présent") J'ai aussi ajouté la possibilité d'utiliser le OR "|" afin de pouvoir faire "#r#Présent|Absent" ce qui revient à dire "Présent" OU "Absent" Cela fonctionne aussi sur les "Global" P.S. Le trigger sur les label sera corrigé en 6.12. C'est effectivement un manque dans GEA.
  20. Steven

    Support Gea

    As-tu essayé simplement {"Label", id["VD_HomeMode_Manager"], "lblMichel", #r#Absent} #r# indique simplement à GEA d'utiliser les regex.
  21. Steven

    Support Gea

    P'tit message rapide. Je ne vois pas la différence entre : {"LabelRegEx", id["VD_HomeMode_Manager"], "lblGaby", "[a-zA-Z0-9.-]", "Prsent"} et {"Label", id["VD_HomeMode_Manager"], "lblGaby", "#r#Prsent"} Je surveille les posts d'un seul oeil. Je te répond demain MAM pour ton message, mais d'avance pas de soucis.
  22. Steven

    Support Gea

    Je ne suis pas dispo mais GEA prend déjà en compte les regex.
  23. Steven

    Support Gea

    Je n'ai aucun ordinateur à la maison car je n'en veux pas et au travail, je suis sur un projet qui prend 110% de mon temps. Quant à @pepite, il a d'autre chose personnelle bien plus importante à traiter. Donc, en gros, on a largement autre chose à faire et je ne pense pas que ton problème soit vraiment urgent. Change it like this GEA.add( {id["FramsidePIR"], {"Global", "Solen", "Nat"}}, -1, "", {"TurnOn", {id["UppfartenLampa"], id["EntreLampa"], id["GangLampa"]}})
  24. Steven

    Support Gea

    Hi @Forall, You got a problem with brakets {} ... look at your first line : --Turn on outdoor lights on front side of the house PIR dependent during the night and turn of 5 min later GEA.add(id["FramsidePIR"], -1, "", {{"Global", "Solen", "Natt"}}, {{"turnOn", id["EntreLampa"]}, {"turnOn", id["UppfartenLampa"]},{"turnOn", id["GangLampa"]}}) -- when PIR notice movement, but only during night time, turn on 3 lamps If your framsidePIR is activated you want to turnOn 3 lamps and set the global variable "Solen" to "Natt" ... ok but you put en extra {} killing GEA. If you want 1 simple action, you can write it like this : GEA.add(id["FramsidePIR"], -1, "", {"Global", "Solen", "Natt"}) If you want multiple actions, you have to enclose them between {} like this : GEA.add(id["FramsidePIR"], -1, "", { {"Global", "Solen", "Natt"}, {"TurnOn", id["UppfartenLampa"]} } ) In your case, your first line should be : GEA.add(id["FramsidePIR"], -1, "", { {"Global", "Solen", "Natt"}, {"TurnOn", { id["UppfartenLampa"], id["EntreLampa"], id["GangLampa"] }} } )
  25. Steven

    Google Home

    Heuuu, ça part en vrille, quel rapport avec Google Home ?
×
×
  • Créer...