få note efter att lampa är tänd under 24 tim

Post Reply
csabe
Medlem
Posts: 55
Joined: 17 Dec 2014, 15:22

06 Jan 2018, 14:50

Borde vara enkelt att köra en kod som läser av om en lampa/flera lampor varit tända i X antal timmar och då få något att hända. (För mig att få en pushnote).

Jag lyckas dock inte komma på hur.

/Christian
Nybörjare…
… som försöker koppla upp hela lägenheten.
Markiser, Sonos, Roomba, Harmony m.m.
… om ändå något kunde funka. :-)
alexndr
Medlem
Posts: 242
Joined: 14 Jul 2016, 14:38

07 Jan 2018, 10:30

Blockscener eller Lua?
valneg
Medlem
Posts: 27
Joined: 30 May 2015, 05:46

10 Jan 2018, 17:59

GEA skulle vara perfekt för det där, jag använder raden nedan för att få en varning i fall garagedörren har varit öppen mer en 1 timme. "290" är en vanlig magnetsensor i det här fallet.

Code: Select all

--Varning garagedörr 1 timme
GEA . add ( 290 , 60 * 60 , "Garagedören är öppen" , {{ "Repeat" }})
csabe
Medlem
Posts: 55
Joined: 17 Dec 2014, 15:22

18 Jan 2018, 15:49

Missade att jag hade fått svar.

GEA har jag inte gett mig in med.

Lua tänker jag mig. Inte för att jag kan koda, men man fattar ju lite för att modifiera :-)
Nybörjare…
… som försöker koppla upp hela lägenheten.
Markiser, Sonos, Roomba, Harmony m.m.
… om ändå något kunde funka. :-)
alexndr
Medlem
Posts: 242
Joined: 14 Jul 2016, 14:38

18 Jan 2018, 17:58

För en enda lampa skulle jag göra enligt följande:

Lampans "värde" triggar lua- koden.

Om värdet är 1 indikerar det att lampan slås på. Det startar en timer och en loop. Loopen gör en sleep (eller ännu hellre en setTimeout som skall vara effektivare) på 1 h (eller mindre tidsperiod, lite beroende på exakt den skall vara).
När loopen "vaknar" igen kollar den om timern är 24h gammal. I så fall, skicka ett meddelande och avsluta loopen. Om inte, kör ett varv till.

Om värdet istället är 0 så indikerar det att lampan slagits av och att loopen ovan kan brytas. Förslagsvis med en killScene.
Vill man inte ha loopar som "ligger och kör" kan man alltid spara sitt "state" i en global variabel istället.

Vill man ha logiken för flera lampor kan man antingen ha flera instanser av scenen (ger bra visibilitet eftersom du i Fibaro GUI:t kommer kunna se om timern är igång via "running instances"- informationen) eller så får man modifiera koden ovan för att hantera flera. Blir lite mer komplext men klart görbart.
csabe
Medlem
Posts: 55
Joined: 17 Dec 2014, 15:22

18 Jan 2018, 18:03

Kanske skulle vara lite tydligare, tänker att det ska vara om någon av lamporna man har hemma.
Nybörjare…
… som försöker koppla upp hela lägenheten.
Markiser, Sonos, Roomba, Harmony m.m.
… om ändå något kunde funka. :-)
alexndr
Medlem
Posts: 242
Joined: 14 Jul 2016, 14:38

18 Jan 2018, 18:38

csabe wrote:Kanske skulle vara lite tydligare, tänker att det ska vara om någon av lamporna man har hemma.
?
alexndr
Medlem
Posts: 242
Joined: 14 Jul 2016, 14:38

18 Jan 2018, 18:39

csabe wrote:Kanske skulle vara lite tydligare, tänker att det ska vara om någon av lamporna man har hemma.
Sorry men jag tycker nog snarare att din kommentar gjorde det otydligare :)
csabe
Medlem
Posts: 55
Joined: 17 Dec 2014, 15:22

18 Jan 2018, 18:44

sorry, ska försöka vara tydligare med mitt scenario.

Jag har så att när man öppnar dörren så tänds det ett gäng lampor, går man hemifrån så ska allt släckas.
Ibland när man är bortrest kommer grannen in och vattnar. För det mesta funkar det fint och allt släcks när de har gått. Men ibland så skiter sig det och det står och lyser. Det är framförallt då man skulle vilja få en notis om att en eller flera lamor har nu lyst under 24 timmar.
Nybörjare…
… som försöker koppla upp hela lägenheten.
Markiser, Sonos, Roomba, Harmony m.m.
… om ändå något kunde funka. :-)
alexndr
Medlem
Posts: 242
Joined: 14 Jul 2016, 14:38

18 Jan 2018, 18:49

Ok. Då skulle jag köra allt i en scen. Alla lampor sätts som eventuella triggers till scenen.
Timern för när lampan tändes sparas i en ”table” där dit på lampan är nyckel och timern är värdet.
Därefter samma loop- logik som ovan men man får kolla igenom alla element i tabellen.

Slås en lampa av plockas den bort ur tabellen. Är tabellen tom kan loopen avbrytas.

Man får även fundera på hur man vill hantera notisen om man har flera lampor.
Skall man skicka en notis per lampa eller skall man komma ihåg när man senast skickade en notis så att de kan skickas som oftast enligt ett definierat intervall.
csabe
Medlem
Posts: 55
Joined: 17 Dec 2014, 15:22

18 Jan 2018, 18:54

Det där lät lite över min kunskapsnivå tyvärr.
Men tack.
Nybörjare…
… som försöker koppla upp hela lägenheten.
Markiser, Sonos, Roomba, Harmony m.m.
… om ändå något kunde funka. :-)
alexndr
Medlem
Posts: 242
Joined: 14 Jul 2016, 14:38

18 Jan 2018, 19:29

GEA kanske är bättre lösning för dig. Hjälper någon dig med GEA- strängen tror jag att du kan vara uppe ganska snabbt.

Finns en massa andra färdiga scener också. Vill minnas att Sankotronic på officiella Fibaro- forumet har ett paket han kallar för ”very smart lights”. Inte säker på att det löser ditt problem men kan vara värt att kolla på.
janos
Medlem
Posts: 63
Joined: 05 Mar 2015, 11:56

19 Jan 2018, 07:59

Jag har en scen som släcker alla lamporna kl 04:00 varje dag. Inget som behöver vara tänt efter det klockslaget.
Mycket enkel scen.
Post Reply