Hoe wordt bepaald of de GSM's On of Off zijn?
Ik neem aan dat dit bepaald wordt door
Presence detection. Zo ja dan hoef je de 180 seconden niet te gebruiken aangezien je dat in de presence detection kunt meegeven hoelang er gewacht moet worden.
Inderdaad wat tozzke aangeeft altijd een aangemaakt switch altijd een keer handmatig aan/uit zetten voor je begint. Al meerdere keren meegemaakt dat iets niet wilde werken omdat je dit zelf 1x handmatig moet doen.
Onderstaand heb ik een tijd gebruikt. Inmiddels overgeaan naar LUA.
Met blocky's zit het probleem vaak dat een puzzelstukjs (geen idee wat de naam is van een elememnt) net verkeer staat. Als je deze naar de plek sleept dan krijg je daarom heen een block (de lichte lijn) te zien. Maar als je hem net iets anders sleept kan dit net weer iets anders worden.
Met LUA zijn dit soort zaken veel overzichtelijker en heb je dit probleem niet. Misschien een idee om onderstaand te gebruiken hiervoor. Groot voordeel van LUA is ook dat je de scripts eenvoudig kunt kopieeren naar een veilige plaats als backup.
In de blocky editor kun je nu ook kiezen voor LUA editor dus ook makkelijk te bewerken.
De local waardeze daarin vul je tussen de ' ' de namen in zoals deze ook in Domoticz worden gebruikt.
IemandThuisOveride kun je eenvoudig toevoegen net zoals IemandThuis.
Script plaats je in /home/pi/domoticz/scripts/lua en geeft je bv de naam script_device_iemand_thuis.lua of je maakt via LUA editor in Domoticz een nieuw bestand aan en kopieer de inhoud van onderstaand daarin en pas je aan naar je eigen wensen.
[code=lua]
local presence_switch = 'IemandThuis'
local firstphone = 'Smartphone 1'
local secondphone = 'Smartphone 2'
local thirdphone = 'Smartphone 3'
commandArray = {}
if devicechanged[firstphone] or devicechanged[secondphone] or devicechanged[thirdphone] then
if (otherdevices[presence_switch] == 'Off') and ((otherdevices[firstphone] == 'On') or (otherdevices[secondphone] == 'On') or (otherdevices[thirdphone] == 'On')) then
print('<b style="color:Blue"> Er is minimaal 1 telefoon thuis, De IemandThuis switch wordt aangezet.</b>')
commandArray[presence_switch]= 'On'
elseif (otherdevices[presence_switch] == 'On') and ((otherdevices[firstphone] == 'Off') and (otherdevices[secondphone] == 'Off') and (otherdevices[thirdphone] == 'Off')) then
print('<b style="color:Blue">Er is niemand meer thuis, IemandThuis switch wordt uitgezet.</b>')
commandArray[presence_switch]= 'Off'
end
end
return commandArray
[/code=lua]
Heb je de timeout wel nodig dan pas je
[code]
commandArray[presence_switch]= 'Off' aan naar commandArray[presence_switch]= 'Off AFTER 180'
[code]
[
Voor 3% gewijzigd door
MikeOO op 16-03-2016 09:17
]