Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Erledigt] Skript Lichtzählen [..] angezeigt

    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

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @maloross last edited by paul53

      @maloross sagte:

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

      Richtig:

      var raumname = getObject(id, "rooms").enumNames[0];
      
      maloross 1 Reply Last reply Reply Quote 0
      • maloross
        maloross @paul53 last edited by

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

        C paul53 2 Replies Last reply Reply Quote 0
        • C
          CruziX @maloross last edited by

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

          maloross 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @maloross last edited by

            @maloross sagte:

            hat auch keinen Erfolg..

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

            Testscript.JPG

            T 1 Reply Last reply Reply Quote 0
            • maloross
              maloross @CruziX last edited by maloross

              @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..

              1 Reply Last reply Reply Quote 0
              • T
                Tictactoo @paul53 last edited by

                @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...

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Tictactoo last edited by

                  @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 1 Reply Last reply Reply Quote 0
                  • T
                    Tictactoo @paul53 last edited by

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

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Tictactoo last edited by

                      @Tictactoo sagte:

                      zeigt er mir auch den Inhalt.

                      Wie sieht er aus ?

                      T 1 Reply Last reply Reply Quote 0
                      • T
                        Tictactoo @paul53 last edited by 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...

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Tictactoo last edited by

                          @Tictactoo sagte:

                          bekomme ich nur das:

                          Sehr eigenartig. Was ergibt im Log?

                           var test = getObject(devices[i].replace('.available',''), 'rooms').enumNames[0];
                          
                          T 1 Reply Last reply Reply Quote 0
                          • C
                            CruziX last edited by

                            Schomal iobroker bzw Script Engine neugestartet?

                            1 Reply Last reply Reply Quote 0
                            • T
                              Tictactoo @paul53 last edited by

                              @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 Reply Quote 0
                              • T
                                ticaki Developer last edited by 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.

                                paul53 1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @ticaki last edited by 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 1 Reply Last reply Reply Quote 0
                                  • T
                                    ticaki Developer @paul53 last edited by

                                    @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.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    552
                                    Online

                                    31.8k
                                    Users

                                    80.0k
                                    Topics

                                    1.3m
                                    Posts

                                    javascript
                                    5
                                    23
                                    1027
                                    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