Shyrka973 Posté(e) le 30 mai 2014 Signaler Posté(e) le 30 mai 2014 @Steven, J'obtiens une erreur avec "batteries". Cette ligne: GEA.add({"Batteries", 90}, 24*60*60, "", {{"Repeat"}}) me retourne ceci: [DEBUG] 22:10:03: [ 90 ] isActivate : checking : batteries Mouvement Salon [Repeat] [DEBUG] 22:10:03: [ 90 ] isActivate : checking : batteries KeyFob [Repeat] [DEBUG] 22:10:03: [ 90 ] isActivate : checking : batteries Minimote [Repeat] [DEBUG] 22:10:03: [ 90 ] !!! ERROR !!! : vérification [Repeat] J'ai testé ce bout de code provenant de GEA: for i = 1, 350 do if (string.find(fibaro:get(i, 'isBatteryOperated'), "1" )) then local batt = fibaro:getValue(i, 'batteryLevel') fibaro:debug(fibaro:getName(i) .. ": " .. batt) end end et j'obtiens ceci: [DEBUG] 22:03:13: Mouvement Salon: 91 [DEBUG] 22:03:13: KeyFob: 90 [DEBUG] 22:03:13: Minimote: [DEBUG] 22:03:13: Porte Terrasse: 80 [DEBUG] 22:03:13: Porte Cuisine: 80 [DEBUG] 22:03:13: Sonnette: [DEBUG] 22:03:13: Porte entrée: 100 [DEBUG] 22:03:13: Porte entrée: 80 [DEBUG] 22:03:13: Porte entrée: 80 [DEBUG] 22:03:13: Détecteur de Choc: 83 [DEBUG] 22:03:13: Détecteur d'incendie: 100 [DEBUG] 22:03:13: Inondation: 61 [DEBUG] 22:03:13: Porte entrée: 100 [DEBUG] 22:03:13: Porte entrée: 100 [DEBUG] 22:03:13: Porte entrée: 100 [DEBUG] 22:03:13: Porte entrée: 100 [DEBUG] 22:03:13: Porte entrée: 100 [DEBUG] 22:03:13: Détecteur de Choc: 100 [DEBUG] 22:03:13: 81: 100 J'ai un module, une sonnette, avec batterie qui retourne aucune valeur pour sa batterie. Je pense que la fonction "log" ne prévoit pas ce cas.
Domodial Posté(e) le 30 mai 2014 Signaler Posté(e) le 30 mai 2014 @Shurka973 J'ai exactement la même erreur. EDIT : dans mon cas il s'agit des minimotes, c'est un peut normal elles sont hors champ. EDIT 2 : sans parler minimotes mais avec un capteur x à pile et "Batteries" ça me met l'erreur. Avec une ligne de commande "Battery" pas d'erreur, et msg reçu. "Batteries" dépend peut être de la 3.50 beta ?
Steven Posté(e) le 30 mai 2014 Auteur Signaler Posté(e) le 30 mai 2014 Merci pour ce retour. La correction est en cours sur la 3.50. Le bug est que la Minimote nous retourne une donnée mais vide ("") au lieu de rien du tout (nil). Ce n'était donc pas le log mais la ligne juste en dessous if (batt and tonumber(batt) <= tonumber(id[2]) or tonumber(batt) == 255) then
Domodial Posté(e) le 30 mai 2014 Signaler Posté(e) le 30 mai 2014 Cool merci Steven Envoy? avec Tapatalk
Shyrka973 Posté(e) le 30 mai 2014 Signaler Posté(e) le 30 mai 2014 Merci Steven. J'ai donc modifié la ligne ainsi: if (batt and batt ~= "" and tonumber(batt) <= tonumber(id[2]) or tonumber(batt) == 255) then J'ai oublié de préciser que j'utilise le 3.50 beta.
Steven Posté(e) le 30 mai 2014 Auteur Signaler Posté(e) le 30 mai 2014 Tiens moi au courant si c'est tout bon comme cela on peux libérer la 3.50. Merci d'avance.
Shyrka973 Posté(e) le 30 mai 2014 Signaler Posté(e) le 30 mai 2014 Pour "batteries", ça fonctionne avec la petite modification du dessus. J'ai un souci avec la lampe du couloir que j'allume de plusieurs façons: le détecteur de choc (éteint dans 30s), l'ouverture de la porte (éteint dans 3mn) et l'interrupteur (éteint dans 10mn). L'interrupteur est rarement utilisé. Le script se prend le pied dans l'extinction de la lampe: elle peut rester allumer ou s'éteindre dans 2s. Ma reflexion: Il faudrait peut-être ajouter une fonction "GEA.delete" pour que l'on puisse supprimer une tache. Dans ce cas, la fonction "GEA.add" devrait retourner un id à sa création ou bien elle prendrait comme paramètre un tag qui serait utilisé pour sa suppression.
Steven Posté(e) le 30 mai 2014 Auteur Signaler Posté(e) le 30 mai 2014 Ok, je vois ce que tu voudrais faire. Supprimer un élément n'est pas réalisable. On ne peux pas supprimer un élément d'une liste que l'on est entrain de parcourir. On pourrait le supprimer après avoir parcouru la liste mais dans ce cas, il y a le risque que la tache que l'on voulait supprimer soit quand même exécutée une fois. Donc le moyen le plus simple est de ne rien supprimer mais de désactivé. Exemple local id1 = GEA.add(....) local id2 = GEA.add(....) local id3 = GEA.add(.... {"Suspend", {id1, id2}}) Le soucis est qu'il faut donc que id1 et id2 soit connu avant, donc on ne peux plus inversé l'ordre ... grrrr pas bon. Autre possibilité : GEA.suspend(id3, {id1, id2}) On respect l'ordre, on casse rien .. dès que l'id3 est exécuté on va dire au id1 et id2 qu'ils sont "FAIT" donc on ne les traitera plus. Satisfaisant comme solution ?
Shyrka973 Posté(e) le 30 mai 2014 Signaler Posté(e) le 30 mai 2014 Je n'avait pas penser à la possibilité de suspendre les règles au lieu de les supprimer. Ca devrait être bon. Pas trop compliqué à implémenter ?
lolomail Posté(e) le 31 mai 2014 Signaler Posté(e) le 31 mai 2014 Change la manuellement dans le panneau des variables Surtout pas, si jamais il a le plugin de Krikoff sur l'update de la HC2 ou de la Freebox cela va les lui mettre en rade en passant des variables de type 192.168.192.0 àNaN...
lolomail Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 Bonjour, Me revoila avec mes volets , je veux virer les scènes qui commandent l'ouverture et fermeture des volets et les remplacer par des commandes dans le GEA Steven tu avais écrit: GEA.add({"Time", "Sunrise>07:30", "Sunset<21:00"}, 60, "", {{"Group", 1},{"Group", 2}}) GEA.add({"Group", 1}, 60, "Ouverture volet - #time#", {{"Open", ID_VOLET1, 50}}) GEA.add({"Group", 1}, 90, "Ouverture volet - #time#", {{"Open", ID_VOLET2, 50}}) GEA.add({"Group", 1}, 120, "Ouverture volet - #time#", {{"Open", ID_VOLET3, 50}}) Si je comprends bien: {"Group", 1} Est pour le le levé de soleil et {"Group", 2} Est pour le coucher de soleil, correct??? Voici le début de ce que j'ai rédigé: -- Gestion ouverture volets -- Définition variable local absent = {"Global", "Absence", "0"} -- si "Absence" = "0" local travail = {"Global", "repos", "0"} -- si "repos" = "0" local repos = {"Global", "repos", "1"} -- si "repos" = "1" -- Ouverture en semaine local group20 = {absent, travail} -- absence = 0 / période = travail -- Ouverture en week-end local group21 = {absent, repos} -- absence = 0 / période = repos -- Ouverture en repos local group22 = {absent, repos} -- absence = 0 / période = repos L'idée est de géré des ouvertures et fermetures différentes en semaine / week-end plus repos, j'ai dans l'idée de mettre une variable à basculer à la valeur repos pour les jours férier. Cela via un virtual device. Mes questions: - Comment j'intègre l'heure de levée et couché dans ce cas là ? - La syntaxe {"Group", 1} est équivalente group1? - Une meilleure idée pour gérer la période travail / weekend / repos? Car là faudra que chaque vendredi et dimanche je change la période via le VD. Créer une commande pour changer la variable ces jours là via le GEA? Merci de votre aide
Diuck Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 Salut Steven J'aurais une question à poser sur la scène ci-jointe, peux tu éventuellement la corriger si possible car il me semble qu’auparavant ils remontaient seul si je les baissés manuellement et ce n'est plus le cas maintenant, je ne comprend pas !! D'avance merci -- Si la luminosité est supérieur à 1000 Lux pendant 10 minutes entre Sunrise et 13h, on ferme les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value+", 41,1000}, 5*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}}) local si_pas_ouvert = {"If", {{"Value-", 19, 95},{"Value-", 24, 95},{"Value-", 17,95},{"Repeat"}}} -- On monte les volets uniquement si UN n'est pas complètement remonté -- Si la luminosité est inférieur à 800 Lux pendant 10 minutes entre Sunrise+30 et 18 h, on ouvre les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value-", 41,800}, 10*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"},si_pas_ouvert})
Steven Posté(e) le 1 juin 2014 Auteur Signaler Posté(e) le 1 juin 2014 Mes questions: - Comment j'intègre l'heure de levée et couché dans ce cas là ? - La syntaxe {"Group", 1} est équivalente group1? - Une meilleure idée pour gérer la période travail / weekend / repos? Car là faudra que chaque vendredi et dimanche je change la période via le VD. Créer une commande pour changer la variable ces jours là via le GEA? Merci de votre aide Voici une idée... déjà , on oublie les groupes,trop compliqué.Cela a été remplacé par le IF,,,, démonstration. -- Gestion ouverture volets -- Définition variable local absent = {"Global", "Absence", "0"} -- si "Absence" = "0" local travail = {"Global", "repos", "0"} -- si "repos" = "0" local repos = {"Global", "repos", "1"} -- si "repos" = "1" -- Ouverture en semaine GEA.add(..........., {{"If", {absent}}, {"Days", "Weekdays"}, {"Time", "Sunrise>07:30", "Sunset"}}) -- Ouverture en week-end GEA.add(..........., {{"If", {absent}}, {"Days", "Weekend"}, {"Time", "Sunrise>08:30", "Sunset"}}) -- Ouverture en repos GEA.add(..........., {{"If", {absent, repos}}}) Après tu peux aussi ajouter des dates pour les vacances. Par exemple : -- Ouverture pendant les vacances GEA.add(..........., {{"If", {absent}}, {"Dates", "15/07/2014", "30/07/2014"}}) 1
Steven Posté(e) le 1 juin 2014 Auteur Signaler Posté(e) le 1 juin 2014 Salut Steven J'aurais une question à poser sur la scène ci-jointe, peux tu éventuellement la corriger si possible car il me semble qu’auparavant ils remontaient seul si je les baissés manuellement et ce n'est plus le cas maintenant, je ne comprend pas !! D'avance merci Salut Diuck, j'ai pas très bien compris la question, mais j'ai repéré une erreur dans ton script : local si_pas_ouvert = {"If", {{"Value-", 19, 95},{"Value-", 24, 95},{"Value-", 17,95}}} -- On monte les volets uniquement si UN n'est pas complètement remonté -- Si la luminosité est inférieur à 800 Lux pendant 10 minutes entre Sunrise+30 et 18 h, on ouvre les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value-", 41,800}, 10*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"},si_pas_ouvert, {"Repeat"}}) Le Repeat était dans le IF et ce n'est pas sa place. C'était peut-être la cause du soucis. Tiens moi au courant.
Diuck Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 Merci Steven pour ta réponse j'essaye de t'expliquer au mieux mon problème Comme le détail le code ci dessus mes volets descendent lorsqu'il y a du soleil jusque la pas de problème, il ma fallu le remonter via l’interrupteur cet après midi mais normalement il dois redescendre pour reprendre ca place mais rien je viens de refaire le test en modifiant l'emplacement de "Repeat" mais toujours la même chose je ne comprend plus pourtant il me semble que cela fonctionné bien avant !! -- Si la luminosité est supérieur à 1000 Lux pendant 10 minutes entre Sunrise et 13h, on ferme les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value+", 41,1000}, 5*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}}) local si_pas_ouvert = {"If", {{"Value-", 19, 95},{"Value-", 24, 95},{"Value-", 17,95}}} -- On monte les volets uniquement si UN n'est pas complètement remonté -- Si la luminosité est inférieur à 800 Lux pendant 10 minutes entre Sunrise+30 et 18 h, on ouvre les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value-", 41,800}, 1*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","Sunrise+30","23:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"},si_pas_ouvert,{"Repeat"}}) Je viens de faire un test qui fait remonté le volet il me faut modifier les valeurs local si_pas_ouvert = {"If", {{"Value-", 19, 100},{"Value-", 24, 100},{"Value-", 17,100}}} mais je recois des notifications en permanence
HANSOLO Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 (modifié) Ce n'est pas dans ta première ligne qu'l faut mettre le repeat? Celle qui gère la fermeture des volets. Pour le "si_pas_ouvert" le test est si les trois volets sont entre 0 et 94% (GEA ne fait pas de OU dans les conditions) Pour la fermeture, tes conditions [si luminosité > 1000 pendant 5mn ET Heure entre levé du soleil +30mn ET 13H00 ET durant heure d'été] , Si tu as ouvert un volet après 13H00 même si la luminosité > 1000, il est normal que ton volet ne se referme pas. Oups, j'ai relus plus attentivement. C'est le si_pas_ouvert , si tu as un volet ouvert (commandé manuellement) la condition n'est plus rempli donc les 2 autres volet ne s'ouvriront pas automatiquement. Mais bon je crains de ne pas bien avoir compris la description du problème. Modifié le 1 juin 2014 par HANSOLO
Diuck Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 (modifié) Non ne tiens pas compte des heures et des lux je les avais ajusté en conséquence Actuellement voila mes réglages le volets 19 est ouvert à 83 pourents il devrais remonter normalement mais rien !! GEA.add({"Value+", 41,1000}, 5*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}}) local si_pas_ouvert = {"If", {{"Value-", 19,98},{"Value-", 24, 98},{"Value-", 17,98}}} -- On monte les volets uniquement si UN n'est pas complètement remonté -- Si la luminosité est inférieur à 800 Lux pendant 10 minutes entre Sunrise+30 et 18 h, on ouvre les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value-", 41,800}, 1*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","Sunrise+30","01:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"},si_pas_ouvert,{"Repeat"}}) Ok merci Modifié le 1 juin 2014 par Diuck
HANSOLO Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 Diuck, pense àcocher la case "Afficher la ligne "Modifié par"" quand tu modifie tes messages.
Steven Posté(e) le 1 juin 2014 Auteur Signaler Posté(e) le 1 juin 2014 (modifié) Ok,ok,si j'ai bien compris, tes volets se sont fermés car la luminosité était supérieur à 1000 Lux. Ce qui est normal. Ensuite, tu as ouvert manuellement un ou plusieurs volets et tu es surpris qu'ils ne se referme pas tout seul vu que la luminosité est toujours supérieur à 1000. Voici donc le fonctionnement de GEA pour que tu puisses mieux cerné se genre de piège : - Un fois que la condition est atteinte pendant la durée précisée, les actions sont effectuées et la commande est suspendue - Un fois que la condition ne sera plus atteinte, le commande sera à nouveau valable - En revanche, si le paramètres "Repeat" est précisée, la commande ne sera jamais suspendue Donc dans ton cas, si à la ligne 2, tu rajoutes {"Repeat"}. toutes les 5 minutes GEA descendra tes volets si la luminosité est supérieur à 1000Lux et que la tranche horaire est respectée. Donc si tu l'ouvres manuellement, il va le redescendre MAIS toutes les 5 minutes tu vas te prendre un push... beurkk. Donc il faudrait le descendre uniquement s'ils sont ouvert. Allez on attaque: local si_ouvert = {"If", {{"Value+", 19,65},{"Value+", 24, 65},{"Value+", 17,65}}} GEA.add({"Value+", 41,1000}, 5*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}, {"Repeat"}, si_ouvert}) Cela donne : Si la luminosité est > 1000 Lux et que le soleil est levé de puis plus de 30mn, jusqu'à 13h00 en été. On ferme les volets de 35% toutes (repeat) les 5 minutes MAIS uniquement s'ils sont ouvert à plus de 65%. Cela devrait être pas trop mail. Edit : si tu as quand même le push toutes les 5 minutes ... augmente de 65% à 70% pour essayer. Modifié le 1 juin 2014 par Steven
Diuck Posté(e) le 1 juin 2014 Signaler Posté(e) le 1 juin 2014 (modifié) Merci Steven Pour te donner l'exemple présent toutes les 1 MN je reçois un Push alors que les volets sont ouvert si j'en baisse 1 il va remonter sans problème {{"Value-", 19,100},{"Value-", 24, 100},{"Value-", 17,100}}} valeur a 100 MAIS LE PUSH !! si toutefois je change le valeur {{"Value-", 19,98},{"Value-", 24, 98},{"Value-", 17,98}}} à 98 plus rien ne se passe plus de push ni de remonté de volet GEA.add({"Value+", 41,1000}, 5*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","Sunrise+30","13:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}}) local si_pas_ouvert = {"If", {{"Value-", 19,100},{"Value-", 24, 100},{"Value-", 17, 100}}} -- On monte les volets uniquement si UN n'est pas complètement remonté -- Si la luminosité est inférieur à 800 Lux pendant 10 minutes entre Sunrise+30 et 18 h, on ouvre les volets 19 SAM 2, 24 Volet cuisine, 17 SAM 1 GEA.add({"Value-", 41,800}, 1*60,"Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","Sunrise+30","01:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"},si_pas_ouvert,{"Repeat"}}) Je vais tester ton code Modifié le 1 juin 2014 par Diuck
Diuck Posté(e) le 2 juin 2014 Signaler Posté(e) le 2 juin 2014 Salut Steven je reviens encore avec mes volets la M---E , je viens de faire un constat et j'ai besoin de tes lumières, je t'explique Alors pour le moment ils sont montés car manque de luminosité jusque la tout est normale si je baisse un volet via l'interrupteur je pense oui je dis bien je pense qu'il devrait remonter ? mais non donc j'ai effectué un test à toi de me dire si cela a du sens ! actuellement le temps est 1*60 mais la il ne se passe rien au delà des 1 mn par contre si je modifie à 0.60 et que je baisse un volet à ce moment la il remonte car manque de luminosité, c'est cela que je voudrais mettre en place avec un temps plus large mais bon si pas possible je resterais en l'état et j’arrêterais de te prendre la tête avec ça dans la config ci-dessous il ne remontent pas si j'en baisse un via l’interrupteur -- Si la luminosité est supérieur à 200 Lux pendant 10 minutes entre 13h et Sunset, on baisse les volets 20 salon, 25 AR cuisine, 48 Chambre parents, 49 Chambre Lucas GEA.add({"Value+", 44,220}, 5*60, "Fermeture des volets Ouest Partiel #value# Lux #time#", {{"Time", "13:00", "Sunset"},{"Close",20,55},{"Close",25,60},{"Close",48,60},{"Close",49,60},{"DST"}}) local si_pas_ouvert = {"If", {{"Value-", 20, 98},{"Value-", 25, 95},{"Value-",48, 99},{"Value-",49, 98}}} -- On monte les volets uniquement si UN n'est pas complètement remonté 100/100 -- Si la luminosité est inférieur à 60 Lux pendant 10 minutes entre 13h et Sunset, on remonte les volets 20 salon, 25 AR cuisine, 48 Chambre parents, 49 Chambre Lucas GEA.add({"Value-", 44,50},1*60,"Remontée des volets Ouest par manque de luminosité #value# Lux #time#", {{"Time", "13:00", "Sunset"},{"Open",20,100},{"Open",25,100},{"Open",48,100},{"Open",49,100},{"DST"},{"Repeat"},si_pas_ouvert}) Dans celle ci ils remontent il suffit d'en baisser un seul et il remonte -- Si la luminosité est supérieur à 200 Lux pendant 10 minutes entre 13h et Sunset, on baisse les volets 20 salon, 25 AR cuisine, 48 Chambre parents, 49 Chambre Lucas GEA.add({"Value+", 44,220}, 5*60, "Fermeture des volets Ouest Partiel #value# Lux #time#", {{"Time", "13:00", "Sunset"},{"Close",20,55},{"Close",25,60},{"Close",48,60},{"Close",49,60},{"DST"}}) local si_pas_ouvert = {"If", {{"Value-", 20, 98},{"Value-", 25, 95},{"Value-",48, 99},{"Value-",49, 98}}} -- On monte les volets uniquement si UN n'est pas complètement remonté 100/100 -- Si la luminosité est inférieur à 60 Lux pendant 10 minutes entre 13h et Sunset, on remonte les volets 20 salon, 25 AR cuisine, 48 Chambre parents, 49 Chambre Lucas GEA.add({"Value-", 44,50},0*60,"Remontée des volets Ouest par manque de luminosité #value# Lux #time#", {{"Time", "13:00", "Sunset"},{"Open",20,100},{"Open",25,100},{"Open",48,100},{"Open",49,100},{"DST"},{"Repeat"},si_pas_ouvert}) Si tu as une suggestion, ou j'ai peut être fait n'importe quoi à toi de me dire ce que tu en pense Merci d'avance Steven et désolé de t'-------er avec ca
HANSOLO Posté(e) le 2 juin 2014 Signaler Posté(e) le 2 juin 2014 Pour moi ta condition si_pas_ouvert fait que tes 4 volet doivent êtres fermés en même temps pour qu'ils s'ouvrent. Comme déjà écrit c'est du ET pas du OU. Après le fait de mettre 0x60 qui ouvre ton volet est peut-être un bug du GEA. Si tu veux du OU il faut faire une ligne par volet, en éclatant ta condition si_pas_ouvert
Diuck Posté(e) le 2 juin 2014 Signaler Posté(e) le 2 juin 2014 Un grand merci Hansolo Je crois que tu as raison ceci explique cela je vais essayer ce que tu me conseil créer une ligne par volet je verrais bien. Je pense à un truc si une ligne par volet veut dire 8 volets donc 8 lignes alors 8 notifications push à chaque ouverture et fermeture c'est même pas pensable
Messages recommandés