NEWS
[Vorlage] Generisches Fensteroffenskript + Vis
-
@Pittini danke
-
@dodi666 sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
Zudem gibt es ja auch beispielsweise Terrassentüren mit Kippfunktion, welche durchaus zur Belüftung des Raumes genutzt werden können.
Eben, und spätestens da wirds dann schräg. Momentan wird das als Fenster gewertet, gäbs jetzt auch Türen im Skript, würden die meisten es als Tür definieren, was dann die Lüftungs und Öffnungswarnung durcheinander bringen würde, also müßte man es als Tür und Fenster deklarieren können usw. So "einfach" mit nem Flag ist das auch nicht getan, geht schon damit los, wo willste denn das Flag setzen? In der Objektliste bei den Fenstern? Da hats nix zu suchen, das sind Fenster. Also müßte man ne 2te Struktur anlegen, ne 2te Funktion einführen und den halben Code umschreiben wenns anständig gemacht sein soll. Einfach "dranpappen" is Pfusch und wird nicht passieren. Vieleicht mach ich irgendwann mal was in der Richtung wenn mir richtig langweilig ist, aktuell wirds keinerlei Änderungen in der Größenordnung geben.
-
@der-eine sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
danke
Gerne. Kann Dir aber nicht garantieren dass da alles perfekt läuft, das wird nicht gepflegt/weiterentwickelt, kann sein dass da evtl. kleiner Probs auftauchen, wenngleich keiner was gemeldet hat, bzw wenn, dann ist der Bugfix in die aktuelle Version eingeflossen.
-
@Pittini alles klar. Hab das aktuelle Skript genutzt um es auf Lichter umzubauen was auch funktioniert. Doch leider sind meine JS Kenntnisse so gering, dass ich die Ventwarnung nicht selber entfernen kann ohne das Fehler auftauchen.
Bei Dir ist nicht gerade zufällig in Planung so ein Skript für Lichter zu schreiben? -
@der-eine sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
Bei Dir ist nicht gerade zufällig in Planung so ein Skript für Lichter zu schreiben?
Nope. Mir ist nicht mal klar was es für nen Sinn macht Lichter zu zählen. Es wird demnächst noch kleinere Änderungen am Batterieskript geben und dann geh ich an ein größeres Update meines Timerskriptes. Und gelegentlich muß ich auch an meinen internen, nicht veröffentlichten Skripten was ändern.
-
@Pittini ich nutze es als Anzeige in den Messages ob noch irgendwo Licht brennt wenn ich das Haus verlasse.
Mit der neuen Funktion von Messages in eine View zu springen, kann man direkt das Licht ausschalten.
Alles klar dann probier ich es mit dem Skript ohne Vent. -
@Pittini
Ich dachte es ging in dem Thread darum, mögliche Erweiterungen/Verbesserungen zu diskutieren. Deine Antworten lesen sich so, als würdest du dich persönlich angegriffen fühlen. Versteh mich bitte nicht falsch, das Skript ist toll und ich kann wunderbar mit den vorhandenen Funktionalitäten leben. Mir sind die genannten Dinge lediglich für meinen Anwendungsfall aufgefallen, und ich halte sie argumentativ immer noch für sinnvoll. Deine Einschätzung des Arbeitsaufwands teile ich voll und ganz und habe vollstes Verständnis dafür, wenn du es von daher nicht umsetzen möchtest. Trotzdem vielen Dank für dein Engagement und deine tolle Arbeit. -
@dodi666 sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
Deine Antworten lesen sich so, als würdest du dich persönlich angegriffen fühlen.
Sorry, sollte nicht so rüberkommen, wenngleich, bedenke bitte ich krieg auch Wünsche per PM, FB, Git usw. Und wenn ich zu drölfzigten mal mich über die Türgeschichte auslassen muss, wurde es halt mal etwas harscher. Nicht persönlich gemeint.
-
@Pittini Na dann, bin ich ja nicht alleine mit meinem Wunsch
-
Hi Pittini, danke für das skript. Superjob
Ich habe nur ein Problem. Wenn ich SendWarnMsg von true auf false setzen möchte verweigert er mir das. Er macht also garnix und lässt hartnäckig true drinn stehen. Woran kann das liegen? -
@Bibo-13 Ok. nehme die Frage zurück. Nach Iobroker restart klappt alles. Sorry
-
Hallo,
Ich erhalte immer folgende Meldungen im log.
javascript.0 2020-05-12 06:40:29.436 error (354) at processTimers (internal/timers.js:492:7) javascript.0 2020-05-12 06:40:29.435 error (354) at listOnTimeout (internal/timers.js:551:17) javascript.0 2020-05-12 06:40:29.435 error (354) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1983:34) javascript.0 2020-05-12 06:40:29.435 error (354) at Object.<anonymous> (script.js.common.Fensterauswertung:520:73) javascript.0 2020-05-12 06:40:29.435 error (354) at Meldung (script.js.common.Fensterauswertung:206:21) javascript.0 2020-05-12 06:40:29.435 error (354) Error in callback: ReferenceError: Say is not defined javascript.0 2020-05-12 06:40:29.434 info (354) script.js.common.Fensterauswertung: Reaching Meldung, msg= Schlafzimmerfenster seit 10 Stunden 43 Minuten geöffnet! javascript.0 2020-05-12 06:40:29.414 error (354) at processTimers (internal/timers.js:492:7) javascript.0 2020-05-12 06:40:29.414 error (354) at listOnTimeout (internal/timers.js:551:17) javascript.0 2020-05-12 06:40:29.414 error (354) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1983:34) javascript.0 2020-05-12 06:40:29.414 error (354) at Object.<anonymous> (script.js.common.Fensterauswertung:520:73) javascript.0 2020-05-12 06:40:29.414 error (354) at Meldung (script.js.common.Fensterauswertung:206:21) javascript.0 2020-05-12 06:40:29.414 error (354) Error in callback: ReferenceError: Say is not defined
Wo liegt bei mir der Fehler?
-
stelle die Funktion mal auf false, siehe Bild.
-
Ist deaktiviert, nutze diese Funktion auch gar nicht.
Verwende nur die Kombination mit Telegramm. -
@e-i-k-e sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
Ist deaktiviert, nutze diese Funktion auch gar nicht.
Ich würde @e-i-k-e zustimmen wollen. Zeig mal Deine Skripteinstellungen.
-
@Pittini ich bekomme im Script folgende Fehlermeldungen
20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
20:27:29.302 error javascript.0 (23702) at main (script.js.Fenster.Alle.Fensteroffenerkennung:198:5)
20:27:29.302 error javascript.0 (23702) at Object.<anonymous> (script.js.Fenster.Alle.Fensteroffenerkennung:161:13)Im Script selber habe ich nichts verändert, außer in Zeile 22 UseSay zu deaktiveren.
Vor 5 min auf Git gezogen
Daher sehe ich nicht in VIS, und aktualisieren tut er Stati auch nicht
-
Nur um folgendes auszuschließen:
Wenn noch nicht geschehen, allen gewünschten Sensoren einen Raum und eine Funktion zuweisen. Die Funktion muss vorher in den Aufzählungen hinzugefügt werden und könnte z.B. "Verschluss" lauten. Soll ein anderer Begriff verwendet werden, muss dies dann auch im Script, Zeile 11 geändert werden. Nach der Zuweisung, bzw. dem anlegen neuer Aufzählungspunkte ist es oft hilfreich die JS Instanz neu zu starten da diese bei Aufzählungsänderungen gerne mal "zickt" was dann zu Skriptfehlern führt.
Hast du das bei dir eingestellt und befolgt?
-
@Dominik-F alle Sensoren haben die Funktion Verschluss, aber auch noch 2 weiter, für andere Scripte. Die sind auch in den Aufzählungen, das passt.
Die Instanz wurde 1x neu und das Script selber 4x neu gestartet.
Die Ordnerstrucktur wurde im Javascripm Ordner auch anglegt, hier mal Auszüge
-
@AxelF1977 Ein Raum namens undefined läßt auf einen nicht zugeweisen Raum, aber zugeordnetem Verschluss schließen. Um mehr zu sagen mußt mir die Infos geben die ich jedem immer aus der Nase ziehen muß.
Was steht im Skriptlog? Wie sieht die Zuordnung der Funktion und Räume in der Objektliste aus? Welche Einstellungen sind im Skript? Wann tritt der Fehler auf, bei Start oder wenn ne Nachricht geschickt wird?
Du kannst versuchsweise mal den kompletten Skriptchannel löschen. Wird er wieder mit nem undefined Raum angelegt, dann kontrollier Deine Raumzuweisungen. Wenn Du der Meinung bist das da alles paßt, dann melde Dich mit obengenannten Infos wieder. -
@Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
Um mehr zu sagen mußt mir die Infos geben die ich jedem immer aus der Nase ziehen muß.Was steht im Skriptlog?
Musst Du doch gar nicht, stand doch schon weiter oben
Log vom Script (unterhalb)
@Pittini ich bekomme im Script folgende Fehlermeldungen
20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
20:27:29.302 error javascript.0 (23702) at ReplaceChars (script.js.Fenster.Alle.Fensteroffenerkennung:339:32)
20:27:29.302 error javascript.0 (23702) at CreateOverviewTable (script.js.Fenster.Alle.Fensteroffenerkennung:309:219)
20:27:29.302 error javascript.0 (23702) at main (script.js.Fenster.Alle.Fensteroffenerkennung:198:5)
20:27:29.302 error javascript.0 (23702) at Object.<anonymous> (script.js.Fenster.Alle.Fensteroffenerkennung:161:13)Im Script selber habe ich nichts verändert, außer in Zeile 22 UseSay zu deaktiveren.
Vor 5 min auf Git gezogen
Daher sehe ich nichts in VIS, und aktualisieren tut er Stati auch nicht
@Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
@AxelF1977 Ein Raum namens undefined läßt auf einen nicht zugeweisen Raum, aber zugeordnetem Verschluss schließen. Um mehr zu sagen mußt mir die Infos geben die ich jedem immer aus der Nase ziehen muß.
Was steht im Skriptlog? Wie sieht die Zuordnung der Funktion und Räume in der Objektliste aus?@Pittini sagte in [Vorlage] Generisches Fensteroffenskript + Vis:
Welche Einstellungen sind im Skript?
Im Script selber habe ich nichts verändert, außer in Zeile 22 UseSay zu deaktiveren. Der Fehler tritt im Log laufend auf, also immer wenn das Script durch läuft.
Der Raum namens undefines kann 2 Gründe haben. Einmal gibt es eine Dachlucke, wo ich den State per Skript erzeuge, aus der Prozentangabe des Schalters, der ein Rolladenschalter ist, de rhat von hause aus keinen state (false/true), sondern level 0-100%
Der Raum Küche heißt einmal Küche, einmal Kitchen. Wegen einem anderen Skript, muss ich das leider so beibehalten. Zumindest bis ich das Script Heizung gegen den Adapter tausche.
Das ist die Lage