Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Script nur kurz / einmal ausführen?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script nur kurz / einmal ausführen?

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

      @exmerci sagte in Script nur kurz / einmal ausführen?:

      Was habe ich noch falsch gemacht?

      Was steht in Zeile 11 des erzeugten Javascript-Codes (Button blockly/JS rechts oben) ?

      1 Reply Last reply Reply Quote 0
      • E
        exmerci last edited by Homoran

        setState("0_userdata.0.Normal"/*Normal*/, false, true);

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

          @exmerci
          @paul53
          habe es mal in code-Tags gesetzut damit da code nicht als Steuerzeichen missbraucht wird

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

            @exmerci sagte:

            setState("0_userdata.0.Normal"/Normal/, false, true);

            Hast Du den Datenpunkt "0_userdata.0.Normal" versehentlich gelöscht ?

            1 Reply Last reply Reply Quote 0
            • E
              exmerci last edited by

              Nein, dann würde es ja auch nicht funktionieren.

              1 Reply Last reply Reply Quote 0
              • E
                exmerci last edited by

                Muss an Blockly liegen. Wenn ich den Java Code kopiere und in ein richtiges Java script kopiere kommt der Fehler nicht.

                paul53 BBTown 2 Replies Last reply Reply Quote 0
                • paul53
                  paul53 @exmerci last edited by

                  @exmerci sagte:

                  Muss an Blockly liegen.

                  Wohl kaum, denn Zeile 11 ist fehlerfrei. Starte mal die JS-Instanz neu. Kommt dann die Warnung noch immer ?

                  1 Reply Last reply Reply Quote 0
                  • BBTown
                    BBTown @exmerci last edited by BBTown

                    @exmerci
                    zeige bitte noch einmal dein aktuelles Blockly
                    vorhin hast Du versucht einen boolschen Wert (true/false) mit einem String zu steuern

                    1 Reply Last reply Reply Quote 0
                    • E
                      exmerci last edited by

                      d2e33c56-1fc7-4f54-af6e-68abcac254d0-image.png

                      paul53 dslraser 2 Replies Last reply Reply Quote 0
                      • paul53
                        paul53 @exmerci last edited by paul53

                        @exmerci
                        Der Sollwert von 22 °C um 5:00 Uhr ist umsonst, da die Werte gleich wieder überschrieben werden. Oder sind es unterschiedliche Datenpunkte mit gleichem Namen? Dann solltest Du die Namen ändern.

                        1 Reply Last reply Reply Quote 0
                        • E
                          exmerci last edited by exmerci

                          Blockly zeigt ja nicht alles an. Vielleicht erklärt es sich so besser:

                          c5504bec-e7d2-4767-a3d7-a6d39b4b6b4a-image.png

                          Die Datenpunkte sind ja durch heatingcontrol vorgegeben. Die mache ich ja nicht selbst.

                          paul53 BBTown 2 Replies Last reply Reply Quote 0
                          • paul53
                            paul53 @exmerci last edited by paul53

                            @exmerci sagte:

                            Vielleicht erklärt es sich so besser:

                            Ja. Wenn ioBroker.heatingcontrol immer die gleichen Namen vergibt, solltest Du ein Issue auf Github erstellen.
                            Die Werte werden mit "aktualisiere" an heatingcontrol übergeben. Funktioniert das ?

                            1 Reply Last reply Reply Quote 0
                            • E
                              exmerci last edited by

                              Also für mich spricht erstmal nichts dagegen, da es ja eindeutig wird durch die verschiedenen Tage, die verschiedenen Profile und die verschiedenen Perioden.
                              Im Java kann man es ja auch gut auseinander halten. Nur in Blockly ist es schwierig, da Blockly nur einen Teil des Datenpunkt Namens darstellt.

                              1 Reply Last reply Reply Quote 0
                              • BBTown
                                BBTown @exmerci last edited by

                                @exmerci
                                ich habe eine Verständnisfrage, da ich den Adapter "heatingcontrol" selbst nicht im Einsatz habe/kenne ...

                                Wird denn überhaupt ein Script (blockly) benötigt?
                                Ist denn nicht Sinn und Zweck des Adapters diese Steuerung vorzunehmen und damit das Scripten überflüssig zu machen, also das Scripten selbst zu übernehmen?

                                1 Reply Last reply Reply Quote 1
                                • E
                                  exmerci last edited by

                                  Vielleicht habe ich den Adapter nicht kapiert, aber ich sehe keine Möglichkeit dort verschiedene Profile zu konfigurieren.
                                  Es gibt wohl Vorlagen für VIS, aber die sind mir alle zu mächitg und zu schwer zu verstehen.

                                  1 Reply Last reply Reply Quote 0
                                  • dslraser
                                    dslraser Forum Testing Most Active @exmerci last edited by dslraser

                                    @exmerci

                                    und da fliegt noch eine 0 rum...

                                    Screenshot_20200529-202359_Chrome.jpg

                                    1 Reply Last reply Reply Quote 0
                                    • E
                                      exmerci last edited by

                                      Die ist schon weg. hat aber mit dem Fehler nichts zu tun. Ich bekomme ihn einfach nicht weg.

                                      dslraser 1 Reply Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active @exmerci last edited by dslraser

                                        @exmerci sagte in Script nur kurz / einmal ausführen?:

                                        Die ist schon weg. hat aber mit dem Fehler nichts zu tun. Ich bekomme ihn einfach nicht weg.

                                        Zeig mal bitte einen RAW von so einem Datenpunkt den der Adapter angelegt hat.
                                        (ich habe den Adapter auch nicht im Einsatz, aber ich vermute das Gleiche wie @BBTown , Vielleicht wird das alles im Adapter selbst konfiguriert und ist sonst gar nicht beschreibbar ?)

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          exmerci last edited by exmerci

                                          {
                                            "from": "system.adapter.heatingcontrol.0",
                                            "user": "system.user.admin",
                                            "ts": 1590786447051,
                                            "common": {
                                              "name": "target temperature",
                                              "type": "number",
                                              "role": "value.temperature",
                                              "unit": "°C",
                                              "read": true,
                                              "write": true
                                            },
                                            "native": {
                                              "id": "Profiles.1.Büro.Fri.Periods.0.Temperature"
                                            },
                                            "acl": {
                                              "object": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator",
                                              "state": 1636
                                            },
                                            "_id": "heatingcontrol.0.Profiles.1.Büro.Fri.Periods.0.Temperature",
                                            "type": "state"
                                          }
                                          

                                          Also nur mal zur Erklärung. Die Datenpunkte kann man entweder befüllen in dem man sich ein aufwendiges VIS bastelt, oder aber man kann sie auch von Hand eingeben. Normalerweise reicht das, wenn man das einmal für verschiedene Profile macht. Danach werden die Heizzeiten dann über die verschiedenen Profile gesteuert, deren Datenpunkte man auch wieder entweder manuell bestückt oder eben wieder durch einen Button oder ähnliches im VIS.
                                          Da aber bei mehreren Profilen mal eben bis zu 160 Datenpunkte ausgefüllt werden müssen, möchte ich das durch ein Script machen, was beim ersten mal fast genau so aufwendig (allerdings kann man viel mit einem search & repleace in einem Editor machen), aber falls der Adapter mal abstürzt oder ich alles mal neu aufsetzen muss, brauche ich dann nur das Script zu starten und die Arbeit ist in ein paar Sekunden erledigt.

                                          Ich muss das Script aber nicht unbedingt über einen Button starten, das war nur so eine Idee. Ich kann es auch einfach ohne das drumherum schreiben und bei Bedarf einmal ausführen. Dabei werden auch keine Fehler angezeigt. Der Fehler kommt also nicht vom ausfüllen der Datenpunkte selbst.

                                          Blockly war jetzt nur der Anfang, weil ich vom JS keine Ahnung habe und erstmal sehen musste, wie die JS Zeilen aussehen müssen. Den (großen) Rest habe ich dann direkt in JS gemacht. Das hätte mit Blockly auf einer Raspberry ewig gedauert.

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          686
                                          Online

                                          32.0k
                                          Users

                                          80.4k
                                          Topics

                                          1.3m
                                          Posts

                                          blockly
                                          7
                                          38
                                          3028
                                          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