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.
    • Homoran
      Homoran Global Moderator Administrators @freo last edited by

      @freo sagte in einfaches skript:

      das Alter spielt eine Rolle,

      aber nicht nur für dich!

      noch ein Denkanstoss
      javascript arbeitet eventbasiert. Also überleg dir was wann warum gemacht werden soll.
      wir bauen das schon gemeinsam hin. Du willst es doch auch verstehen!
      ich bin nur am Handy! muss also etwas von dir sehen um das zu kommentieren.

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

        @homoran ok, du meinst ich soll's nochmal mit dem blockly probieren...

        Werde heute nicht mehr dazu kommen, morgen werde ich noch mal starten und meine Versuche dann mitteilen.

        Vielen Dank erstmal für deine Hilfe

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

          @freo passt!
          ich geh jetzt auch in deep standby

          1 Reply Last reply Reply Quote 0
          • 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

                                          742
                                          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