Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Automatisierung
    5. einfaches skript

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    einfaches skript

    This topic has been deleted. Only users with topic management privileges can see it.
    • Great SUN
      Great SUN @freo last edited by Great SUN

      @freo Ganz einfach mit einem JS-Script:

      let originalValue = getState('0_userdata.0.BatteryPercent').val;
      let newValue = originalValue / 100 * 460;
      setState('0_userdata.0.odometerps', newValue, true);
      

      // setState(<Datenpunkt>, <Wert>, <Bestätigt>);

      Homoran paul53 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Great SUN last edited by Homoran

        @great-sun Das geht auch mit einem ganz einfachen Blockly!

        ich denke aber dass es ihm auf Dauer mehr hilft, dieses mit eigenem Hirnschmalz gemeinsam zu "entwickeln", als einfach nur abzutippen.

        Great SUN 1 Reply Last reply Reply Quote 0
        • Great SUN
          Great SUN @Homoran last edited by

          @homoran sagte in einfaches skript:

          @great-sun Das geht auch mit einem ganz einfachen Blockly!

          ich denke aber dass es ihm auf Dauer mehr hilft, dieses mit eigenem Hirnschmalz gemeinsam zu "entwickeln", als einfach nur abzutippen.

          Bin Grundsätzlich Deiner Meinung, aber manchmal steht man wie der Ochse vor dem Berg und wenn man noch nie wirklich etwas mit Programmierlogik zu tun hatte, dann kann so etwas richtig schwer sein, wenn man nicht einmal ein Beispiel gesehen hat.

          Kurzgesagt:
          @Homoran Wenn ich jemandem erst Programm-Logik beibringen muss, damit das Ergebnis erreicht wird, wird das ganze für denjenigen evtl. so problematisch in der Umsetzung, dass er es ganz lässt. Dann lieber einen Dreizeiler 😉

          @freo Für Fragen steh ich gern zur Verfügung, sofern wir das dann zumindest, wenn es irgend einen Sinn ergibt, der Community als Anleitung zur Verfügung stellen.

          Homoran 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Great SUN last edited by

            @great-sun sagte: einfach mit einem JS-Script:

            Das funktioniert nur einmal bei Skriptstart, denn es fehlt ein Trigger.

            Homoran Great SUN 2 Replies Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @Great SUN last edited by

              @great-sun sagte in einfaches skript:

              Bin Grundsätzlich Deiner Meinung, aber manchmal steht man wie der Ochse vor dem Berg und wenn man noch nie wirklich etwas mit Programmierlogik zu tun hatte, dann kann so etwas richtig schwer sein, wenn man nicht einmal ein Beispiel gesehen hat.

              ich bin grenzenloser Optimist 🙂

              @freo fängt gerade erst an, und da bin ich hoffnungsvoll dass man ihn leitend an die Hand nehmen kann um ihm das Verständnis der Funktionsweise und der Logik zu erklären.

              Beim Abtippen/Abschauen von fertigen Blocklys besteht immer die Gefahr, dass mansich wegen des fehlenden Wissens/Verständnissses dabei D7nge interpretiert und dauerhaft ins Hirn einbrennt, die ganz anders gemeint sind.
              Erst beim 30. ähnlichen Skript kommt es dann zu "unvorhergesehenen" Abläufen.

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @paul53 last edited by

                @paul53 sagte in einfaches skript:

                @great-sun sagte: einfach mit einem JS-Script:

                Das funktioniert nur einmal bei Skriptstart, denn es fehlt ein Trigger.

                als Basis um einem Einsteiger die gesamte Funktionsweise von js/blockly zu erklären, wäre das genau richtig.

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

                  @paul53 sagte in einfaches skript:

                  @great-sun sagte: einfach mit einem JS-Script:

                  Das funktioniert nur einmal bei Skriptstart, denn es fehlt ein Trigger.

                  Aye:

                  async function setValueUpdate() {
                      let originalValue = getState('0_userdata.0.BatteryPercent').val;
                      let newValue = originalValue / 100 * 460;
                      setState('0_userdata.0.odometerps', newValue, true);
                  }
                  on({id: '0_userdata.0.BatteryPercent', change: 'ne'}, setValueUpdate);
                  

                  Alle Funktionen, die im Javascript Adapter verfügbar sind, werden https://www.iobroker.net/docu/index-81.htm?page_id=5809&lang=en beschrieben.
                  Die On-Funktion https://www.iobroker.net/docu/index-81.htm?page_id=5809&lang=en#on_8211_Subscribe_on_changes_or_updates_of_some_state

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Leute!
                    Das verwirrt doch jetzt nur!
                    ohne Rückmeldung von @freo , wieweit er jetzt folgen kann, oder gar verstanden hat, ist das zum Lernen kontraproduktiv.

                    Great SUN 1 Reply Last reply Reply Quote 0
                    • Great SUN
                      Great SUN @Homoran last edited by

                      @homoran Da hast auch wieder total recht 🙂

                      @freo Sag uns doch mal, was Du verstanden hast bzw. ob Du das verstanden hast und ob wir Dir noch weiter helfen können mit irgendwelchen Anleitungen oder Dummy-Fragen 🙂

                      F 1 Reply Last reply Reply Quote 1
                      • F
                        freo @Great SUN last edited by

                        @great-sun Hallo zusammen,

                        ich bin beeindrukt von den Antworten zu meinem Thema😊 ,
                        mein Versuch sieht so aus:

                        Screenshot 2023-10-08 at 15-34-30 javascript - buanet-iobroker2.png

                        Mir ist aber dann überhaupt nich klar, wie ich die einfache Rechenformel einfügen muss, bzw. ob ich überhaupt auf dem richtigen Weg bin.

                        Konnte dann nicht wiederstehen, und habe das Script von GreatSun ausprobiert:

                        Screenshot 2023-10-08 at 15-30-16 Ladesteuerung SKODA Citigo e IV und Polestar 2 evcc.png

                        Es funktioniert!!!
                        Ich wäre nicht darauf gekommen, ehrlich👍

                        Natürlich möchte jemand keine fertigen Lösungen anbieten ohne das der Empfänger das auch verstanden hat.
                        Da ich aber noch nie etwas mit programieren zu tun hatte fällt mir das Verständnis dafür schwer.

                        Allen hier sage ich : herzlichen Dank, für eure Hilfe👏 👍

                        DJMarc75 Homoran 3 Replies Last reply Reply Quote 0
                        • DJMarc75
                          DJMarc75 @freo last edited by

                          @freo sagte in einfaches skript:

                          mein Versuch sieht so aus

                          da könnte man helfen wie es damit richtig funktionieren würde.

                          @freo sagte in einfaches skript:

                          Da ich aber noch nie etwas mit programieren zu tun hatte fällt mir das Verständnis dafür schwe

                          learning by doing - und hast Du dieses Skript welches Du jetzt verwendest auch verstanden ?

                          VG

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @freo last edited by Homoran

                            @freo sagte in einfaches skript:

                            ob ich überhaupt auf dem richtigen Weg bin.

                            ja, für den Anfang schon, obwphl ich diesen Baustein noch nie verwendet habe.

                            Vielleicht zäumen wir das Pferd diesmal von hinten auf.

                            @freo sagte in einfaches skript:

                            Mir ist aber dann überhaupt nich klar, wie ich die einfache Rechenformel einfügen muss, bzw. ob ich überhaupt auf dem richtigen Weg bin.

                            Aber so eine Rechenformel hast du doch schon mal gehabt, oder?

                            Mach dir Gedanken,

                            • was du verrechnen willst
                            • wo du diese Daten herbekommst
                            • wo das Ergebnis hin soll

                            Edit:
                            ich denke ich weiss warum du diesen Block mit Wert von genommen hast!

                            Dieser
                            Screenshot_20231008-162457_Firefox.jpg

                            lässt sich nicht andocken.
                            Aus gutem Grund.

                            Doch dazu später 🙂

                            1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @freo last edited by

                              @freo sagte in einfaches skript:

                              Da ich aber noch nie etwas mit programieren zu tun hatte fällt mir das Verständnis dafür schwer.

                              Deswegen wollen wir das ja ändern!
                              Wir hören erst auf, wenn du es verstanden hast, nicht sobald es läuft.

                              dazu noch ein paar Tricks

                              Screenshot_20231008-163212_Firefox.jpg

                              der debug-Baustein
                              befindet sich unter den System-blöcken.
                              Hilft ungemein beim suchen nach Denkfehlern, indem er Zwischenergebnisse im log des Editors ausgibt.

                              externe Eingänge
                              machen die Struktur der Blocklys besser erkennbar und sparen Platz.

                              Die unterste Zeile ist identisch mit der obeten, nur wurde bei der mathematischen Operation mit der rechten Maustaste angeklickt und von "interne Eingänge", was eine lange Kette erzeugt, auf exterbe umgestellt.

                              Blöcke ausserhalb des Triggerbausteins
                              werden nur zu Skriptstart ausgeführt.
                              Will man aber bei der "Entwicklung" nicht auf einen Trigger warten, kann man den interessanten Teil (incl.Debug-Block) aus dem Trigger nehmen.
                              Jetzt erhält man beim speichern sofort die gewünschte Information

                              F 1 Reply Last reply Reply Quote 0
                              • F
                                freo @Homoran last edited by

                                @homoran danke für deinen "Optimismus", mir das Ganze verständlich machen zu wollen!

                                Deine ersten Erklärungen verstehe ich schon nicht😞

                                Daher bitte ich dich, deine wertvolle Zeit mit wichtigeren Dingen zu verbringen.
                                So richtig Lust das Alles zu verstehen, habe ich ehrlicherweise nicht.

                                GreatSUN hat das genau getroffen: Zitat

                                • Kurzgesagt:
                                • @Homoran Wenn ich jemandem erst Programm-Logik beibringen muss, damit das Ergebnis erreicht wird, wird das ganze für denjenigen evtl. so problematisch in der Umsetzung, dass er es ganz lässt. Dann lieber einen Dreizeiler 😉

                                Ich habe höflich gefragt und eine Lösung bekommen, finde ich extrem gut👍

                                Vielen lieben Dank nochmal an Alle, die mir hier bei diesem "kleinen Problem " geholfen haben, das weiß ich wohl zu schätzen

                                Viele Grüße aus dem hohen Norden🌊

                                Homoran DJMarc75 2 Replies Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @freo last edited by

                                  @freo sagte in einfaches skript:

                                  Deine ersten Erklärungen verstehe ich schon nicht

                                  gut!
                                  Deswegen sollte das Ganze auch schrittweise, quasi im Dialog, ablaufen.
                                  Aber das wird schon.

                                  @freo sagte in einfaches skript:

                                  So richtig Lust das Alles zu verstehen, habe ich ehrlicherweise nicht.

                                  alles musst du auch noch nicht verstehen, jetzt schon gar nicht.
                                  Aber die Grundzüge, sonst bist du immer auf "Auftragsprogrammierung" angewiesen.

                                  und das soll und kann es nicht sein.

                                  1 Reply Last reply Reply Quote 0
                                  • DJMarc75
                                    DJMarc75 @freo last edited by

                                    @freo sagte in einfaches skript:

                                    So richtig Lust das Alles zu verstehen, habe ich ehrlicherweise nicht.

                                    Schade

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    1.0k
                                    Online

                                    31.7k
                                    Users

                                    79.7k
                                    Topics

                                    1.3m
                                    Posts

                                    5
                                    24
                                    1171
                                    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