Ich möchte nur verstehen, ob ich falsch denke oder es sich falsch verhält. Bestes Beispiel das hier:

Ich erkläre einmal, wie ich es verstehe und ihr sagt, ob das richtig ist:
Sobald die Variable schlaf_links_temp1 wahr ist, wird alle 5min eine Telegramnachricht gesendet. Gleichzeitig wird alle 300ms geprüft, ob eine Nachricht mit dem Content "Ja" im Telegrambot angekommen ist. Wenn ja, dann setze die Variable schlaf_links_temp1 auf unwahr und beende sowohl den 5 min Intervall als auch die Abfrage. Dadurch, das die Variable schlaf_links_temp1 auf unwahr gesetzt wird, wird auch gleichzeitig der ganze "Check Block" nicht mehr ausgeführt.
irgendwann jedoch ignoriert ioBroker bzw. Javascript die Anweisung "stop zyklische Ausführung" und ihr könnt euch ja vorstellen, was das bei einem "Ja" bedeutet: Nachrichten im Bot im Abstand von 300ms…. Damit habe ich ein SPAM-Bot, nicht mehr oder weniger. Ich komme dann nur aus der Nummer mit stoppen des ganzen Scriptes.
Und das verstehe ich nicht. Wie kann das dumme Teil einfach irgendwann die Befehle "stop zyklische Ausführung" ignoieren? Am anfang klappt das ja wunderbar..
Hier der Javacode dazu:
var Schlaflinks, Abfrageschlafli;
on({id: "javascript.0.var.temp.schlaf_links_temp1"/*schlaf_links_temp1*/, val: true}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
Schlaflinks = setInterval(function () {
sendTo("telegram", "send", {
text: 'Schlafzimmer Fenster links ist auf. Ist das korrekt? (Stoppbar durch Anwesenheit oder Frage beantworten)'
});
}, 300000);
Abfrageschlafli = setInterval(function () {
if (getState("telegram.0.communicate.request").val == '[nojo]Ja' || getState("telegram.0.communicate.request").val == '[nida]Ja' || getState("hm-rpc.0.MEQ0615319.1.STATE").val == false) {
setState("javascript.0.var.temp.schlaf_links_temp1"/*schlaf_links_temp1*/, false, true);
sendTo("telegram", "send", {
text: 'Danke für die Rückmeldung oder schließung des Fensters Schafen links'
});
(function () {if (Schlaflinks) {clearInterval(Schlaflinks); Schlaflinks = null;}})();
(function () {if (Abfrageschlafli) {clearInterval(Abfrageschlafli); Abfrageschlafli = null;}})();
}
}, 300);
});