Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Erledigt] Skript Lichtzählen [..] angezeigt

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[Erledigt] Skript Lichtzählen [..] angezeigt

Scheduled Pinned Locked Moved JavaScript
javascript
23 Posts 5 Posters 1.9k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • malorossM maloross

    @CruziX sagte

    @maloross Ja, bin da auch noch Anfänger, daher ist es schwierig wenn man nicht selbst rumprobieren kann :)
    Kannst du mal mit einem log prüfen ob aus raumArray[0] das korrekte ausgelesen wird?

    Nein kommt ein Fehler.

    von meiner Logik her ist es doch so, dass Gerätename und Raumname innerhalb der Schleife in gleicher Weise abgerufen werden sollten

    var devicename = name.replace(".state", "");
    var raumname = getObject(id, "rooms"); 
    
    if (status) {
                ++anzahlLichterAn;
                textLichterAn.push(devicename);
                textRaum.push(raumname);
            }
            ++anzahlLichter;
        });
    

    Wobei die Variable devicename die bereinigte ID des Gerätes enthält.
    Das Array hat für diese beiden Variablen folgenden Befehle:

    textLichterAn.sort();
    textRaum.sort();
    
    setState(pfad0 + 'Text', textLichterAn.join('<br>'));
    setState(pfad0 + 'Raum', textRaum.join(', '));
    
    

    Aber der Raum wird nicht angezeigt., im Log steht: raum: [object Object]

    paul53P Offline
    paul53P Offline
    paul53
    wrote on last edited by paul53
    #8

    @maloross sagte:

    var raumname = getObject(id, "rooms");

    Richtig:

    var raumname = getObject(id, "rooms").enumNames[0];
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    malorossM 1 Reply Last reply
    0
    • paul53P paul53

      @maloross sagte:

      var raumname = getObject(id, "rooms");

      Richtig:

      var raumname = getObject(id, "rooms").enumNames[0];
      
      malorossM Offline
      malorossM Offline
      maloross
      wrote on last edited by
      #9

      @paul53 hat auch keinen Erfolg....es gab Ende 2017 auf Github diesbezüglich ein Fehlermeldung, allerdings ohne konkreten Lösungsansatz.

      Auch Frauen können sich für Technik begeistern! ;)

      Equipment:
      diverse HM-, HMIP-, Aeotec- Tradfri- Sonos- und Fibaro-Geräte, Master-/Slavesystem auf 2 Raspi4, NAS

      C paul53P 2 Replies Last reply
      0
      • malorossM maloross

        @paul53 hat auch keinen Erfolg....es gab Ende 2017 auf Github diesbezüglich ein Fehlermeldung, allerdings ohne konkreten Lösungsansatz.

        C Offline
        C Offline
        CruziX
        wrote on last edited by
        #10

        @maloross Ist ja auch so ziemlich das gleiche wie mein Code Schnipsel

        malorossM 1 Reply Last reply
        0
        • malorossM maloross

          @paul53 hat auch keinen Erfolg....es gab Ende 2017 auf Github diesbezüglich ein Fehlermeldung, allerdings ohne konkreten Lösungsansatz.

          paul53P Offline
          paul53P Offline
          paul53
          wrote on last edited by
          #11

          @maloross sagte:

          hat auch keinen Erfolg..

          Wie hast Du die Räume zugeordnet ? Welche Javascript-Version ?

          Testscript.JPG

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          T 1 Reply Last reply
          0
          • C CruziX

            @maloross Ist ja auch so ziemlich das gleiche wie mein Code Schnipsel

            malorossM Offline
            malorossM Offline
            maloross
            wrote on last edited by maloross
            #12

            @CruziX ja, aber manchmal sind es Kleingkeiten, die Fehler verursachen...
            ich habe die Räume erst mal rausgenommen.

            @paul53 angelegt über Aufzählung, Zuordnung Objekte-Auswahl
            Danke für eure Unterstützung..

            Auch Frauen können sich für Technik begeistern! ;)

            Equipment:
            diverse HM-, HMIP-, Aeotec- Tradfri- Sonos- und Fibaro-Geräte, Master-/Slavesystem auf 2 Raspi4, NAS

            1 Reply Last reply
            0
            • paul53P paul53

              @maloross sagte:

              hat auch keinen Erfolg..

              Wie hast Du die Räume zugeordnet ? Welche Javascript-Version ?

              Testscript.JPG

              T Offline
              T Offline
              Tictactoo
              wrote on last edited by
              #13

              @paul53
              Ich hab die 4.3.4 am Laufen und bekomme es so auch nicht raus leider. Logge ich den Array enumNames, zeigt er mit zwar das JSON-Object darin an, wenn ich aber versuche mit .de auf den deutschen Namen zuzugreifen, sagt er das die Proberty nicht vorhanden wäre. Seltsam...

              paul53P 1 Reply Last reply
              0
              • T Tictactoo

                @paul53
                Ich hab die 4.3.4 am Laufen und bekomme es so auch nicht raus leider. Logge ich den Array enumNames, zeigt er mit zwar das JSON-Object darin an, wenn ich aber versuche mit .de auf den deutschen Namen zuzugreifen, sagt er das die Proberty nicht vorhanden wäre. Seltsam...

                paul53P Offline
                paul53P Offline
                paul53
                wrote on last edited by
                #14

                @Tictactoo sagte:

                zeigt er mit zwar das JSON-Object darin an, wenn ich aber versuche mit .de auf den deutschen Namen zuzugreifen, sagt er das die Proberty nicht vorhanden wäre.

                Du hast getObject so verwendet ?

                getObject(id, "rooms").enumNames[0].de;
                

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                T 1 Reply Last reply
                0
                • paul53P paul53

                  @Tictactoo sagte:

                  zeigt er mit zwar das JSON-Object darin an, wenn ich aber versuche mit .de auf den deutschen Namen zuzugreifen, sagt er das die Proberty nicht vorhanden wäre.

                  Du hast getObject so verwendet ?

                  getObject(id, "rooms").enumNames[0].de;
                  
                  T Offline
                  T Offline
                  Tictactoo
                  wrote on last edited by
                  #15

                  @paul53 Ja, hab ich. Wie gesagt, wenn ich "getObject(id, "rooms").enumNames[0]" logge, zeigt er mir auch den Inhalt.

                  paul53P 1 Reply Last reply
                  0
                  • T Tictactoo

                    @paul53 Ja, hab ich. Wie gesagt, wenn ich "getObject(id, "rooms").enumNames[0]" logge, zeigt er mir auch den Inhalt.

                    paul53P Offline
                    paul53P Offline
                    paul53
                    wrote on last edited by
                    #16

                    @Tictactoo sagte:

                    zeigt er mir auch den Inhalt.

                    Wie sieht er aus ?

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    T 1 Reply Last reply
                    0
                    • paul53P paul53

                      @Tictactoo sagte:

                      zeigt er mir auch den Inhalt.

                      Wie sieht er aus ?

                      T Offline
                      T Offline
                      Tictactoo
                      wrote on last edited by Tictactoo
                      #17

                      @paul53

                      javascript.0 (17215) script.js.Rhasspy.Slots: [{'en':'bath_room','de':'Bad'}]
                      
                      

                      Nehm ich die Variable und setzen "[0].de" dahinter bekomme ich nur das:

                      javascript.0	2020-01-30 15:44:21.547	error	(17215) at Script.runInContext (vm.js:133:20)
                      javascript.0	2020-01-30 15:44:21.546	error	(17215) at script.js.Rhasspy.Slots:9:84
                      javascript.0	2020-01-30 15:44:21.546	error	(17215) TypeError: Cannot read property 'de' of undefined
                      javascript.0	2020-01-30 15:44:21.546	error	(17215) ^
                      javascript.0	2020-01-30 15:44:21.545	error	(17215) var test = getObject(devices[i].replace('.available',''), 'rooms').enumNames[0].de;
                      javascript.0	2020-01-30 15:44:21.545	error	(17215) script.js.Rhasspy.Slots: script.js.Rhasspy.Slots:9
                      

                      Hatte es auch schon mit array['de'] versucht, aber das schluckt er auch net...

                      paul53P 1 Reply Last reply
                      0
                      • T Tictactoo

                        @paul53

                        javascript.0 (17215) script.js.Rhasspy.Slots: [{'en':'bath_room','de':'Bad'}]
                        
                        

                        Nehm ich die Variable und setzen "[0].de" dahinter bekomme ich nur das:

                        javascript.0	2020-01-30 15:44:21.547	error	(17215) at Script.runInContext (vm.js:133:20)
                        javascript.0	2020-01-30 15:44:21.546	error	(17215) at script.js.Rhasspy.Slots:9:84
                        javascript.0	2020-01-30 15:44:21.546	error	(17215) TypeError: Cannot read property 'de' of undefined
                        javascript.0	2020-01-30 15:44:21.546	error	(17215) ^
                        javascript.0	2020-01-30 15:44:21.545	error	(17215) var test = getObject(devices[i].replace('.available',''), 'rooms').enumNames[0].de;
                        javascript.0	2020-01-30 15:44:21.545	error	(17215) script.js.Rhasspy.Slots: script.js.Rhasspy.Slots:9
                        

                        Hatte es auch schon mit array['de'] versucht, aber das schluckt er auch net...

                        paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by
                        #18

                        @Tictactoo sagte:

                        bekomme ich nur das:

                        Sehr eigenartig. Was ergibt im Log?

                         var test = getObject(devices[i].replace('.available',''), 'rooms').enumNames[0];
                        

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        T 1 Reply Last reply
                        0
                        • C Offline
                          C Offline
                          CruziX
                          wrote on last edited by
                          #19

                          Schomal iobroker bzw Script Engine neugestartet?

                          1 Reply Last reply
                          0
                          • paul53P paul53

                            @Tictactoo sagte:

                            bekomme ich nur das:

                            Sehr eigenartig. Was ergibt im Log?

                             var test = getObject(devices[i].replace('.available',''), 'rooms').enumNames[0];
                            
                            T Offline
                            T Offline
                            Tictactoo
                            wrote on last edited by
                            #20

                            @paul53 Hatte es vorher oben reingeschrieben, vielleicht hatte sich das mit deiner Antwort überschnitten:

                            javascript.0	2020-01-30 15:44:21.547	error	(17215) at Script.runInContext (vm.js:133:20)
                            javascript.0	2020-01-30 15:44:21.546	error	(17215) at script.js.Rhasspy.Slots:9:84
                            javascript.0	2020-01-30 15:44:21.546	error	(17215) TypeError: Cannot read property 'de' of undefined
                            javascript.0	2020-01-30 15:44:21.546	error	(17215) ^
                            javascript.0	2020-01-30 15:44:21.545	error	(17215) var test = getObject(devices[i].replace('.available',''), 'rooms').enumNames[0].de;
                            javascript.0	2020-01-30 15:44:21.545	error	(17215) script.js.Rhasspy.Slots: script.js.Rhasspy.Slots:9
                            
                            1 Reply Last reply
                            0
                            • T Do not disturb
                              T Do not disturb
                              ticaki
                              wrote on last edited by ticaki
                              #21

                              Gibt es schon eine Lösung für diesen Fehler?

                                // auch mit  getObject(ab, 'rooms').enumNames[0].de durchprobiert
                                var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0].de;// Fehler
                              
                                var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0];
                                log(test.de); // Fehler
                              
                                var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0];
                                test = JSON.stringify(test);
                                test = JSON.parse(test); // Fehler 
                              

                              Was ich mir nicht erklären kann ist folgendes:

                                 var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0];
                                 if (test === undefined) log('yep');
                                 let t = JSON.stringify(test);
                                 //let x = JSON.parse(t);
                              

                              test ist nicht undefiniert und das Script läuft durch.
                              Aktiviere ich die 4 Zeile, ist test in Zeile 2 undefiniert.

                              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                              Spenden

                              paul53P 1 Reply Last reply
                              0
                              • T ticaki

                                Gibt es schon eine Lösung für diesen Fehler?

                                  // auch mit  getObject(ab, 'rooms').enumNames[0].de durchprobiert
                                  var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0].de;// Fehler
                                
                                  var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0];
                                  log(test.de); // Fehler
                                
                                  var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0];
                                  test = JSON.stringify(test);
                                  test = JSON.parse(test); // Fehler 
                                

                                Was ich mir nicht erklären kann ist folgendes:

                                   var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0];
                                   if (test === undefined) log('yep');
                                   let t = JSON.stringify(test);
                                   //let x = JSON.parse(t);
                                

                                test ist nicht undefiniert und das Script läuft durch.
                                Aktiviere ich die 4 Zeile, ist test in Zeile 2 undefiniert.

                                paul53P Offline
                                paul53P Offline
                                paul53
                                wrote on last edited by paul53
                                #22

                                @ticaki sagte:

                                test = JSON.parse(test); // Fehler

                                Es ist kein JSON.

                                @ticaki sagte in [Erledigt] Skript Lichtzählen [..] angezeigt:

                                var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0].de;// Fehler

                                Wenn die Räume schon in einer früheren Version angelegt wurden, gibt es das Sprach-Objekt nicht. Bei selbst angelegten Räumen fehlt es wohl ebenso.

                                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                T 1 Reply Last reply
                                0
                                • paul53P paul53

                                  @ticaki sagte:

                                  test = JSON.parse(test); // Fehler

                                  Es ist kein JSON.

                                  @ticaki sagte in [Erledigt] Skript Lichtzählen [..] angezeigt:

                                  var test = getObject(ab.replace('.available',''), 'rooms').enumNames[0].de;// Fehler

                                  Wenn die Räume schon in einer früheren Version angelegt wurden, gibt es das Sprach-Objekt nicht. Bei selbst angelegten Räumen fehlt es wohl ebenso.

                                  T Do not disturb
                                  T Do not disturb
                                  ticaki
                                  wrote on last edited by
                                  #23

                                  @paul53
                                  Danke für deine Antwort

                                  Ich war gestern abend zu müde, mein Fehler war, dass das erste Element in der Auflistung kein enumNames hatte.

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  1 Reply Last reply
                                  0
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes


                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  709

                                  Online

                                  32.6k

                                  Users

                                  82.3k

                                  Topics

                                  1.3m

                                  Posts
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                  ioBroker Community 2014-2025
                                  logo
                                  • Login

                                  • Don't have an account? Register

                                  • Login or register to search.
                                  • First post
                                    Last post
                                  0
                                  • Home
                                  • Recent
                                  • Tags
                                  • Unread 0
                                  • Categories
                                  • Unreplied
                                  • Popular
                                  • GitHub
                                  • Docu
                                  • Hilfe