Homey Community Forum

Push Mitteilung bei Offenen Fenster nach 5min

includes ist case sensitiv, d.h. Groß- bzw. Kleinschreibung ist relevant:

https://www.w3schools.com/jsref/jsref_includes.asp

Ich habe den Filter hier entfernt, damit kannst du beliebige Namen verwenden:

// 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.includes("Fenster")) currentText = "Fenster";
if(device.name.includes("Dachfenster")) currentText = "Dachfenster";
if(device.name.includes("Gaubenfenster DG")) currentText = "Gaubenfenster";
if(device.name.includes("Terrassentür")) currentText = "Terrassentür";

if(currentText != ""){
windowOpen = true;
if(windowText=="")
windowText = currentText;
else if(!windowText.includes(currentText))
windowText = windowText + " und " + 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;

Ansonsten auch gerne weiter per PM.

@RonnyW und @Joka, so war das jetzt auch nicht gemeint das Ihr jetzt für mich googlet. Ich bin davon ausgegangen das Ihr sowas wisst. Danke dafür! :+1:t3:

@RonnyW, die ODER-Verknüpfung von insgesamt 3 Variablen (oder wie diese auch heißen mögen), habe ich nochmals nachgestellt und jetzt keine Fehlermeldung mehr bekommen. Vermutlich war eine Klammer zu viel oder zu wenig. Wenn man sowieso einen Teilstring nutzen kann, z.B. “enster”, dann benötige ich sowieso nur eine ODER-Verknüpfung.

Hm, der “Filter” hat doch die Namen der Sensoren “gefiltert”:
Wenn der Name des Sensors “enster” oder “tür” beinhaltet, aber das fehlt ja jetzt.
Außerdem fehlen doch jetzt die Räume? :thinking:

Lasst mich mal rumprobieren. Sollte ich Hilfe benötigen melde ich mich noch mal.

Der Vorfilter ist entfernt, es werden ja noch die konkreten Namen abgefragt.

Kein Problem, immer fragen :wink:
Man muss nicht alles wissen sondern nur wissen, wo man suchen kann.

Wenn du andere Attribute der Geräte prüfen sillst, dann müsstes du schauen, welche es gibt und wie du sie ansprechen kannst.
ALso entweder die Web-API vom Homey durchsuchen (in der Developer-Seite) oder wie ich HomeyDash im Browser aufrufen und dann die Debugger-Konsole starten. Dann kann man sich die Eigenschaften “live” anschauen.
Ich kann dir mal ne kleine Anleitung basteln, falls du das mal brauchst. Einfach melden bei Fragen…geht auch per PN

Hab’s nach zig “Try and Error” hinbekommen, danke Euch! :+1:t3:

Ob ich noch andere Anwendungsfälle habe, müsste ich mir erstmal Gedanken drüber machen. Aber dann würde ich definitiv auf Euch zurückkommen.

Super :+1:, ist auch aktuell mein einziger Anwendungsfall + die Zigbee Prüfskripte von Dijker.

1 Like

Die habe ich auch noch, waren auch deutlich einfacher ans Laufen zu bringen… :stuck_out_tongue_winking_eye:

Wenn man wirklich Ahnung von JavaScript hätte, dann könnte man bestimmt vieles vereinfachen. Aber nicht mehr in diesem Leben… :man_shrugging:t3: