Bij vertrek van huis laat ik via Heimdall de status van alle sensoren controleren, vervolg heb ik onderstaande flow gemaakt:
als
sensor actief bij status controle
dan
maak timeline notificatie
Echter bij uitvoeren schakelt hij de flow uit…
Ik wil juist dat hij de flow meerdere malen (snel) achter elkaar uitvoert zodat ik zie welke sensoren er nog actief zijn
Ga even na welke flows je na het tijdstip “tot voor kort” hebt gemaakt / gewijzigd.
Ik heb het idee dat het toevallig goed kan gaan bij 1 flow die meerdere malen per sec getriggerd wordt, maar als er nog een flow tegelijkertijd ‘te vaak’ wordt getriggerd, dat 1 van de flows uitgeschakeld wordt.
Homey is een gesloten systeem waarbij Athom bepaalde keuzes maakt voor je. Dat komt misschien betutteld over, maar Athom weet beter wat jij wilt dan jijzelf (/s).
Een andere benadering voor wat je wil bereiken:
Ik heb een flow en een script die mij vertelt welke deuren/ramen nog openstaan bij regen op komst.
Dat moet om te bouwen zijn.
I.p.v. de trigger in mijn voorbeeldflow
“ALS regen werd groter dan 0mm”,
kun je bijv.
ALS de toezicht modus is gewijzigd
of
ALS de alarm vertraging is geactiveerd
als trigger gebruiken.
Flow:
/
Op de plek van het ? teken heb ik de variabele door_windowText geselecteerd.
Het script creëert en vult deze variabele met de inhoud van ‘windowText’, welke in het script gedefinieerd is.
Script (deur_raam-nog_open.js)
In Homeyscript maak je een nieuw script, noem hem bijv. deur_raam-nog_open.js
Copy/paste onderstaande code,
Onder het kopje \\ USER INPUT pas je de namen van de sensoren aan, en sla het script op:
// Homeyscript 'deur_raam-nog_open.js'
// Check if certain doors or windows is open?
let devices = await Homey.devices.getDevices();
let windowText = "";
let currentText = "";
let logText = "";
let windowOpen = false;
_.some(devices, device =>
{
if ( device.class == 'sensor' )
{
if( device.capabilitiesObj &&
device.capabilitiesObj.alarm_contact &&
device.capabilitiesObj.alarm_contact.value )
{
currentText = "";
// to compare and see if there is no typing error
console.log("- Open door/window:", device.name + " (device.class: " + device.class + ")");
// USER INPUT
// Enter contact sensors names, device.name == "Exact sensor name"
// currenText = "Sensible sensor name"
if ( device.name == "FrontDoor x.1" ) currentText = "Front door";
if ( device.name == "Deur Trap" ) currentText = "Trap";
if ( device.name == "Deur Badkamer" ) currentText = "Badkamer";
if ( device.name == "Raam Slaapkamer" ) currentText = "Slaapkamerraam";
if ( device.name == "Deur Koelkast" ) currentText = "Koelkast";
// End of user input
if(currentText != ""){
windowOpen = true;
if(windowText=="")
windowText = currentText;
else
windowText = windowText + ", " + currentText;
}
}
}
});
if(windowOpen == true)
windowText = "These doors or windows are still opened: " + windowText;
else
// comment this out if you don't want a msg when all's fine:
windowText = "All doors and windows are closed";
//just to check
console.log("Output: ", windowText);
// Create / update HomeyScript variabele
await tag("door_windowText", windowText);
return (true);