Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Laderegelung für Tablet

    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

    [gelöst] Laderegelung für Tablet

    This topic has been deleted. Only users with topic management privileges can see it.
    • Jey Cee
      Jey Cee Developer last edited by

      Hallo Tom,

      versuch es mal so:

      on({id: "javascript.0.tablet.akku_stand"/*tablet.akku_stand*/
      }, function(obj) {
      	if ("javascript.0.tablet.akku_stand"/*tablet.akku_stand*.val <= "30"){
      			setState (("hm-rpc.0.KEQ0022951.2.STATE" ,true)});
      
      
      1 Reply Last reply Reply Quote 0
      • T
        Tom last edited by

        @Jey Cee:

        Hallo Tom,

        versuch es mal so:

        on({id: "javascript.0.tablet.akku_stand"/*tablet.akku_stand*/
        }, function(obj) {
        	if ("javascript.0.tablet.akku_stand"/*tablet.akku_stand*.val <= "30"){
        			setState (("hm-rpc.0.KEQ0022951.2.STATE" ,true)});
        
        ```` `  
        

        Danke, aber jetzt zeigt der Editor Fehler an.
        977_sreenshot.png
        9054_ical-1.jpg
        9054_ical-2.jpg

        1 Reply Last reply Reply Quote 0
        • Jey Cee
          Jey Cee Developer last edited by

          Sorry der Code war unvollständig.

          on({id: "javascript.0.tablet.akku_stand"/*tablet.akku_stand*/
          }, function(obj) {
             if (getState("javascript.0.tablet.akku_stand"/*tablet.akku_stand*/.val <= "30")){
                   setState("hm-rpc.0.KEQ0022951.2.STATE" ,true);}
          });
          
          1 Reply Last reply Reply Quote 0
          • T
            Tom last edited by

            @Jey Cee:

            Sorry der Code war unvollständig.

            on({id: "javascript.0.tablet.akku_stand"/*tablet.akku_stand*/
            }, function(obj) {
               if (getState("javascript.0.tablet.akku_stand"/*tablet.akku_stand*/.val <= "30")){
                     setState("hm-rpc.0.KEQ0022951.2.STATE" ,true);}
            });
            ```` `  
            

            Die Syntax war o.k. - das Programm funzt aber leider noch nicht.

            1 Reply Last reply Reply Quote 0
            • Jey Cee
              Jey Cee Developer last edited by

              Nimm mal bei 30 die Anführungszeichen weg.
              305_widget-import-dokumentation.pdf

              1 Reply Last reply Reply Quote 0
              • T
                Tom last edited by

                @Jey Cee:

                Nimm mal bei 30 die Anführungszeichen weg. `

                Hab ich schon probiert, das ist es auch nicht.

                1 Reply Last reply Reply Quote 0
                • blauholsten
                  blauholsten Developer last edited by

                  @Tom:

                  @Jey Cee:

                  Nimm mal bei 30 die Anführungszeichen weg. `

                  Hab ich schon probiert, das ist es auch nicht. `

                  vielleicht hilft das…

                  on("javascript.0.tablet.akku_stand", function() {
                  
                  	var int = parseInt(getState("javascript.0.tablet.akku_stand").val, 10);
                  
                     if (int <= 30)){
                           setState("hm-rpc.0.KEQ0022951.2.STATE" ,true);}
                  });
                  

                  bin aber totaler Anfänger und weis nicht ob es klappt :?

                  1 Reply Last reply Reply Quote 0
                  • htrecksler
                    htrecksler Forum Testing last edited by

                    ich würde…

                    on({id: "javascript.0.tablet.akku_stand"
                    }, function(obj) {
                       if (parseInt(getState("javascript.0.tablet.akku_stand".val) <= 30)){
                             setState("hm-rpc.0.KEQ0022951.2.STATE" ,true);}
                    });
                    
                    

                    sitze aber gerade mit dem Tablet auf dem Sofa, daher…ohne Gewähr

                    1 Reply Last reply Reply Quote 0
                    • Thisoft
                      Thisoft last edited by

                      Probiers mal so:

                      on("javascript.0.tablet.akku_stand", function(obj){
                      
                         var int = parseInt(obj.val);
                      
                         if (int <= 30)){
                               setState("hm-rpc.0.KEQ0022951.2.STATE" ,true,true);}
                      });
                      
                      1 Reply Last reply Reply Quote 0
                      • T
                        Tom last edited by

                        @blauholsten:

                        @Tom:

                        @Jey Cee:

                        Nimm mal bei 30 die Anführungszeichen weg. `

                        Hab ich schon probiert, das ist es auch nicht. `

                        vielleicht hilft das…

                        on("javascript.0.tablet.akku_stand", function() {
                        
                        	var int = parseInt(getState("javascript.0.tablet.akku_stand").val, 10);
                        	
                           if (int <= 30)){
                                 setState("hm-rpc.0.KEQ0022951.2.STATE" ,true);}
                        });
                        

                        bin aber totaler Anfänger und weis nicht ob es klappt :? `

                        Danke blauholsten, so funktioniert es 😄

                        Auch ein Danke schön an alle andernen :lol:

                        1 Reply Last reply Reply Quote 0
                        • blauholsten
                          blauholsten Developer last edited by

                          Das freut mich…
                          305_heizungsscript_faq.pdf

                          1 Reply Last reply Reply Quote 0
                          • MathiasJ
                            MathiasJ last edited by

                            Hallo zusammen,

                            ich habe ein ähnliches Problem:

                            ich habe eingegeben:

                            on("javascript.0.tablet.battery.level", function() {
                            
                               var int = parseInt(getState("javascript.0.tablet.battery.level").val, 10);
                            
                               if (int <= 20)){
                                     setState("hm-rpc.2.00000000000000.3.STATE" ,true);}
                            });
                            

                            Und bekomme zurück:

                            07:36:25.354	[info]	javascript.0 Stop script script.js.Tablet.Tablet_on
                            07:36:33.960	[info]	javascript.0 Start javascript script.js.Tablet.Tablet_on
                            07:36:33.960	[error]	javascript.0 script.js.Tablet.Tablet_on compile failed: SyntaxError: Unexpected token )
                            

                            Ich habe alle Lösungen durchprobiert, bekomme aber immer die selbe Rückmeldung.

                            Gruß,

                            Mathias

                            1 Reply Last reply Reply Quote 0
                            • M
                              MistyReblaus last edited by

                              if (int <= 20)){
                              
                              

                              Hier sind glaube ich zwei schließende (runde) Klammern. Sollte eigentlich nur eine sein.

                              Grüße, Jens

                              1 Reply Last reply Reply Quote 0
                              • M
                                MistyReblaus last edited by

                                Steht auch im Fehler drin

                                Unexpected token ")"
                                

                                An die Schreibweise des Parser muss man sich erste gewöhnen 🙂

                                1 Reply Last reply Reply Quote 0
                                • MathiasJ
                                  MathiasJ last edited by

                                  Danke schön. Jetzt habe ich einen weiteren Fehler gefunden.

                                  Der Akku Level bleibt bei 98 Prozent stehen, auch wenn das Tablet aus ist.

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    jensus11 last edited by

                                    var int = parseInt(getState("javascript.0.tablet.akku_stand").val, 10);
                                    

                                    wie ist das "val; 10" zu verstehen?

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      MistyReblaus last edited by

                                      Das mit den 98% hat sich dann erledigt, den Akku sollte man immer zwischen 20-80% pendeln lassen, dann hält dieser am längsten. Sowohl das Aussaugen des Akkus als auch das langsame Quälen auf der letzten Strecke zur 100 macht den Akkus großen Stress.

                                      Grüße, Jens.

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        MistyReblaus last edited by

                                        Wenn Du parseInt(string, Radix) verwendest, ist 10 sowie schon default, kann man also weglassen.

                                        Wenn Du immer ein dezimalen Wert erwartest, kannst Du parseint auch weglassen. parseint macht ja nur Sinn, wenn Du einen bestimmten Wert aus einem Zahlensystem in einen anderen lesen / parsen willst. Der Wert wird dann sowieso in eine var geschrieben.

                                        Somit bleibt:

                                        var int = getState("javascript.0.tablet.akku_stand").val;
                                        
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • blauholsten
                                          blauholsten Developer last edited by

                                          @MistyReblaus:

                                          Wenn Du parseInt(string, Radix) verwendest, ist 10 sowie schon default, kann man also weglassen.

                                          Wenn Du immer ein dezimalen Wert erwartest, kannst Du parseint auch weglassen. parseint macht ja nur Sinn, wenn Du einen bestimmten Wert aus einem Zahlensystem in einen anderen lesen / parsen willst. Der Wert wird dann sowieso in eine var geschrieben.

                                          Somit bleibt:

                                          var int = getState("javascript.0.tablet.akku_stand").val;
                                          
                                          ```` `  
                                          

                                          Wird in manchen Fällen nicht gehen, da ein String geliefert wird. Somit macht es eigentlich Sinn das parseInt stehen zu lassen.

                                          1 Reply Last reply Reply Quote 0
                                          • J
                                            jensus11 last edited by

                                            Wie stell ich denn in dem Script ein, das der Akku bei 10% geladen wird und bei 95% abgeschaltet?

                                            on("javascript.0.tablet.akku_stand", function() {
                                            
                                               var int = parseInt(getState("javascript.0.tablet.akku_stand").val, 10);
                                            
                                               if (int <= 20){
                                                     setState("hm-rpc.0.KEQ0022951.2.STATE" ,true);}
                                            });
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            913
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            27
                                            4216
                                            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