Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly-Rollladenscript funktioniert nicht

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly-Rollladenscript funktioniert nicht

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

      @Ralla66:

      Anders, was schreibt die VIS in den DP Rollade Büro auf Wochentag Montag ?

      Eine 1 ?

      Gruß Ralf `

      Also in den DP Rolladen Büro auf Wochentag Montag schreibt er true/false.

      Und dann wird in den DP von Rolladen Büro auf Wochentag für Cron die Zahl vom Wochentag geschrieben zb. wenn Montag, Dienstag und Sonntag true ist schreibt er

      1,2,0,0,0,0,7 in den Datenpunkt.

      Hoffe man kann verstehen was ich meine Ansonsten morgen früh mit Bildern [emoji6]

      Gruß Torsten

      Gesendet von meinem MHA-L29 mit Tapatalk

      1 Reply Last reply Reply Quote 0
      • Ralla66
        Ralla66 Most Active last edited by

        Verstanden,

        Falls Objekt stell mal um von wurde geändert nach wurde aktualisiert.

        Wenn du das Script startest wird der Rolladen Büro auf Wochentag für Cron nicht aktualisiert da das Falls Objekt

        nicht durchlaufen wird !!

        Erst wenn du einen Wochentag änderst.

        Würde ich automatisch machen.

        Am Anfang des Scriptes rufts du den z.B. DP Rollade Büro Auf Wochentag Montag auf

        und liest diesen ein.

        Diesen überschreibe mit dem gleichen Wert.

        Eben aktualisiert.

        Dann wird das Falls Objekt immer durchlaufen.

        Aber erst einmal Schritt für Schritt.

        Cron geht ja,

        Input Minuten und Stunden hast du getestet ?

        Läuft ?

        Sonderzeichen versuche zu vermeiden.

        Hier Minuten & Stunden im Kommentar.

        Nicht schlimm.

        Im Script ist dies des Hasen Tod.

        Habe ich mir auch abgewöhnt mit Sonderzeichen zu arbeiten :mrgreen:

        Gruß Ralf

        1 Reply Last reply Reply Quote 0
        • C
          Conquest last edited by

          @Ralla66:

          Verstanden,

          Falls Objekt stell mal um von wurde geändert nach wurde aktualisiert.

          Wenn du das Script startest wird der Rolladen Büro auf Wochentag für Cron nicht aktualisiert da das Falls Objekt

          nicht durchlaufen wird !!

          Erst wenn du einen Wochentag änderst.

          Würde ich automatisch machen.

          Am Anfang des Scriptes rufts du den z.B. DP Rollade Büro Auf Wochentag Montag auf

          und liest diesen ein.

          Diesen überschreibe mit dem gleichen Wert.

          Eben aktualisiert.

          Dann wird das Falls Objekt immer durchlaufen.

          Aber erst einmal Schritt für Schritt.

          Cron geht ja,

          Input Minuten und Stunden hast du getestet ?

          Läuft ?

          Sonderzeichen versuche zu vermeiden.

          Hier Minuten & Stunden im Kommentar.

          Nicht schlimm.

          Im Script ist dies des Hasen Tod.

          Habe ich mir auch abgewöhnt mit Sonderzeichen zu arbeiten :mrgreen:

          Gruß Ralf `

          Morgen Ralf,

          hab es so geändert wie du es gesagt hast. Rollladen ist heute morgen nicht gefahren. Ich kann die Zeit zwar über die Vis ändern aber er fährt nicht mehr. In den Objekten wird die Zeit auch rot und bei bestätigt steht false und es ist auch kein Zeitstempel zu sehen.
          470_screenshot-192.168.178.46-8081-2018.11.16-04-42-13.png
          470_screenshot-192.168.178.46-8081-2018.11.16-04-45-45.png
          470_screenshot-192.168.178.46-8082-2018.11.16-04-22-04.png
          470_screenshot-192.168.178.46-8082-2018.11.16-04-23-23.png
          470_screenshot-192.168.178.46-8082-2018.11.16-04-24-44.png
          470_screenshot-192.168.178.46-8081-2018.11.16-07-17-33.png

          1 Reply Last reply Reply Quote 0
          • Ralla66
            Ralla66 Most Active last edited by

            Mahlzeit Torsten,

            was passiert bei States setzen ?

            Was stand im Log Fehlermeldung ?

            Kann hier leider nur Vermutung anstellen.

            Irgend was ist bei der Übergabe der Zeit falsch.

            Da du nach String einfügen kein Fehler mehr hattes denke ich

            aus der VIS wird eine Number übergeben.

            Tausche mal die Blöcke, erst die Wochentage für Cron Text erstellen dann den Cron ausführen.

            Nach String entfernst du.

            Was passiert ?

            Nach Script start wird ja das Falls Objekt nicht durchlaufen,

            sollten wir ändern.

            Bild kommt später.

            Gruß Ralf
            5230_torsten_v21.jpg

            1 Reply Last reply Reply Quote 0
            • Ralla66
              Ralla66 Most Active last edited by

              Bild,

              Blöcke tauschen, du musst ja erst Objekt ID Wochentage Cron Text erstellen

              bevor du das an den Cron übergeben kannst.

              Soweit alles nachvollziehbar ?

              Mal eine bitte, bleibe bei Rollade Buero auf, VIS machen wir später.

              Also bitte nicht aus der VIS ansteuern da wir nicht wissen ob ein String oder Number übergeben wird.

              Erst muss das Script laufen.

              Danke.

              Status ist jetzt welcher ?

              Gruß Ralf
              5230_torsten_v22.jpg
              5230_torsten_v23.jpg

              1 Reply Last reply Reply Quote 0
              • C
                Conquest last edited by

                @Ralla66:

                Bild,

                Blöcke tauschen, du musst ja erst Objekt ID Wochentage Cron Text erstellen

                bevor du das an den Cron übergeben kannst.

                Soweit alles nachvollziehbar ?

                Mal eine bitte, bleibe bei Rollade Buero auf, VIS machen wir später.

                Also bitte nicht aus der VIS ansteuern da wir nicht wissen ob ein String oder Number übergeben wird.

                Erst muss das Script laufen.

                Danke.

                Status ist jetzt welcher ?

                Gruß Ralf `

                Hallo Ralf,

                also der Rollladen fährt jetzt nach dem umstellen des Scriptes hoch. Die Tagesauswahl funktioniert. Jetzt müssten wir nur noch nach der Zeit schauen.

                Gruß Torsten
                470_screenshot-192.168.178.46-8081-2018.11.19-04-17-10.png
                470_screenshot-192.168.178.46-8081-2018.11.19-04-18-42.png

                1 Reply Last reply Reply Quote 0
                • Ralla66
                  Ralla66 Most Active last edited by

                  Hallo Torsten,

                  prima das es soweit läuft 🙂

                  Mit Zeit meinst du Stunden und Minuten ?

                  Die Vermutung ist ja das aus der VIS eine Number gesendet wird.

                  Diese müssen wir konvertieren nach string.

                  Lege dir mal zwei neue Datenpunkte als Number an.

                  Rollade Auf Buero Stunden VIS und Rollade Auf Buero Minuten VIS.

                  Die Objekt ID in der VIS verknüpfst du damit.

                  Hier schreiben wir aus der VIS in den DP.

                  Dann lege dir ein neues script an.

                  In dem sagst du,

                  Falls Rollade Auf Buero Stunden VIS oder Rollade Auf Buero Minuten VIS

                  wurde aktualisiert wandle Rollade Auf Buero Stunden VIS und Rollade Auf Buero Minuten VIS

                  nach string.

                  Diese 2 string nehmen wir und aktualisieren

                  Rollade Auf Buero Stunden und Rollade Auf Buero Minuten.

                  Gruß Ralf

                  1 Reply Last reply Reply Quote 0
                  • C
                    Conquest last edited by

                    @Ralla66:

                    Hallo Torsten,

                    prima das es soweit läuft 🙂

                    Mit Zeit meinst du Stunden und Minuten ?

                    Die Vermutung ist ja das aus der VIS eine Number gesendet wird.

                    Diese müssen wir konvertieren nach string.

                    Lege dir mal zwei neue Datenpunkte als Number an.

                    Rollade Auf Buero Stunden VIS und Rollade Auf Buero Minuten VIS.

                    Die Objekt ID in der VIS verknüpfst du damit.

                    Hier schreiben wir aus der VIS in den DP.

                    Dann lege dir ein neues script an.

                    In dem sagst du,

                    Falls Rollade Auf Buero Stunden VIS oder Rollade Auf Buero Minuten VIS

                    wurde aktualisiert wandle Rollade Auf Buero Stunden VIS und Rollade Auf Buero Minuten VIS

                    nach string.

                    Diese 2 string nehmen wir und aktualisieren

                    Rollade Auf Buero Stunden und Rollade Auf Buero Minuten.

                    Gruß Ralf `

                    Ok versuch ich mal hoffe das ich hin bekomme.

                    Rollade Auf Buero Stunden VIS und Rollade Auf Buero Minuten VIS als Number anlegen?

                    Gruß Torsten
                    470_screenshot-forum.iobroker.net-2018.11.19-11-33-28.png

                    1 Reply Last reply Reply Quote 0
                    • Ralla66
                      Ralla66 Most Active last edited by

                      Setze den Block ein über Schedule.

                      Rollade Auf Buero Stunden VIS und Rollade Auf Buero Minuten VIS als Number anlegen?

                      Ja wenn das in deinem Admin geht.

                      1 Reply Last reply Reply Quote 0
                      • Ralla66
                        Ralla66 Most Active last edited by

                        Probiere es mal so, siehe Bild 3

                        Falls du test vis create timeformat an die VIS übergibst kann es möglich sein

                        das du das Widget anpassen mußt.

                        Dann mit einem String Text Widget probieren.

                        Aber schau erst einmal was der DP test_vis ( Bild 2 ) mit dem Zeitplan macht.

                        Für steuere test_Vis mit create_timestamp setzte bitte :

                        aktualisiere test_Vis mit create_timestamp in Bild 1 und 2.

                        Nach dem Test nicht vergessen den Zeitplan auszuschalten.

                        Danach sollten wir mal kurz den Stand abstimmen was geht, was nicht.

                        Genug zum testen Denke ich mal. :mrgreen: 😉

                        Gruß Ralf
                        5230_martin_v56.jpg
                        5230_martin_v57_gesamt.jpg
                        5230_torsten_string_v1.jpg

                        1 Reply Last reply Reply Quote 0
                        • C
                          Conquest last edited by

                          @Ralla66:

                          Probiere es mal so, siehe Bild 3

                          Falls du test vis create timeformat an die VIS übergibst kann es möglich sein

                          das du das Widget anpassen mußt.

                          Dann mit einem String Text Widget probieren.

                          Aber schau erst einmal was der DP test_vis ( Bild 2 ) mit dem Zeitplan macht.

                          Für steuere test_Vis mit create_timestamp setzte bitte :

                          aktualisiere test_Vis mit create_timestamp in Bild 1 und 2.

                          Nach dem Test nicht vergessen den Zeitplan auszuschalten.

                          Danach sollten wir mal kurz den Stand abstimmen was geht, was nicht.

                          Genug zum testen Denke ich mal. :mrgreen: 😉

                          Gruß Ralf `
                          Hallo Ralf,

                          ja war erstmal genug zu testen 🙂

                          Stand jetzt ist:
                          470_martin_v57_gesamt.jpg
                          Script läuft so. Rollladen ist heute morgen zur eingestellten Zeit hochgefahren.

                          470_martin_v56.jpg
                          Hat auch funktioniert Minuten springen von 11 auf 12 und wieder zurück. vis_test wird auch geändert.

                          470_torsten_string_v1.jpg
                          Script hab ich angelegt. Warte jetzt aber erstmal zwei drei Tage ob der Rollladen jeden morgen hochfährt. Danach können wir ans Vis gehen.

                          ` > Für steuere test_Vis mit create_timestamp setzte bitte :

                          aktualisiere test_Vis mit create_timestamp in Bild 1 und 2. `

                          Was ist der Unterschied? Hat auch mit steuere funktioniert.

                          ` > Falls du test vis create timeformat an die VIS übergibst kann es möglich sein

                          das du das Widget anpassen mußt. `

                          Vis_test dient nur zur Anzeige. Über Vis werden nur Rollladen Buero Auf Minute und Rollladen Buero Auf Stunde übergeben.

                          Gruß Torsten

                          1 Reply Last reply Reply Quote 0
                          • Ralla66
                            Ralla66 Most Active last edited by

                            Morgen Torsten,

                            dann teste mal in Ruhe :mrgreen:

                            Anbei schon einmal der Test ob nach string geht. 🙂

                            Gruß Ralf
                            5230_t_vis_v1.jpg

                            1 Reply Last reply Reply Quote 0
                            • C
                              Conquest last edited by

                              @Ralla66:

                              Anbei schon einmal der Test ob nach string geht. 🙂

                              Gruß Ralf `

                              Morgen Ralf,

                              hab den Test schon einmal gemacht funktioniert so leider nicht er schreibt den DP in den Wert vom Rollladen Buero Auf Minute siehe Bilder.

                              Gruß Torsten
                              470_screenshot-192.168.178.46-8081-2018.11.21-04-20-45.png

                              1 Reply Last reply Reply Quote 0
                              • Ralla66
                                Ralla66 Most Active last edited by

                                Hallo Torsten,

                                Tag auch,

                                sehe leider nichts im Bild.

                                Zahl bitte mal tauschen mit 14 und 15.

                                Habe das getestet bei mir geht das siehe Bild. :mrgreen:

                                Welche Widget benutzt du in der VIS für Minuten bitte ?

                                Slider , Plus und Minus ? Welche.

                                Versuche das mal nachzubilden.

                                Gruß Ralf
                                5230_torsten_v100.jpg

                                1 Reply Last reply Reply Quote 0
                                • C
                                  Conquest last edited by

                                  @Ralla66:

                                  Hallo Torsten,

                                  Tag auch,

                                  sehe leider nichts im Bild.

                                  Zahl bitte mal tauschen mit 14 und 15.

                                  Habe das getestet bei mir geht das siehe Bild. :mrgreen:

                                  Welche Widget benutzt du in der VIS für Minuten bitte ?

                                  Slider , Plus und Minus ? Welche.

                                  Versuche das mal nachzubilden.

                                  Gruß Ralf ` Hallo Ralf,

                                  ja war mein Fehler hab hinter "nach String" Wert vergessen. Funktioniert natürlich.

                                  Also das Plus Widget ist ein " jqui-ctrl-Icon Increment.

                                  Und der Slider ein " jqui-Slider horizontal.

                                  Gruß Torsten

                                  Gesendet von meinem MHA-L29 mit Tapatalk

                                  1 Reply Last reply Reply Quote 0
                                  • Ralla66
                                    Ralla66 Most Active last edited by

                                    Hallo Torsten,

                                    mache erst deine Tests,

                                    melde dich wenn du Hilfe brauchst.

                                    Dann machen wir Widget VIS nach DP Number oder String.

                                    Gruß Ralla

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

                                      hallo zusammen,

                                      wie ich zu anfang geschrieben habe, verfolge ich hier die ideen. nun ist es auch bei mir soweit dass die shellys verbaut sind.

                                      habe im wohnzimmer zurzeit einen xiaomi bewegungsmelder (sollen insgesamt drei werden) welche überpüfen sollen ob noch

                                      jemand aktiv ist.

                                      das ziel ist es wenn 30 minuten keine aktivität in einem gewissen zeitfenster ist, dass die rollos automatisch runtergefahren werden.

                                      dafür habe ich einen datenpunkt gesetzt (wz_rollos_bm_status) wo sämtlche bewegungsmelder bei erkannter bewegung ein "wahr" setzen.

                                      wenn dann 30 minuten keine bewegung erkannt wurde soll der wert auf "unwahr" gesetzt werden.

                                      wo ich nicht weiterkomme ist dass er ja den timer "30 minuten" hat und danach stumpf auf unwahr setzt. wie kann ich dort eine nachprüfung

                                      einbauen ob es zwischenzeitig eine neue aktivität gab und der timer dann wieder auf null gesetzt wird?

                                      komme an diesem punkt nicht weiter und wäre über hilfe dankbar.

                                      lg

                                      ralph

                                       <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="tz;D9#.+4p*3?FtR{4?(" x="63" y="38"><mutation items="4"></mutation>
                                          <field name="CONDITION">any</field>
                                      
                                          <value name="OID0"><shadow type="field_oid" id=";T`833RRx:ZOmW)gCmQR"><field name="oid">Werte_zwischenspeicher.0.wz_rollos_bm_status</field></shadow></value> 
                                          <value name="OID1"><shadow type="field_oid" id="2x{Slmg1.2E/~y,DoO8Q"><field name="oid">mihome.0.devices.sensor_motion_aq2_158d00029c019e.state</field></shadow></value> 
                                          <value name="OID2"><shadow type="field_oid" id="Zd|t!]om|=mpim*iVi9a"><field name="oid">mihome.0.devices.sensor_motion_aq2_158d000276d226.state</field></shadow></value> 
                                          <value name="OID3"><shadow type="field_oid" id="T+%NOoZQ,P(W4Bs^ck3r"><field name="oid">mihome.0.devices.sensor_motion_aq2_158d0002752318.state</field></shadow></value> 
                                          <statement name="STATEMENT"><block type="controls_if" id="Y38R}w(/ZJE-Xao,=188"><value name="IF0"><block type="logic_operation" id="cY7X%s+VI:oWVnmOHVm6" inline="false"><field name="OP">OR</field>
                                                  <value name="A"><block type="logic_operation" id="guHXnlf?.TTZa6nv:B~=" inline="false"><field name="OP">OR</field>
                                                      <value name="A"><block type="logic_operation" id="IzMPn,@2t93WV=?3~DcQ" inline="false"><field name="OP">OR</field>
                                                          <value name="A"><block type="logic_compare" id="i~{LKE2GRq!=CghO?bh="><field name="OP">EQ</field>
                                                              <value name="A"><block type="get_value" id="_fg-3w|dQ,TjU6qZT6q9"><field name="ATTR">val</field>
                                                                  <field name="OID">mihome.0.devices.sensor_motion_aq2_158d00029c019e.state</field></block></value> 
                                                              <value name="B"><block type="logic_boolean" id="U(B.w*RkUPwV?ml,DFE1"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                          <value name="B"><block type="logic_compare" id="a7{vPB`w5^]1+d8b:eQh"><field name="OP">EQ</field>
                                                              <value name="A"><block type="get_value" id="uVx6LOE|r0kvpIgHXW^D"><field name="ATTR">val</field>
                                                                  <field name="OID">mihome.0.devices.sensor_motion_aq2_158d0002752318.state</field></block></value> 
                                                              <value name="B"><block type="logic_boolean" id="MgbZ2ey!x(%IA`c3]S0L"><field name="BOOL">TRUE</field></block></value></block></value></block></value> 
                                                      <value name="B"><block type="logic_compare" id="j+CvzLb9q;N!0yP1WQ}6"><field name="OP">EQ</field>
                                                          <value name="A"><block type="get_value" id="Z3Jdw19D%#Xg4!*J=ljd"><field name="ATTR">val</field>
                                                              <field name="OID">mihome.0.devices.sensor_motion_aq2_158d000276d226.state</field></block></value> 
                                                          <value name="B"><block type="logic_boolean" id="E+(%#YD5gMqiJhiOmv`p"><field name="BOOL">TRUE</field></block></value></block></value></block></value> 
                                                  <value name="B"><block type="logic_operation" id="@u9M]SIQ:4NUiHNgQA:B" inline="false"><field name="OP">OR</field></block></value></block></value> 
                                              <statement name="DO0"><block type="control" id="U-;ov8(is!)A;b,}CWbu"><mutation delay_input="false"></mutation>
                                                  <field name="OID">Werte_zwischenspeicher.0.wz_rollos_bm_status</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE"><block type="logic_boolean" id="a/hkdu[w8}W{Xk:McnL#"><field name="BOOL">TRUE</field></block></value></block></statement> 
                                              <next><block type="comment" id="?g=#:O9,]UNw|6z3S/7z"><field name="COMMENT">Wert zurück setzen</field>
                                                  <next><block type="controls_if" id="muP@A+k6JgyFmNX-Q/{B"><value name="IF0"><block type="logic_compare" id="qoO1CG_~v(ABV#(Xz_+K"><field name="OP">EQ</field>
                                                          <value name="A"><block type="get_value" id="/zdz!YCIQIy/j!l0k;+f"><field name="ATTR">val</field>
                                                              <field name="OID">Werte_zwischenspeicher.0.wz_rollos_bm_status</field></block></value> 
                                                          <value name="B"><block type="logic_boolean" id="0Sh!Q~.?)GU)l#nuG._]"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                      <statement name="DO0"><block type="control" id="L7Xg/A]..w(FY}Eqf^9X"><mutation delay_input="true"></mutation>
                                                          <field name="OID">Werte_zwischenspeicher.0.wz_rollos_bm_status</field>
                                                          <field name="WITH_DELAY">TRUE</field>
                                                          <field name="DELAY_MS">30</field>
                                                          <field name="UNIT">min</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="VALUE"><block type="logic_boolean" id="%w!NIlru[79Gn06b-Uk="><field name="BOOL">FALSE</field></block></value></block></statement></block></next></block></next></block></statement></block></xml> 
                                      

                                      9191_skript_rollo.jpg

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      855
                                      Online

                                      31.8k
                                      Users

                                      79.9k
                                      Topics

                                      1.3m
                                      Posts

                                      4
                                      66
                                      8158
                                      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