Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Fenster und andere Geräte zählen opt. Alexa Ansagen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Fenster und andere Geräte zählen opt. Alexa Ansagen

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active @sigi234 last edited by dslraser

      @sigi234
      In Deiner Aufzählung ist Bewegungsmelder klein geschrieben und in Deinem Blockly groß. Schreibe es im Blockly klein.

      Dein Selektor
      Bildschirmfoto 2020-06-17 um 16.26.10.png

      1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @sigi234 last edited by

        @sigi234 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

        "type": "device",

        und das ist der RAW vom device, nicht vom state MOTION, aber egal...

        sigi234 1 Reply Last reply Reply Quote 0
        • sigi234
          sigi234 Forum Testing Most Active @dslraser last edited by sigi234

          @dslraser sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

          und das ist der RAW vom device, nicht vom state MOTION, aber egal...

          {
            "type": "state",
            "common": {
              "def": false,
              "type": "boolean",
              "read": true,
              "write": false,
              "role": "sensor.motion",
              "name": "Bewegungsmelder Vorraum.MOTION"
            },
            "native": {
              "MIN": false,
              "OPERATIONS": 5,
              "MAX": true,
              "FLAGS": 1,
              "ID": "MOTION",
              "TYPE": "BOOL",
              "DEFAULT": false,
              "CONTROL": "MOTIONDETECTOR_TRANSCEIVER.MOTION_DETECTION_STATE"
            },
            "from": "system.adapter.hm-rega.0",
            "user": "system.user.admin",
            "ts": 1589987461346,
            "_id": "hm-rpc.1.00091A49A082FC.1.MOTION",
            "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
            }
          }
          
          javascript.0	2020-06-17 16:26:57.110	warn	(12088) at processTimers (internal/timers.js:492:7)
          javascript.0	2020-06-17 16:26:57.110	warn	(12088) at listOnTimeout (internal/timers.js:551:17)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at Timeout._onTimeout (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:2039:34)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at Object.<anonymous> (script.js.Ansage.Komplettansage:1210:7)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at Fenster_zaehlen (script.js.Ansage.Komplettansage:1814:61)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at stateText (script.js.Ansage.Komplettansage:924:12)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) getState "hm-rpc.0.OEQ0926852.1.INSTALL_TEST" not found (3) states[id]=null
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at processTimers (internal/timers.js:492:7)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at listOnTimeout (internal/timers.js:551:17)
          javascript.0	2020-06-17 16:26:57.109	warn	(12088) at Timeout._onTimeout (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:2039:34)
          javascript.0	2020-06-17 16:26:57.108	warn	(12088) at Object.<anonymous> (script.js.Ansage.Komplettansage:1210:7)
          javascript.0	2020-06-17 16:26:57.108	warn	(12088) at Fenster_zaehlen (script.js.Ansage.Komplettansage:1814:9)
          javascript.0	2020-06-17 16:26:57.108	warn	(12088) at stateText (script.js.Ansage.Komplettansage:924:12)
          javascript.0	2020-06-17 16:26:57.108	warn	(12088) getState "hm-rpc.0.OEQ0926852.1.INSTALL_TEST" not found (3) states[id]=null
          

          Diese Warn kommt ja nur weil der State leer ist.

          dslraser 2 Replies Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active @sigi234 last edited by

            @sigi234 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

            Diese Warn kommt ja nur weil der State leer ist.

            Wie meinst Du das ? Dieser state hat mit dem Blockly eigentlich nichts zu tun.
            Welche javascript Adapter Version und js-contoller Version setzt Du ein ?

            sigi234 1 Reply Last reply Reply Quote 0
            • sigi234
              sigi234 Forum Testing Most Active @dslraser last edited by

              @dslraser sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

              @sigi234 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

              Diese Warn kommt ja nur weil der State leer ist.

              Wie meinst Du das ? Dieser state hat mit dem Blockly eigentlich nichts zu tun.
              Welche javascript Adapter Version und js-contoller Version setzt Du ein ?

              JS controller 3.1.5
              JS:  4.6.17
              
              dslraser 2 Replies Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active @sigi234 last edited by

                @sigi234
                ich habe mir mal Dein RAW importiert, bei mir wird der BWM gefunden.

                Bildschirmfoto 2020-06-17 um 16.44.40.png

                1 Reply Last reply Reply Quote 0
                • dslraser
                  dslraser Forum Testing Most Active @sigi234 last edited by

                  @sigi234
                  hm....ich kann Deinen Fehler leider nicht nachstellen. Warten wir mal ab, ob noch Jemand kommt, der Bewegungsmelder nutzt (am Besten auch HMIP).

                  1 Reply Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active @sigi234 last edited by

                    @sigi234
                    mir ist an Deinem Bild erst jetzt aufgefallen, das da Batterien als Funktion steht, hast Du Batterien im Blockly auch auf wahr stehen ? (da ist auch nicht nur ein state ausgewählt)

                    Hier Dein Bild
                    1592387337474-screenshot-75.png

                    falke69 sigi234 2 Replies Last reply Reply Quote 0
                    • falke69
                      falke69 @dslraser last edited by

                      @dslraser

                      kannst Du mal bitte prüfen, ob bei Dir die Ansage über den Fensterstatus über Alexa funktioniert?
                      Ich habe aktuell Probleme den Fensterstatus über Alexa abzufragen.
                      Batterie und Licht funktioniert. Im iot und in Alexa habe ich alles rausgelöscht und neu erstllen / suchen lassen - leider ohne Erfolg.
                      Auch nach der Ansage "Alexa Stop" funktioniert bei mir die Abfrage des Fensterstatus leider nicht.

                      Ein manuelles löschen der Datenpunkte, blieb leider auch ohne positives Ergebnis.

                      2020-06-18_185403.jpg 2020-06-18_185501.jpg

                      dslraser 2 Replies Last reply Reply Quote 0
                      • dslraser
                        dslraser Forum Testing Most Active @falke69 last edited by

                        @falke69
                        funktioniert bei mir.
                        Wie viele Fenster hast Du ?
                        Bzw. Wieviel zeichen ist die Ansage lang ?

                        1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @falke69 last edited by

                          @falke69

                          Das habe ich weiter oben geschrieben.

                          EDIT: Bei meiner Fensteransage (22 Fenster) kommt es regelmäßig dazu, das die Ansage nicht gestartet wird, da die 250 Zeichen Grenze überschritten wird. (Im Sommer sind halt mehrere Fenster auf) Da werde ich mir jetzt als nächstes was einfallen lassen.

                          Vielleicht ist das auch bei Dir der Fall ?

                          Auf meiner eigenen Testdatei habe ich schon was eingebaut, da spielt diese 250 Zeichen Grenze keine Rolle mehr, die würde ganze Bücher vorlesen.
                          Das will ich aber erst in Ruhe testen.

                          falke69 1 Reply Last reply Reply Quote 0
                          • falke69
                            falke69 @dslraser last edited by

                            @dslraser ich habe 12 Fenster, das sollte dann eigentlich noch im möglichen sein.
                            Vielleicht ist auch die Bezeichnung der Geräte zu lang, dass ich dann trotzden über die 250 Zeichen komme.
                            Habe jetzt mal bis auf zwei Fenster alle aus den Aufzählungen genommen, so das ich aktuell nur noch zwei Geräte zur Auswahl hatte. Es kam leider auch keine Ansage.

                            Wenn es bei Dir funkioniert, muss ich mal schauen, was noch die Ursache sein könnte. 🙂

                            dslraser 1 Reply Last reply Reply Quote 0
                            • sigi234
                              sigi234 Forum Testing Most Active @dslraser last edited by

                              @dslraser sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                              mir ist an Deinem Bild erst jetzt aufgefallen, das da Batterien als Funktion steht, hast Du Batterien im Blockly auch auf wahr stehen ? (da ist auch nicht nur ein state ausgewählt)

                              Ja, aber ich habe das Skript mal deaktiviert, es bringt mein System an die Grenzen.

                              dslraser 1 Reply Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active @sigi234 last edited by dslraser

                                @sigi234 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                                Ja, aber ich habe das Skript mal deaktiviert, es bringt mein System an die Grenzen.

                                In wie fern ?

                                sigi234 1 Reply Last reply Reply Quote 0
                                • dslraser
                                  dslraser Forum Testing Most Active @falke69 last edited by

                                  @falke69 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                                  Wenn es bei Dir funkioniert, muss ich mal schauen, was noch die Ursache sein könnte.

                                  Lade es nochmal aus dem Beitrag runter.
                                  Ich weiß nicht wann Du es geladen hattest. Das letzte, (ich hatte nochmal kleine Änderung gemacht) was da im Beitrag ist benutze ich auch.

                                  falke69 1 Reply Last reply Reply Quote 0
                                  • sigi234
                                    sigi234 Forum Testing Most Active @dslraser last edited by sigi234

                                    @dslraser sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                                    In wie fern ?

                                    JS reagiert sehr träge. Beim start des Skript dauert es lange bis die Bausteine angezeigt werden. Sind auch über 5000

                                    dslraser 1 Reply Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active @sigi234 last edited by

                                      @sigi234 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                                      JS reagiert sehr träge.

                                      Kann ich bei mir nicht sagen.
                                      Es kann aber sein das Du durch die "falschen Selektoren" bzw. das Du z.B. bei den Batterien das ganze Device oder den ganzen Channel in der Aufzählung hast nicht funktioniert. Dann mußt Du entweder die Aufzählungen anpassen wie beschrieben, oder Deinen Selektor anders einstellen, so das nur auf den benötigten state selektiert wird.

                                      sigi234 1 Reply Last reply Reply Quote 0
                                      • falke69
                                        falke69 @dslraser last edited by

                                        @dslraser jetzt geht es. Dann hatte ich bestimmt die erste Version 😊 👍

                                        1 Reply Last reply Reply Quote 1
                                        • sigi234
                                          sigi234 Forum Testing Most Active @dslraser last edited by

                                          @dslraser sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:
                                          Dann mußt Du entweder die Aufzählungen anpassen wie beschrieben, oder Deinen Selektor anders einstellen, so das nur auf den benötigten state selektiert wird.

                                          Jupp, ich werde alles mal kontrollieren. Es kommen noch einen Menge an Warnmeldungen.

                                          1 Reply Last reply Reply Quote 0
                                          • dslraser
                                            dslraser Forum Testing Most Active last edited by dslraser

                                            Ist sowas für Euch auch von Interesse ?
                                            (könnte man auch Ansagen lassen, per Telegram oder E-Mail versenden und eben als html Ausgabe verwenden, z.B. in iQontrol)

                                            Screenshot_20200624-130823_Chrome.jpg

                                            Wen es interessiert:
                                            Als erstes habe ich mir eine neue Aufzählung, in meinem Fall Temperaturen angelegt.
                                            Bildschirmfoto 2020-06-23 um 17.16.39.png
                                            Man achte auf die Schreibweise ganz rechts(groß oder klein)

                                            Danach habe ich mir mit dem alias erstellen Script von @paul53 für meine Thermostate aliase angelegt es geht immer nur einer auf einmal). (mit den Namen wie die dann auch heißen sollen, da die ja sonst oft irgendwelche Thermostatbezeichnungen haben.) Dieses Script packt die aliase auch gleich in diese Aufzählung (kann man im Script einstellen)

                                            // Original-Datenpunkt
                                            const idOrigin = 'hm-rpc.0.xxx.1.ACTUAL_TEMPERATURE'/*Wandthermostat Gästezimmer:1 ACTUAL TEMPERATURE*/;
                                            
                                            // Alias-Datenpunkt
                                            const idAlias = 'Temperaturen.Gaestezimmer';
                                            var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
                                            // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
                                            nameAlias = 'Gaestezimmer';
                                            //desc = 'per Script erstellt';
                                            // typeAlias = 'boolean'; // oder 'number'
                                            read = "Math.round(val * 10) / 10"
                                            // write = "val ? 'Ein' : 'Aus'";
                                            // role = 'indicator';
                                            // min = 0; // nur Zahlen
                                            // max = 100; // nur Zahlen
                                            // unit = '%'; // nur für Zahlen
                                            // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                                            // custom = []; // verhindert doppelte Ausführung von history, ...
                                            // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
                                            gewerk = 'Temperaturen'; // Groß-/Kleinschreibung in der ID beachten !
                                            
                                            function createAlias(idSrc, idDst) {
                                             if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
                                             else {
                                                var obj = {};
                                                obj.type = 'state';
                                                obj.common = getObject(idSrc).common;
                                                obj.common.alias = {};
                                                obj.common.alias.id = idSrc;
                                                if(typeAlias) obj.common.type = typeAlias;
                                                if(obj.common.read !== false && read) obj.common.alias.read = read;
                                                if(obj.common.write !== false && write) obj.common.alias.write = write;
                                                if(nameAlias) obj.common.name = nameAlias;
                                                if(role) obj.common.role = role;
                                                if(desc) obj.common.desc = desc;
                                                if(min !== undefined) obj.common.min = min;
                                                if(max !== undefined) obj.common.max = max;
                                                if(unit) obj.common.unit = unit;
                                                if(states) obj.common.states = states;
                                                if(custom && obj.common.custom) obj.common.custom = custom;
                                                obj.native = {};
                                                setObject(idDst, obj);
                                                if(raum && getObject('enum.rooms.' + raum)) {
                                                   let obj = getObject('enum.rooms.' + raum)
                                                   obj.common.members.push(idDst);
                                                   setObject('enum.rooms.' + raum, obj);
                                                }
                                                if(gewerk && getObject('enum.functions.' + gewerk)) {
                                                   let obj = getObject('enum.functions.' + gewerk)
                                                   obj.common.members.push(idDst);
                                                   setObject('enum.functions.' + gewerk, obj);
                                                }
                                             } 
                                            }
                                            
                                            createAlias(idOrigin, 'alias.0.' + idAlias);
                                            
                                            

                                            so sehen die aliase bei mir aus
                                            Bildschirmfoto 2020-06-24 um 13.07.11.png

                                            Datenpunkte fürs Blockly
                                            Bildschirmfoto 2020-06-24 um 13.06.14.png

                                            dirk1962 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            749
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly javascript
                                            41
                                            1186
                                            349701
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo