@Zefau Vielen Dank für die Antwort.
Leider bin ich totaler Anfänger in der Programmierung.
Wenn ich es richtig verstehe, durchsucht das Script alle Zeitfenster und verbindet den von mir gewählten Namen mit der generierten ID.
Wenn ich also per Schalter z.B. den nachfolgenden json string bei createTime Window einsetze
{"name":"nello","ical":"BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nDTSTART:20190610T105000Z\r\nDTEND:20190613T140000Z\r\nSUMMARY:nello\r\nEND:VEVENT\r\nEND:VCALENDAR"}
erzeuge ich ein Zeitfenster mit dem Namen "nello".
Anschließend kann ich dann das Zeitfenster mit dem Namen "nello", gezielt mit dem Schalter wieder ausschalten.
Sobald ich den Schalter wieder drücke wird das selbe Zeitfenster mit dem Namen "nello" aber einer neue ID erzeugt.
Dieses Zeitfenster kann ich dann wieder mit dem Schalter löschen u.s.w.
Zum erzeugen des Zeitfensters habe nachfolgendes Script (Blockly) benutzt.
on({id: "hm-rpc.2.0014D8xxxxxxxx.1.PRESS_SHORT"/HmIP-SMI55 0014D8xxxxxxxx:1.PRESS_SHORT/, change: "any"}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setStateDelayed('nello.0.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx0.timeWindows.createTimeWindow', '{"name":"nello","ical":"BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nDTSTART:20190610T105000Z\r\nDTEND:20190613T140000Z\r\nSUMMARY:nello\r\nEND:VEVENT\r\nEND:VCALENDAR"}', false, parseInt(0, 10), false);
});
Zum löschen aller Fenster habe ich nachfolgendes Script (Blockly) benutzt.
on({id: "hm-rpc.2.0014D8xxxxxxxx.2.PRESS_SHORT"/HmIP-SMI55 0014Dxxxxxxxx:2.PRESS_SHORT/, change: "any"}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setStateDelayed('nello.0.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx0.timeWindows.deleteAllTimeWindows', true, false, parseInt(0, 10), false);
});
Was muss ich nun eingeben um nur das Zeitfenster mit dem Namen "nello" zu löschen?
Ich hoffe ich habe mich einigermaßen verständliche ausgedrückt.
Vielen Dank für die Hilfe.
Gruß Oliver