Freekers schreef op vrijdag 28 april 2017 @ 08:32:
[...]
[...]
Eens, Domotica zou er moeten zijn om de gebruiker te ondersteunen, niet om deze te leiden. Een override zou dus altijd mogelijk moeten zijn.
Wat voor 'n soort precense detection gebruik jij als ik vragen mag? Ik gebruik momenteel precense detection gebaseerd op het MAC Address van onze telefoons en dat werkt best goed, alleen mag het nog wat sneller; Ik heb een delay van 10 minuten er op staan omdat de WiFi op de telefoons soms in slaapmodus gaat en dus verdwijnt van de 'radar'. Ze hebben dan 10 minuten de tijd om weer te connecten alvorens ik ze markeer als 'niet thuis'.
Met 1 druk op de knop alles uit laten gaan wil ik ook nog maken. Zat te denken om daar de 'Group Off' toets voor te gebruiken en deze te koppelen aan een Scene (groep gaat niet, want het is maar 1 button) waar alle lampen in zitten.
Ik gebruik Pilot, een app die geofencing ondersteunt, omdat men vrouw en ik nu allebij een iPhone hebben, daarvoor toen zij nog een android toestel had liet ik ook pingen naar haar toestel, maar ik had het in slaap gaan van de wifi uitgeschakeld om dit probleem te vermijden.
Maar de geofencing werkt eigenlijk prettiger.
[...]
Dat was inderdaad wat ik zocht, helemaal bedankt, top

! Alleen heb ik, zoals hierboven omschreven, er last van dat Domoticz wat trager reageert op mijn inbouw wandschakelaar vergeleken met de afstandsbediening (die nu ook via Domoticz loopt)
Hier had ik bij sommige dingen ook last van, je kan dit oplossen door in je script rechtstreeks de schakelaar aan te spreken via json.
[...]
Ik maak gebruik van een dummy switch ('SunsetDummy') met een timer erop die automatisch 1 wordt met zonsondergang en 0 wordt op een vast tijdstip, ongeveer hetzelfde principe dus. Ik heb echter een event/script nodig om de boel te overriden, anders blijft het licht weer aangaan als ik het uitzet tussen zonsondergang en mijn tijdstip of klopt dat niet?
Ik gebruik ook een virtuele 'isDonker' switch voor sommige scripts, maar in dit geval is dat niet nodig. Met een timer word het licht gewoon 1x aangedaan bij zonsondergang, als je de lamp hierna uitzet met een schakelaar of via domoticz zal deze niet terug aangaan. Als je wilt dat de lamp enkel aangaat als er iemand thuis is, zal je dit wel in een script moeten gieten.
Bijvoorbeeld de lamp in de hal uit mijn vorige post laat ik altijd aangaan, ookal zijn we niet thuis, hiervoor gebruik ik een timer. De overige lampen in huis laat ik enkel aangaan als we thuis zijn met het volgende script:
Lua: donker
1
2
3
4
5
6
7
8
9
| commandArray = {}
if (devicechanged['Het word donker'] == 'On' and otherdevices['Iemand thuis'] == 'On' ) then
commandArray['Scene:aankomst'] = "On"
print('het word donker')
end
return commandArray |
'Het word donker' is een virtuele switch die een half uurtje voor zonsondergang 1s aangaat, dit triggerd het script maar 1x. Ik heb ook een switch 'isDonker' die de periode zonsondergang-zonsopgang aanblijft, die gebruik ik voor andere zaken.
'Iemand thuis' is een virtuele switch die aangaat als de virtuele switchen voor de telefoons van mij of mijn vrouw aan is.
In de scene aankomst zitten alle lampen die ik aan wil als het s'avonds donker word.
Diezelfde scene gebruik ik ook voor als we pas na het donker thuiskomen, vandaar de naam.
Lua: donker
1
2
3
4
5
6
7
8
9
10
11
12
13
| commandArray = {}
if (devicechanged['Er komt iemand thuis'] == 'On' and otherdevices['IsDonker'] == 'On' and otherdevices['Lamp Schemerlamp'] == 'Off') then
commandArray['Wandlicht Gang']='Set Level 100'
commandArray['Scene:aankomst'] = "On"
print('licht aan als er iemand thuis komt door ping of geo')
elseif (devicechanged['Voordeur'] == 'Open' and otherdevices['IsDonker'] == 'On' and otherdevices['Iemand thuis'] == 'Off') then
commandArray['Scene:aankomst'] = "On"
print('licht aan als er iemand thuis komt door voordeur open')
end
return commandArray |
Hier bij gebruik ik weer een extra virtuele switch 'er komt iemand thuis', die slechts 1s aangaat als er iemand thuiskomt, hierdoor word het script slechts 1x uitgevoerd.
Wat ik eigenlijk wil zeggen is: door slim gebruik te maken van virtuele switches kan je je script veel simpeler maken dan met integers toe te voegen.
[...]
Ik heb een vraag over je onderste script: Wat is het verschil tussen je eerste if en elseif? Die zien er voor mij hetzelfde uit?
Hetzelfde geldt voor je 3e en 4e elseif, die zien er hetzelfde uit qua condities. Pakt Domoticz ze dan niet allebei?
Jawel, in 1 regel staat == en de andere ~= (NOT). Dit doe ik omdat de lampen gedimt kunnen zijn. Je kan dan niet zeggen =='on', want 'on' is enkel bij 100%. ~='off' dekt alle standen tussen 1% aan en 100% aan.
[...]
Ik beleef veel plezier aan Domoticz/homo automation en heb er sinds kort een geweldig leuke hobby bij. Het is alleen erg tijdrovend, zeker als je denkfouten maakt in je schema's en moet gaan troubleshooten. Dat kan soms frustrerend zijn, soms heb je van die momenten dat je gewoon wilt dat 'het werkt', maar het is anderzijds ook uitdagend

Mijn vrouw was de eerste maanden ook niet blij als ik weer eens de hele avond aan het prutsen was met scripts en lichten die opeens aan en uitgaan, of schakelaar die ineens niet meer werken, maar eenmaal je alles in orde hebt is het echt een verademing. Ik hoef bijna nooit nog een lichtschakelaar te gebruiken (Behalve de 'alles uit' knop in de hal voor als we gaan slapen).
Als het donker word gaan de lichten aan, als we tv gaan kijken, gaat alles uit behalve wat sfeerverlichting (met behulp van een logitech harmony die ook aan domoticz gekoppelt is). Als ik kodi op pauze zet, gaat het licht in de keuken al aan zodat we wat te drinken kunnen pakken.
Als de deurbel gaat gaat zelfs kodi op pauze en het licht aan zodat we de pizza kunnen aannemen
Bij de berging/achterdeur hangt een z-wave bewegingssensor die het licht enkele minuten aandoet als we daar iets nodig hebben (en ter beveiliging van de achterdeur word er als die deur opengaat en we zijn niet thuis ook een afbeelding van de ipcamera naar mijn gsm verzonden)
Ook heb ik een virtuele hue bridge op de rpi draaien zodat ik al mijn kaku en z-wave spul ook met siri kan bedienen. Zo kan ik bijvoorbeeld 'de kinderen slapen' zeggen tegen siri, en dan worden de lichten gedimt en begint er marvin gaye uit de sonos te spelen
De mogelijkheden zijn eindeloos, en met creatief gebruik van scripts is het echt een toegevoegde waarde aan mijn dagelijks leven. Bijvoorbeeld die alles uit knop is echt heerlijk, terwijl ik vroeger heel het huis moest nalopen voor ik ging slapen, druk ik nu gewoon op die knop en ik kan naar boven, heerlijk