NEWS
Blockly Selektor u. Aufzählungen Geräte zählen
-
@sigi234 sagte:
12:14:09.166 error javascript.0 (9200) at stateText (script.js.Status.Fenster_zaehlen:29:39)
Mind. einer der Datenpunkte hat offenbar keine Zustandstexte (common.states).
Ob "TILTED" geliefert wird, spielt keine Rolle. -
@dslraser sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
@sigi234 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
690: if (stateText(idFenster, wert) == 'TILTED') {
lösche mal im Blockly diesen Teil (also in dem Blockly aus diesem Thread) und versuche es dann nochmal.
Wo finde ich den?
-
@dslraser
Ändere besser die Funktionreturn getObject(id).common.states[val];
in
if(getObject(id).common.states) return getObject(id).common.states[val]; return 'kein Zustandstext !';
-
@sigi234 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
So, in diesen Blockly funktioniert also der Selektor. Dann muss in deinen was nicht stimmen. (Drehkontakt)
Dieses Blockly arbeitet auch anders. Dieses Fenster Blockly "liest" in der Werteliste, so wie oben erklärt. Wenn Du z.B. das Licht Blockly für Deine Fenster nimmst und da mal Deinen Fenster Selektor nimmst, sollte das auch funktionieren.
Ich mach nochmal eins, nur für die einfachen Fenstersensoren. Dies von oben ist ja extra für die "gemischte" Konstellation mit Drehgriffen.
-
@dslraser sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Ich mach nochmal eins, nur für die einfachen Fenstersensoren. Dies von oben ist ja extra für die "gemischte" Konstellation mit Drehgriffen.
Cool
Geht das auch mit Türen?
Ich habe diese Sensoren auch an der Terrassentür und Haustür. Das ist eine eigene Aufzählung (Tür)
Habe versuch das Fenster Blockly mit Notepad++ zu bearbeiten und alle Fenster mit Tür ersetzt. Das geht leider nicht. -
@paul53 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Ändere besser die Funktion
Werden dann nicht vorhandene ignoriert (z.B. TILTED) und das Blockly nimmt dann nur die vorhandenen ?
-
@dslraser sagte:
Werden dann nicht vorhandene ignoriert (z.B. TILTED)
"TILTED" ist einer von 3 Zustandstexten. In der Funktion wird nur geprüft, ob überhaupt Zustandstexte vorhanden sind. Falls ja, wird der zum Wert passende Zustandstext zurück gegeben, andernfalls "kein Zustandstext !". So wird ein Error-Log bei fehlenden Zustandstexten vermieden.
-
@paul53
Danke Dir. Ich habe es im Export im Fenster Blockly im ersten Post geändert. -
@dslraser sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
@paul53
Danke Dir. Ich habe es im Export im Fenster Blockly im ersten Post geändert.Soll man die alten DP löschen? Ok.
Fenster gekippt gibt es bei mir nicht. -
@sigi234 sagte:
Fenster gekippt gibt es bei mir nicht.
Aber offenbar mind. einen Datenpunkt, der keine Zustandstexte hat.
-
@sigi234 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Soll man die alten DP löschen?
Für die Fenster ja. Ich mache gerade ein Fensterblockly das nicht über die Werteliste geht, so wie das für die Steckdosen und Licht. Das einfache hat dann einen Datenpunkt weniger, da es ja kein gekippt gibt. Ich versuche das gleich mal so zu machen, das es mit 0/1 oder mit true/false geht.
Aber das Blockly von oben wird Dir dann jetzt nicht viel helfen, da Du dann wahrscheinlich nur eine LogMeldung bekommst mit "kein Zustandstext !".
Aber es wäre schön, wenn Du das nochmal probierst, dann sehen wir ja ob die Meldung kommt.Du mußt nicht alles neu importieren, nur diese Funktion öffnen
und den vorhandenen Inhalt löschen und das da rein kopieren.
if(getObject(id).common.states) return getObject(id).common.states[val]; return 'kein Zustandstext !';
-
@dslraser sagte:
return 'kein Zustandstext !';
oder mit Rückgabe der ID:
if(getObject(id).common.states) return getObject(id).common.states[val]; return id + ' hat keinen Zustandstext !';
-
@dslraser sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Aber es wäre schön, wenn Du das nochmal probierst, dann sehen wir ja ob die Meldung kommt.
Keine Meldung.
So, getestet, Fenster geöffnet. Falsche Werte im DP. Aber es wird ein Fenster erkannt.
-
@dslraser sagte:
LogMeldung bekommst mit "kein Zustandstext !".
Erzeugt das Blockly ein Log, wenn nicht einer der 3 möglichen Zustandstexte zurück gegeben wird ?
-
@paul53 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Erzeugt das Blockly ein Log
habe ich gerade selbst auch überlegt und nachgesehen. Im Moment nicht. Ich werde das dann einbauen.
-
kannst Du bitte mal probieren ? Du mußt nur die angelegten Fenster DP löschen und neu anlegen lassen, sowie den Selektor an Deinen anpassen und den E-Mail Empfänger Telegram Benutzer anpassen.
-
@dslraser sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
kannst Du bitte mal probieren ? Du mußt nur die angelegten Fenster DP löschen und neu anlegen lassen, sowie den Selektor an Deinen anpassen und den E-Mail Empfänger Telegram Benutzer anpassen.
Ja, geht jetzt, nach einen Neustart von iob.
Wenn ich auch die Türen ansagen will muss ich eine neue Aufzählung machen un da die Fenster und Türen reingeben und den Selektor anpassen. Sehe ich das so Richtig?Nein , geht nicht so.
-
@sigi234 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Wenn ich auch die Türen ansagen will
bei mir sind die Türen in der gleichen Aufzählung wie die Fenster. Kannst ja mal die Türen mit in die Aufzählung machen.
-
@dslraser sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
@sigi234 sagte in Fenster zählen mit Blockly Selektor Aufzählungen:
Wenn ich auch die Türen ansagen will
bei mir sind die Türen in der gleichen Aufzählung wie die Fenster. Kannst ja mal die Türen mit in die Aufzählung machen.
Geht jetzt.
-
@sigi234
okay, dann stelle ich dieses Blockly später oben mit in den ersten Beitrag und schreibe was dazu.
Danke fürs ausprobieren.