Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Migration Scriptgui ccu.io -> iobroker.javascript

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Migration Scriptgui ccu.io -> iobroker.javascript

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

      @Heinzelmaennchen:

      1. (Wie) kann man am intelligentesten manuell über iobroker.admin eine Variable anlegen? `
        Geht momentan nicht. Und ob es sein soll, da bin ich noch nicht schlüssig.
        @Heinzelmaennchen:
      1. Wie geht so etwas aus einem Script heraus? Und wie lange ist eine solche Variable dann gültig. Nur für die Laufzeit des Scriptes oder persistent immer? `
        Da hat schon bku wunderbar geantwortet:
      createState('MyNewState');// Immer und überall (unter javascript.0.MyNewState) da.
      
      

      @Heinzelmaennchen:

      1. (Wie) kann man ein bestehendes ccui.io prg oder script am besten importieren? `
        Momentan kenne ich nur den Manuelweg. Die Befehle sind meinstens auch in ioBroker da. Und wenn was nicht geht => anpassen.
      1 Reply Last reply Reply Quote 0
      • H
        Heinzelmaennchen last edited by

        Hallo Bernd,

        na das ging mal schnell 🙂

        Danke dafür

        Und sieht darüber hinaus auch noch sehr danach aus, als könnte ich das script mit ein paar kleinen Änderungen auch fast so übernehmen.

        Wenn ich das richtig interpretiere bildest Du den Durchschnittswert aus den letzten 3 Werten, richtig? Wie lange ist den die Zeitdifferenz dazwischen? Es geht mir dabei darum, ein Gefühl zu entwickeln, wie ich das bei mir angehe, da ich je nach Messpunkt zwischen zwei Messungen ca 500ms habe. Und von den Messpunkten habe ich fast 35 Stück übers Haus verteilt!

        Gruß

        Bernhard

        1 Reply Last reply Reply Quote 0
        • B
          bku last edited by

          Bernhard,

          ja du hast das richtig erkannt - aber ich mittele mir nur 3 Stromverbrauchsmessungen um Spitzen auszugleichen. Ist auch noch mehr test. Meine Messwerte kommen so alle 3 Minuten. Läuft z.Z. ohne Prob.

          Ob dein Volumen so funktioniert kann ich nicht sagen - vom Gefühl bin ich eher skeptisch. Ausprobieren!

          Gruß Bernd

          1 Reply Last reply Reply Quote 0
          • S
            smiling_Jack last edited by

            @Heinzelmaennchen:

            Hallo Bluefox,

            1. (Wie) kann man ein bestehendes ccui.io prg oder script am besten importieren?

            Herzliche Grüße

            Bernhard `

            Am besten mit ScriptGUI für ioBroker. Aber das dauert leider noch etwas :oops:

            1 Reply Last reply Reply Quote 0
            • P
              pix last edited by

              Hallo,

              hab jetzt doch schon mal angefangen, in iobroker zu scripten, damit ich beim Usertreffen nicht ganz unbeleckt dastehe. Die Portierung aller Skripte aus CCU.IO ist ein Riesenbatzen für mich (z.Zt. 78 Skripte, teils mehrere Seiten lang). Ich fange erstmal an mit den neuen Scripts, die keine Homematic-Datenpunkte verwenden (Adapter noch nicht aktiviert).

              Frage 1: Das Anlegen einer Variable ist oben erklärt (createState). Gibt es die Möglichkeit, die Variablen näher zu definieren (so wie in CCU.IO mit setObject)? Ich möchte festlegen, welcher Typ sie ist (Boolean, Zeichenkette, etc.), welche Einheit sie verwendet (zB Volt oder °C) und schließlich einen String mit Leerzeichen zur Benennung in Yahui (dafür auch das obligatorische r in Klammern).

              Frage 2: Wo werden die Scripts abgespeichert? Kann ich sie nur im Adapter editieren oder kann ich sie mit auch im Dateisystem finden und mit einem externen Editor arbeiten?

              Die zwei Fragen möchte ich klären, damit ich mir nicht Doppelt Arbeit mache.

              Gruß

              Pix

              EDIT: Wichtig sind für mich vor allem Variablen vom Type Werteliste. Wie erstelle ich die?

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

                @bku:

                Hallo Bernhard,

                schau mal mein Script an. Erzeugt eine Variable "DVerbrauch" rechnet was und schreibt den Wert in die Variable.

                Die Variable ist immer verfügbar bis du sie löscht. Du findest sie bei den Objekten wieder und kannst sie darüber dann visualisieren.

                Gruß Bernd `

                Hallo Bernd,

                wie hast Du in der CCU die Variable "Stomverbrauch" (bei Dir hm-rega.0.9919) erzeugt?

                Die Diagramme in der CCU finde ich schon ganz sinnvoll, z.B. kWh im Tagesverlauf nach Stunden, Im Wochen- und Monatsverlauf nach Tagen.

                So etwas würde ich gerne in ioBroker nachbilden, frage mich nur wie?

                Der ENERGY_COUNTER im hm-rpc Objekt zählt ja einfach nur hoch.

                Jetzt könnte man jede Stunde das Delta der Werte nehmen und in eine Javascript Variable schreiben.

                Ebenso um 0:00 Uhr das Delta der Werte zwischen 24h.

                Ich habe allerdings keine Ahnung, wie ich das Umsetzen kann.

                Mit Javascript und Schedule? Und dann? wie kommt man an die richtigen Werte um das Delta zu bilden?

                Meine Frage oben zielte vor allem darauf, ob die gewünschten Werte schon in der CCU vorliegen und ich einfach diese verwenden kann.

                VG,

                Michael

                1 Reply Last reply Reply Quote 0
                • B
                  bku last edited by

                  @ruhr70:

                  wie hast Du in der CCU die Variable "Stomverbrauch" (bei Dir hm-rega.0.9919) erzeugt? `
                  Ist noch aus einer Script-Berechnung in CCU.IO - hab da noch Solar-Werte die ich rein- bzw. rausrechne. Dort wird die Variable in die CCU geschrieben.

                  Da ich im "Scripten" noch nicht so gut bin, ist es noch nicht in ioBroker portiert …..

                  Gruß Bernd

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

                    @bku:

                    Ist noch aus einer Script-Berechnung in CCU.IO - hab da noch Solar-Werte die ich rein- bzw. rausrechne. Dort wird die Variable in die CCU geschrieben.

                    Da ich im "Scripten" noch nicht so gut bin, ist es noch nicht in ioBroker portiert …..

                    Gruß Bernd `

                    Danke für die Rückmeldung.

                    Na, dann ist das ein Thema für später, um ein bisschen in Javascript reinzukommen 😉

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

                      @pix:

                      Gibt es die Möglichkeit, die Variablen näher zu definieren (so wie in CCU.IO mit setObject)? `
                      In der neuen Version (vor 5 Minuten) gibt es die Möglichkeit:

                      https://github.com/ioBroker/ioBroker.ja … parameters

                      createState('myVariable', {unit: '°C', type: 'number'});
                      

                      @pix:

                      Wo werden die Scripts abgespeichert? `
                      48_scripts.png
                      Die kann man leider direkt nicht editieren. Aber da wird ace editor verwendet. Und der ist wirklich bequem. Und wenn nicht, sage einfach und wir werden es verbessern.

                      @pix:

                      Wichtig sind für mich vor allem Variablen vom Type Werteliste. Wie erstelle ich die? `

                      createState('myVariable', {type: 'number', states:['first','second',third']});
                      
                      1 Reply Last reply Reply Quote 0
                      • P
                        pix last edited by

                        Danke, das hilft mir weiter.

                        Habe noch https://github.com/ioBroker/ioBroker/blob/master/doc/SCHEMA.md#state gefunden.

                        Gruss

                        Pix

                        1 Reply Last reply Reply Quote 0
                        • P
                          pix last edited by

                          Hallo,
                          @Bluefox:

                          Die kann man leider direkt nicht editieren. Aber da wird ace editor verwendet. Und der ist wirklich bequem. Und wenn nicht, sage einfach und wir werden es verbessern. `
                          Der Editor zeigt mir immer nur 23 Zeilen auf einmal an, auch wenn ich das Fenster größer ziehe (Browser Safari und Chrome auf OS X Yosemite). 261_bildschirmfoto_2015-03-29_um_15.09.35.jpg

                          Die Doku der Parameter für createState ist unvollständig. Wie nutze ich "forceCreation"? Wenn ich z.B. den Namen oder die EInheit einer Variable im Nachhinein ändern will, sollte sie beim Reload die Änderung in der Deklaration übernehmen. Bisher muss ich sie immer löschen und das Skript neu starten. Das ist sicher nicht gut u.a. für History.

                          Nutzt man das so?

                          createState('Alarmanlage', 0, {forceCreation: true}, {name: 'Status Alarmanlage (r)', type: 'number', states:['unscharf','scharf']});
                          

                          Gruß

                          Pix

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          521
                          Online

                          32.1k
                          Users

                          80.6k
                          Topics

                          1.3m
                          Posts

                          6
                          13
                          4003
                          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