Hi Uwe,
HomeyScript ist eigentlich nicht so schwer. Du brauchtst nur JavaScript-Kenntnisse und musst in der Homey-API-Beschreibung wĂŒhlen ![]()
Hier mal ein Beispiel. Ich prĂŒfe damit mehrere Fenster und gebe einen Text zurĂŒck, der ĂŒber Alexa ausgegeben wird. Der Flow ist als Favorit gespeichert und kann so direkt ĂŒber Alexa aufgerufen werden.
Die Sktipte kann man als Flow-Bedingung verwenden (true/false-RĂŒckgabe). Viel besser ist aber, dass man auch Flow-Tags erzeugen, im Skript fĂŒllen und im Flow weiter verwenden kann.
Das Skript:

// FensterprĂŒfung
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 = ââ;
if( device.name == âFenster GĂ€stezimmerâ)
currentText = âGĂ€stezimmerâ;
if( device.name == âFenster BĂŒroâ)
currentText = âBĂŒroâ;
if( device.name == âTerrassentĂŒrâ)
currentText = âWohnzimmerâ;
if( device.name == âFenster KĂŒcheâ)
currentText = âKĂŒcheâ;
if( device.name == âFenster Schlafzimmerâ)
currentText = âSchlafzimmerâ;
if( device.name == âFenster Jugendzimmerâ)
currentText = âJugendzimmerâ;
if(currentText != ââ){
windowOpen = true;
if(windowText==ââ)
windowText = currentText;
else
windowText = windowText + ", " + currentText;
}
}
}
});
if(windowOpen == true)
windowText = "Fenster geöffnet: " + windowText;
else
windowText = âFenster geschlossenâ;
console.log(windowText);
//Homey.logic.updateVariable( id = âFensterpruefungâ, variable=windowText);
await tag(âwindowTextâ, windowText );
return windowOpen;
Der Returnwert windowOpen ist die RĂŒckgabe fĂŒr die Flow-AND-PrĂŒfung.
Mit âawait tag( )â kann man ein Tag erzeugen. âwindowTextâ ist der Name des Tags, den man im Flow verwenden kann.
Der Flow mit dem Skript-Aufruf. In den Benachrichtigungen kann der im Skript definierte Tag âwindowTextâ verwendet werden.
