Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Vorstellung] Meine zweite Visualisierung

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Vorstellung] Meine zweite Visualisierung

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      Kuddel @totocotonio last edited by

      @totocotonio

      Ich will in meinem Log nur Einträge sehen, die auch durch mich / meine Skripts generiert wurden.

      Daher habe ich in jedem Skript, wo es interessant ist, einen Log-Baustein hinzugefügt, wo der Text mit +++ anfängt und +++ aufhört.

      Im Javascript muss man dann noch die Pfade der Skripte ausschneiden, so dass nur noch der Text angezeigt wird.

      Poste mal einen Screenshot, dann kann man besser sehen, wie weit du bist.

      1 Reply Last reply Reply Quote 0
      • G
        gfrene @Kuddel last edited by

        @Kuddel said in [Vorstellung] Meine zweite Visualisierung:

        @gfrene nimm am besten als Trigger den Status "Returning to Home".

        Sprich wenn der Robo zum Dock fährt, soll er Zonen_Reiningung auf 0 setzen.

        So habe ich das bei mir auch gemacht.

        das hört sich gut an 🙂 kannst du mir den blockly schicken das ich das mir anschauen kann und bei mir weiter bearbeiten kann. Und wie die ganze ZEIT schon dickes DANKE 🙂

        M 1 Reply Last reply Reply Quote 0
        • M
          mehrwiedu @gfrene last edited by mehrwiedu

          @gfrene sagte in [Vorstellung] Meine zweite Visualisierung:

          das hört sich gut an kannst du mir den blockly schicken das ich das mir anschauen kann und bei mir weiter bearbeiten kann. Und wie die ganze ZEIT schon dickes DANKE

          Das baust Du einfach in das Skript für die Zonenreinigung mit ein. So wie ich das jetzt aus dem Kopf noch in Erinnerung habe, triggert das Skript doch den Adapter State "zone_CLEAN true-false" (oder so) und setzt den selbst erstellten Datenpunkt "Zonenreinigung" auf den Wert der Zone. Da muss dann nur noch ein "wenn return to home (Adapterdatenpunkt) geändert und "zonenreinigung != 0" dann setze "Zonenreinigung = 0".

          Ich sitze gerade nicht vor meinem Rechner mit ioBroker, deshalb kann ich das nur so versuchen zu erklären.
          Also im Prinzip die gleiche Syntax wie die Zonenreinigung selbst, nur mit einem weiteren Trigger und dem Wert 0

          G 1 Reply Last reply Reply Quote 0
          • Röstkartoffel
            Röstkartoffel @tempestas last edited by

            @tempestas sagte in [Vorstellung] Meine zweite Visualisierung:

            @Kaiman55

            Was für einen HM hast du denn? Die IP haben unter "Valve_State" einen ganz anderen Datenpunkt, als die normalen Homematic.

            Im klassischen Homematic wird hier der Ventilzustand dargestellt zwischen 0 und 100%; bei IP ist das nicht so, dort wird z.B. "Adaption_Done (4)" dargestellt. Da kannst du dann mit dieser Version auch nicht weiterkommen.

            Die Ventilstellung bei HMIP findest du hier unter hm-rpc.x.xxxxxx.1.LEVEL und zwar mit den Wert von 0 bis 1, wobei 1 dann 100% sind.

            1 Reply Last reply Reply Quote 0
            • G
              gfrene @mehrwiedu last edited by

              @mehrwiedu said in [Vorstellung] Meine zweite Visualisierung:

              @gfrene sagte in [Vorstellung] Meine zweite Visualisierung:

              das hört sich gut an kannst du mir den blockly schicken das ich das mir anschauen kann und bei mir weiter bearbeiten kann. Und wie die ganze ZEIT schon dickes DANKE

              Das baust Du einfach in das Skript für die Zonenreinigung mit ein. So wie ich das jetzt aus dem Kopf noch in Erinnerung habe, triggert das Skript doch den Adapter State "zone_CLEAN true-false" (oder so) und setzt den selbst erstellten Datenpunkt "Zonenreinigung" auf den Wert der Zone. Da muss dann nur noch ein "wenn return to home (Adapterdatenpunkt) geändert und "zonenreinigung != 0" dann setze "Zonenreinigung = 0".

              Ich sitze gerade nicht vor meinem Rechner mit ioBroker, deshalb kann ich das nur so versuchen zu erklären.
              Also im Prinzip die gleiche Syntax wie die Zonenreinigung selbst, nur mit einem weiteren Trigger und dem Wert 0

              Meinst du jetzt ich soll dafür ein neues Blockly anlegen ? ich stehe voll aufm Schlauch ka warum ich heute um die Ecke denke.

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

                So stelle ich mir das vor. Ist ein Versuch wert. 😉

                Bildschirmfoto 2019-02-20 um 18.19.08.png

                Das zusätzliche Objekt "Go home" aus dem Adapter in den Trigger und unten die Bedingung festlegen, dass der Datenpunkt "Zonenreinigung" dann entsprechend geändert wird.
                Auf die Änderung der "Zonenreinigung" reagiert das Skript dann nicht mehr, weil ja nun eine 0 drinsteht. Auch nicht, wenn der Datenpunkt "Go home" anschließend geändert wird. Das sollte eigentlich funktionieren.

                G 1 Reply Last reply Reply Quote 0
                • G
                  gfrene @mehrwiedu last edited by

                  @mehrwiedu said in [Vorstellung] Meine zweite Visualisierung:

                  So stelle ich mir das vor. Ist ein Versuch wert. 😉

                  Bildschirmfoto 2019-02-20 um 18.19.08.png

                  Das zusätzliche Objekt "Go home" aus dem Adapter in den Trigger und unten die Bedingung festlegen, dass der Datenpunkt "Zonenreinigung" dann entsprechend geändert wird.
                  Auf die Änderung der "Zonenreinigung" reagiert das Skript dann nicht mehr, weil ja nun eine 0 drinsteht. Auch nicht, wenn der Datenpunkt "Go home" anschließend geändert wird. Das sollte eigentlich funktionieren.

                  Meinste nicht das da eher eine 2 rein muss ?
                  Screenshot_4.png

                  1 Reply Last reply Reply Quote 0
                  • G
                    gfrene last edited by

                    ok, jetzt erst gesehen ist ja kein = Müsste doch so richtig sein oder ?
                    so.png

                    1 Reply Last reply Reply Quote 0
                    • G
                      gfrene last edited by

                      so eben mal Flur saugen lassen leider setzt er den Wert nicht auf 0 😞

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mehrwiedu @gfrene last edited by

                        @gfrene sagte in [Vorstellung] Meine zweite Visualisierung:

                        so eben mal Flur saugen lassen leider setzt er den Wert nicht auf 0 😞

                        Ich hatte das selbst nicht getestet. Der Datenpunkt ist er falsche. Kuddel prüft in seiner VIS auch nach dem Datenpunkt State in Info nach dem Wert um den Status anzugeben (Cleaning, Sleeping, Returning Home, etc) Der Wert 6 sagt aus, dass der Robi nach Haus fährt.
                        Der muss also in das Skript.

                        Bildschirmfoto 2019-02-20 um 21.48.15.png

                        Allerdings habe ich das immer noch nicht getestet. Kinder schlafen schon. 😉

                        1 Reply Last reply Reply Quote 0
                        • K
                          Kuddel last edited by

                          Ich habe den Reset so gemacht

                          Reset.PNG

                          G 1 Reply Last reply Reply Quote 0
                          • G
                            gfrene @Kuddel last edited by

                            @Kuddel said in [Vorstellung] Meine zweite Visualisierung:

                            Ich habe den Reset so gemacht

                            Reset.PNG

                            im gleichen blockly oder im extra Blockly ... würde fast sagen im extra oder 🙂 Kannst du den auch zur Verfügung stellen ✌ Danke dir Kuddel

                            K 1 Reply Last reply Reply Quote 0
                            • K
                              Kuddel @gfrene last edited by

                              @gfrene im extra Block

                              <block xmlns="http://www.w3.org/1999/xhtml" type="on_ext" id="lR+4)I2Mg`GQtSU79Ys(" x="-562" y="10396">
                                <mutation items="1"></mutation>
                                <field name="CONDITION">ne</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid" id="+yyE=+U=bo;ujY63%Q^p">
                                    <field name="oid">mihome-vacuum.0.info.state</field>
                                  </shadow>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="controls_if" id="IP^O*?VkoxB=XOSNnF.U">
                                    <value name="IF0">
                                      <block type="logic_operation" id="4J6_oF^QK%S9MGOnvvP," inline="false">
                                        <field name="OP">AND</field>
                                        <value name="A">
                                          <block type="logic_compare" id="_S|tVr*q8bYa{(}KX3*Q">
                                            <field name="OP">EQ</field>
                                            <value name="A">
                                              <block type="get_value" id="Yp32[~UO86E;/yL(|UZ^">
                                                <field name="ATTR">val</field>
                                                <field name="OID">mihome-vacuum.0.info.state</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="math_number" id="RIs7_==P|:cYR{{V9jYa">
                                                <field name="NUM">6</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="logic_compare" id="h]bQ=q/fe%I7{SQ^_BE.">
                                            <field name="OP">NEQ</field>
                                            <value name="A">
                                              <block type="get_value" id="{i5F3/GvuI8hPw)3wRRv">
                                                <field name="ATTR">val</field>
                                                <field name="OID">javascript.0.NoNo.Zonen_Reinigung</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="math_number" id="w(h1w9u1dFd~np25uPs~">
                                                <field name="NUM">0</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="control" id="/B]VJfEY_CzSX+B5Vw6{">
                                        <mutation delay_input="false"></mutation>
                                        <field name="OID">javascript.0.NoNo.Zonen_Reinigung</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="math_number" id="hB[d2+1`QM3Q8ZXsJ:nx">
                                            <field name="NUM">0</field>
                                          </block>
                                        </value>
                                      </block>
                                    </statement>
                                  </block>
                                </statement>
                              </block>
                              

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                mehrwiedu @Kuddel last edited by mehrwiedu

                                @Kuddel sagte in [Vorstellung] Meine zweite Visualisierung:

                                @gfrene im extra Block

                                Nur für mich als Lernhilfe. Ist es ein großer Unterschied, bzw. hat das Vorteile es in einen extra Block zu schreiben, anstelle so wie ich es oben gemacht habe?
                                In beiden Fällen ist es doch in einem Skript und wird doch von der Logik auch genauso ausgeführt.

                                Die andere Frage: Warum ist mein "und" in der Mitte und Dein "und" so schön vor den Werten.
                                Sehe da funktional keinen Unterschied, weil beides direkt nach "falls" kommt, aber es ist optisch irgendwie besser aufgebaut.
                                Das ist mir in den Blocklys schon öfter aufgefallen. Finde aber bei mir keine Möglichkeit das "und" so anzustellen wie Du es gemacht hast. Versionsabhängig (js-controller)? oder tatsächlich ein anderes "und"?

                                K 1 Reply Last reply Reply Quote 0
                                • K
                                  Kuddel @mehrwiedu last edited by

                                  @mehrwiedu Rechtsklick auf den Und-Baustein und ann "externe Eingänge". Dann wird alles untereinander dargestellt und ist übersichtlicher.

                                  Warum habe ich das Zurücksetzen in einem extra Block?

                                  So werden die beiden Blöcke immer nur ausgelöst, wenn sie wirklich benötigt werden.

                                  In deinem Fall wir der Zonen-Reinignugs-Block bei jeder Änderung vom Vacuums state ausgelöst, also auch bei normaler Reinigung.

                                  Bei mir nur, wenn sich der Punkt Zonenreiningung ändert

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

                                    Ah, ich verstehe.
                                    Wusste allerdings nicht, dass man das in einem Skript auch zusammenfassen kann.
                                    Ich hätte wahrscheinlich dann ein zweites Skript erstellt, was ja dann den gleichen Effekt hat, jedoch systemseitig einfach (hier vielleicht nur minimale) Ressourcen verbraucht und man sich das sparen kann.

                                    Danke für die Erhellung. Geht hier zwar um Deine VIS, aber somit könnte ich in einem meiner Skripte, welches ich für den Aqara Cube und die Einstellung der Lautstärke an einem Echo benutze, den Trigger für die Drehbewegung auch in einen extra Block auslagern, weil dort wird beim Drehen des Würfels immer die aktuelle Lautstärke ausgelesen und in eine Variable geschrieben und anschließend mit Werten addiert oder subtrahiert. Da ich in dem Skript aber auch noch die anderen Bewegungen triggere und die Variablen erst nach dem Falls Block setze, wird die Lautstärke auch ausgelesen, wenn man den Würfel z. B. kippt oder schüttelt.
                                    Das könnte ich so unterbinden und das Skript dadurch etwas performanter gestalten, richtig?

                                    Hier der Thread dazu, wo ich nach Verbesserungen gefragt hatte damals.
                                    https://forum.iobroker.net/topic/19646/blockly-echo-lautstärke-mit-aqara-cube

                                    K 1 Reply Last reply Reply Quote 0
                                    • K
                                      Kuddel @mehrwiedu last edited by

                                      @mehrwiedu ja würde ich in einzelne Blöcke packen

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        DerKiLLa last edited by

                                        Wow ... richtig gut. Viele Ideen für mich dabei 🙂

                                        Eine Frage, würde auch gerne die Festplattenauslastung von 2 Windows-PCs, sowie von einem NAS anzeigen. Beim NAS geht es über einen Adapter, aber wie bei Windows?

                                        K 1 Reply Last reply Reply Quote 0
                                        • K
                                          Kuddel @DerKiLLa last edited by Kuddel

                                          @DerKiLLa mein WinNAS ist ein Windows Server.

                                          Auf meiner Windows 10 VM läuft ein Skript (Powershell), was die Speicherauslastung vom NAS auswertet:

                                          $secpasswd = ConvertTo-SecureString "DEIN_PASSWORT" -AsPlainText -Force 
                                          $mycreds = New-Object System.Management.Automation.PSCredential ("Administrator", $secpasswd)
                                          
                                          $freespace_k = Get-WmiObject Win32_LogicalDisk -ComputerName 192.168.4.10 -Credential $mycreds -Filter "DeviceID='K:'" | Foreach-Object {$_.FreeSpace}
                                          
                                          Invoke-WebRequest -Uri http://192.168.4.30:8087/set/javascript.0.ressourcen.winnas_freespace_k?value=$freespace_k | Out-Null
                                          

                                          Der Wert wird in den Datenpunkt javascript.0.ressourcen.winnas_freespace_k geschrieben.

                                          Die Einheit ist Byte.

                                          Musst du zur Anzeige entsprechen umrechnen

                                          1 Reply Last reply Reply Quote 1
                                          • K
                                            Kaiman55 @Kuddel last edited by

                                            @Kuddel sagte in [Vorstellung] Meine zweite Visualisierung:

                                            @Kaiman55

                                            willst du darüber ein Pop öffnen oder zu einer anderen Seite gelangen?

                                            Für beide Fälle musst du ein anderes Widget nehmen.

                                            Fall 1 Popup: schaue mal auf Seite 2411_EG_Steckdosen_Wohnzimmer, da wäre ein Beispiel für ein Popup
                                            Fall 2 Navi: schaue mal auf die Seite 101_Navi oder 142_Übersicht

                                            Ich habe jetzt "Fall 2" aus der 101_Navi Seite genommen.
                                            Dabei habe ich den Wetter Button kopiert und dann in der Heizungsübersicht eingesetzt.
                                            uebersicht.png
                                            Die Icons sind dann auf die Heizungsseiten verlinkt wo ich noch weitere Einstellungen machen kann.

                                            Funktioniert Prima.
                                            Was ich aber nicht wegbekomme:
                                            Das Icon Wetter ist dann blau umrandet.
                                            markiert.png

                                            Wo ist dort die Zuordnung versteckt? Hab gestern Abend überall gesucht. Ich finde es nicht.
                                            Wollte dann nichts markiert haben.

                                            Und dann noch eine Frage:
                                            Auf der Seite "833_Wetter_Sonne" verwendest Du
                                            javascript.0.zeiten.sonnenaufgang
                                            javascript.0.zeiten.sonnenuntergang
                                            javascript.0.zeiten.tageslaenge
                                            javascript.0.zeiten.tageslaenge_differenz
                                            javascript.0.zeiten.tageslaenge_tageslicht_in_minuten

                                            Könntest Du da noch die Scripte posten?

                                            Vielen lieben Dank!

                                            Deine Icons mache ich die Tage fertig und setze den Hintergrund auf transparent.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            template vis
                                            148
                                            1324
                                            408141
                                            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