Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly Script für Harmony

    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 Script für Harmony

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Jan1 @Matten last edited by

      @Matten
      Der Beamer ist doch der DP JVC_Projektor_PowerOFF und der geht doch aus, weil eben beim Umschalten wohl eine Deiner activitys wechselt und dann eben nicht mehr "0" ist, somit macht das Blockly genau das was Du da drin hast.
      Ich würde das eh alles direkt im IOBroker machen, denn so ist es sehr wahrscheinlich, dass es nicht hin haut und keiner weiß warum.

      M 1 Reply Last reply Reply Quote 0
      • M
        Matten @Jan1 last edited by

        @Jan1 ...er soll ja nur ausschalten, wenn alles 0 ist, und dem ist beim Umschalten einer Aktivität nicht so. Ich habe es mit ein Szene in ioBroker probiert mit dem gleichen Ergebnis.

        J dslraser 2 Replies Last reply Reply Quote 0
        • J
          Jan1 @Matten last edited by

          @Matten
          Wie geschrieben, da ist zu viel unbekannt, was im Hintergrund abläuft. Kannst aber mal die DPs mit dem History Adapter beobachten, dann siehst wann da einer unvorhergesehen mal was macht, was er nicht soll.

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

            @Matten
            ich verstehe das Problem nicht so ganz.
            Dein Trigger ist currentStatus. Wenn der 0 ist, dann ist alles aus. Warum fragst Du noch alle anderen auf 0 ab ?
            (aber vielleicht habe ich auch was falsch verstanden)
            Ich bin ausserdem der Meinung das Dein stop Timeout an der falschen Stelle ist, der muss über das Timout.

            J M 2 Replies Last reply Reply Quote 0
            • J
              Jan1 @dslraser last edited by Jan1

              @dslraser
              da müsste egal sein, Hauptsache es ist einer drin. Beim Trigger wird dessen Inhalt abgearbeitet und die Reihenfolge sollte da egal sein, so hab ich das zumindest mal in Erinnerung.

              1 Reply Last reply Reply Quote 0
              • M
                Matten @dslraser last edited by Matten

                @dslraser Ich ändere das Timeout mal. Da ich im Kino Modus zwischen verschiedenen Aktivitäten umschalte (Sky, Fire-TV, TV), darf/soll sich der Beamer beim Umschalten nicht ausschalten, erst wenn alle Kinoaktivitäten beendet sind. Deshalb muss ich alle abfragen, ob diese auf 0 stehen.

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

                  @Matten
                  Du kannst über debug Blöcke eigentlich immer zusehen was passiert. Hier mal mit 10 Sekunden timeout. Es passiert genau das was im "Test Blockly" steht.

                  Bildschirmfoto 2020-01-06 um 19.05.46.png

                  Logausgabe der Debug Blöcke (die 10 Sekunden passen auch)

                  Bildschirmfoto 2020-01-06 um 19.05.56.png
                  So müßtest Du eigentlich rausfinden was Du suchst.

                  <xml xmlns="http://www.w3.org/1999/xhtml">
                   <variables>
                     <variable type="undefined" id="timeout">timeout</variable>
                   </variables>
                   <block type="on_ext" id="BLf2c;H4=[0JpG6O2TZb" x="63" y="38">
                     <mutation items="1"></mutation>
                     <field name="CONDITION">ne</field>
                     <field name="ACK_CONDITION"></field>
                     <value name="OID0">
                       <shadow type="field_oid" id="#Fq0M1(JeH6:12VAy.`9">
                         <field name="oid">harmony.0.Wohnzimmer.activities.currentStatus</field>
                       </shadow>
                     </value>
                     <statement name="STATEMENT">
                       <block type="debug" id="L/0hV+~17Xr=eWO:QO+#">
                         <field name="Severity">log</field>
                         <value name="TEXT">
                           <shadow type="text" id="~.4SPqUs+5Yw-?!lLY2Z">
                             <field name="TEXT">test</field>
                           </shadow>
                           <block type="text_join" id="~r*)5N|QjVshSV.*2RaQ">
                             <mutation items="2"></mutation>
                             <value name="ADD0">
                               <block type="text" id="A,jkNrd~I=}fX,;iLfk]">
                                 <field name="TEXT">Wert von Trigger: </field>
                               </block>
                             </value>
                             <value name="ADD1">
                               <block type="get_value" id="_`sKPIi!M2?qxtYx:%s_">
                                 <field name="ATTR">val</field>
                                 <field name="OID">harmony.0.Wohnzimmer.activities.currentStatus</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="timeouts_cleartimeout" id="FU].kCc*[xaC|~?_@w*9">
                             <field name="NAME">timeout</field>
                             <next>
                               <block type="timeouts_settimeout" id="%voas2O~artzzc0N]VT5">
                                 <field name="NAME">timeout</field>
                                 <field name="DELAY">10</field>
                                 <field name="UNIT">sec</field>
                                 <statement name="STATEMENT">
                                   <block type="controls_if" id="ot16!/!bRzFs[$K^|0kG">
                                     <value name="IF0">
                                       <block type="logic_operation" id="d[FPLam6GV3m/0V*8bN{" inline="false">
                                         <field name="OP">AND</field>
                                         <value name="A">
                                           <block type="logic_operation" id="LFG:,I|JcpG=gywzGm8/" inline="false">
                                             <field name="OP">AND</field>
                                             <value name="A">
                                               <block type="logic_compare" id="Av#b.}L+ndydY/_K2|Bt">
                                                 <field name="OP">EQ</field>
                                                 <value name="A">
                                                   <block type="get_value" id="g]~z@!#wU*G:$*]6]884">
                                                     <field name="ATTR">val</field>
                                                     <field name="OID">harmony.0.Wohnzimmer.activities.BluRay</field>
                                                   </block>
                                                 </value>
                                                 <value name="B">
                                                   <block type="math_number" id="PSk@t`fm{=)xe0Cb1[j2">
                                                     <field name="NUM">0</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="logic_compare" id="csWBjYYE4w1D%LV/yBW?">
                                                 <field name="OP">EQ</field>
                                                 <value name="A">
                                                   <block type="get_value" id="J--VvW[VIgJC$C.zn1A|">
                                                     <field name="ATTR">val</field>
                                                     <field name="OID">harmony.0.Wohnzimmer.activities.Chromecast</field>
                                                   </block>
                                                 </value>
                                                 <value name="B">
                                                   <block type="math_number" id="DKsNK19bxMZOQCr5APln">
                                                     <field name="NUM">0</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="logic_compare" id="8[[i:VzAtugVO}FM-39o">
                                             <field name="OP">EQ</field>
                                             <value name="A">
                                               <block type="get_value" id="_a%]nDW0)S311ro@2fx3">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">harmony.0.Wohnzimmer.activities.Kino</field>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="math_number" id="W4JF*TP+C0;.ovTSsF67">
                                                 <field name="NUM">0</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <statement name="DO0">
                                       <block type="control" id=";_H:@;PW?cFsG`n;UcbH">
                                         <mutation delay_input="false"></mutation>
                                         <field name="OID">hue.0.Fernsehlicht.command</field>
                                         <field name="WITH_DELAY">FALSE</field>
                                         <value name="VALUE">
                                           <block type="text" id="^!w/gW1_B~HjwqTDzEE=">
                                             <field name="TEXT">{"on":false,"transitiontime":100}</field>
                                           </block>
                                         </value>
                                       </block>
                                     </statement>
                                     <next>
                                       <block type="debug" id="8?sV;U=aWM6T2wbeQDo?">
                                         <field name="Severity">log</field>
                                         <value name="TEXT">
                                           <shadow type="text" id="ZsVkg)IvGU?jJv|;e-.l">
                                             <field name="TEXT">test</field>
                                           </shadow>
                                           <block type="text_join" id="=_s~~t-:38!4=QWbl$)H">
                                             <mutation items="6"></mutation>
                                             <value name="ADD0">
                                               <block type="text" id="OIE4H:bQYj1B2}jM[BP;">
                                                 <field name="TEXT">Nr.1: </field>
                                               </block>
                                             </value>
                                             <value name="ADD1">
                                               <block type="get_value" id="~XumNxur}NaE=AH*cERH">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">harmony.0.Wohnzimmer.activities.BluRay</field>
                                               </block>
                                             </value>
                                             <value name="ADD2">
                                               <block type="text" id="aJ?n+imOoDWA;vL[n+1D">
                                                 <field name="TEXT">  Nr.2: </field>
                                               </block>
                                             </value>
                                             <value name="ADD3">
                                               <block type="get_value" id="o5i-bX436FmVp42otQtn">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">harmony.0.Wohnzimmer.activities.Chromecast</field>
                                               </block>
                                             </value>
                                             <value name="ADD4">
                                               <block type="text" id="bOK|n:-bt[%,mTeMk!q4">
                                                 <field name="TEXT">  Nr.3: </field>
                                               </block>
                                             </value>
                                             <value name="ADD5">
                                               <block type="get_value" id="SB*#e_jC_s=/t(_pwJs_">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">harmony.0.Wohnzimmer.activities.Kino</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                  </xml>
                  

                  EDIT: Beispiel2 mit HUE geändert.


                  Bildschirmfoto 2020-01-06 um 19.21.48.png

                  Bildschirmfoto 2020-01-06 um 19.22.21.png

                  <xml xmlns="http://www.w3.org/1999/xhtml">
                    <variables>
                      <variable type="undefined" id="activity">activity</variable>
                      <variable type="undefined" id="lampe">lampe</variable>
                    </variables>
                    <block type="on_ext" id="BLf2c;H4=[0JpG6O2TZb" x="63" y="38">
                      <mutation items="1"></mutation>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <value name="OID0">
                        <shadow type="field_oid" id="#Fq0M1(JeH6:12VAy.`9">
                          <field name="oid">harmony.0.Wohnzimmer.activities.currentStatus</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="debug" id="L/0hV+~17Xr=eWO:QO+#">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="~.4SPqUs+5Yw-?!lLY2Z">
                              <field name="TEXT">test</field>
                            </shadow>
                            <block type="text_join" id="~r*)5N|QjVshSV.*2RaQ">
                              <mutation items="2"></mutation>
                              <value name="ADD0">
                                <block type="text" id="A,jkNrd~I=}fX,;iLfk]">
                                  <field name="TEXT">Wert von Trigger: </field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="get_value" id="_`sKPIi!M2?qxtYx:%s_">
                                  <field name="ATTR">val</field>
                                  <field name="OID">harmony.0.Wohnzimmer.activities.currentStatus</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="timeouts_cleartimeout" id="FU].kCc*[xaC|~?_@w*9">
                              <field name="NAME">activity</field>
                              <next>
                                <block type="timeouts_cleartimeout" id="1$=tw`};kS`^O}yIu`+a">
                                  <field name="NAME">lampe</field>
                                  <next>
                                    <block type="timeouts_settimeout" id="%voas2O~artzzc0N]VT5">
                                      <field name="NAME">activity</field>
                                      <field name="DELAY">10</field>
                                      <field name="UNIT">sec</field>
                                      <statement name="STATEMENT">
                                        <block type="controls_if" id="ot16!/!bRzFs[$K^|0kG">
                                          <value name="IF0">
                                            <block type="logic_operation" id="d[FPLam6GV3m/0V*8bN{" inline="false">
                                              <field name="OP">AND</field>
                                              <value name="A">
                                                <block type="logic_operation" id="LFG:,I|JcpG=gywzGm8/" inline="false">
                                                  <field name="OP">AND</field>
                                                  <value name="A">
                                                    <block type="logic_compare" id="Av#b.}L+ndydY/_K2|Bt">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="g]~z@!#wU*G:$*]6]884">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">harmony.0.Wohnzimmer.activities.BluRay</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="PSk@t`fm{=)xe0Cb1[j2">
                                                          <field name="NUM">0</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="logic_compare" id="csWBjYYE4w1D%LV/yBW?">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="J--VvW[VIgJC$C.zn1A|">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">harmony.0.Wohnzimmer.activities.Chromecast</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="DKsNK19bxMZOQCr5APln">
                                                          <field name="NUM">0</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="logic_compare" id="8[[i:VzAtugVO}FM-39o">
                                                  <field name="OP">EQ</field>
                                                  <value name="A">
                                                    <block type="get_value" id="_a%]nDW0)S311ro@2fx3">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">harmony.0.Wohnzimmer.activities.Kino</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id="W4JF*TP+C0;.ovTSsF67">
                                                      <field name="NUM">0</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="control" id=";_H:@;PW?cFsG`n;UcbH">
                                              <mutation delay_input="false"></mutation>
                                              <field name="OID">hue.0.Fernsehlicht.command</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="text" id="^!w/gW1_B~HjwqTDzEE=">
                                                  <field name="TEXT">{"on":false,"transitiontime":100}</field>
                                                </block>
                                              </value>
                                            </block>
                                          </statement>
                                          <next>
                                            <block type="debug" id="8?sV;U=aWM6T2wbeQDo?">
                                              <field name="Severity">log</field>
                                              <value name="TEXT">
                                                <shadow type="text" id="ZsVkg)IvGU?jJv|;e-.l">
                                                  <field name="TEXT">test</field>
                                                </shadow>
                                                <block type="text_join" id="=_s~~t-:38!4=QWbl$)H">
                                                  <mutation items="6"></mutation>
                                                  <value name="ADD0">
                                                    <block type="text" id="OIE4H:bQYj1B2}jM[BP;">
                                                      <field name="TEXT">Nr.1: </field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD1">
                                                    <block type="get_value" id="~XumNxur}NaE=AH*cERH">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">harmony.0.Wohnzimmer.activities.BluRay</field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD2">
                                                    <block type="text" id="aJ?n+imOoDWA;vL[n+1D">
                                                      <field name="TEXT">  Nr.2: </field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD3">
                                                    <block type="get_value" id="o5i-bX436FmVp42otQtn">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">harmony.0.Wohnzimmer.activities.Chromecast</field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD4">
                                                    <block type="text" id="bOK|n:-bt[%,mTeMk!q4">
                                                      <field name="TEXT">  Nr.3: </field>
                                                    </block>
                                                  </value>
                                                  <value name="ADD5">
                                                    <block type="get_value" id="SB*#e_jC_s=/t(_pwJs_">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">harmony.0.Wohnzimmer.activities.Kino</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="timeouts_settimeout" id="Y#2:?R[%mun]!xs:]3U*">
                                                  <field name="NAME">lampe</field>
                                                  <field name="DELAY">2</field>
                                                  <field name="UNIT">sec</field>
                                                  <statement name="STATEMENT">
                                                    <block type="debug" id="th9!^.pNQfmA+AT3UioE">
                                                      <field name="Severity">log</field>
                                                      <value name="TEXT">
                                                        <shadow type="text" id="JuU$[)yx:gh~H$gHlbq.">
                                                          <field name="TEXT">test</field>
                                                        </shadow>
                                                        <block type="text_join" id="aeM34oQ{qiA:+o1(o3yZ">
                                                          <mutation items="2"></mutation>
                                                          <value name="ADD0">
                                                            <block type="text" id="5KP.dJ$jDBri]{]QSW.3">
                                                              <field name="TEXT">  HUE Lampe: </field>
                                                            </block>
                                                          </value>
                                                          <value name="ADD1">
                                                            <block type="get_value" id="}{tgzv_5tMjV)IU@7s|3">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">hue.0.Fernsehlicht.on</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </xml>
                  

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    Matten @dslraser last edited by

                    @dslraser Super, ist ja eine ähnliche Problemstellung. Danke, ich werde es ausprobieren. Heute mache ich aber erstmal Schluss, hab den ganzen Tag vor dem PC gehangen.

                    Danke!

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

                      Also ich bin nicht richtig weiter gekommen. Im Debug Modus zeigt er an, dass der Beamer zwischendurch immer mit ausgeschaltet wird, ich weiß nicht warum und habe irgendwie jetzt ein Brett vorm Kopf.

                      Dies sind meine Blöcke für das Ein- und Ausschalten des Beamers. Dies soll nur dann passieren wenn beim Wechseln der Activities keine Kino Aktivität mehr eingeschaltet es, ansonsten soll der Beamer nicht geschaltet werden. Einschalten soll nur erfolgen, wenn eine Kino Aktivität eingeschaltet wird, läuft bereits eine, soll nichts passieren. Dafür habe ich für beide Blöcke den Datenpunkt KinoAnAus eingerichtet, welcher dementsprechend beschrieben wird mit false oder true. Beim Debuggen sehe ich, dass dieser innerhalb einer Kino Aktivität trotzdem den Wert ändert. Die Timeouts dienen dazu, dem Harmony Hub Zeit zu geben, die entsprechenden Schaltvorgänge abzuschließen.

                      Anmerkung 2020-01-09 100313.png

                      Anmerkung 2020-01-09 095833.png

                      Kann mir jemand auf die Sprünge helfen?

                      Vielen Dank!

                      Hat sich erstmal erledigt, Danke!

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

                        @Matten sagte in Blockly Script für Harmony:

                        dass der Beamer zwischendurch immer mit ausgeschaltet wird

                        Hattest du mal diverse debug Blöcke an den entscheidenden Stellen eingesetzt um zu sehen was da passiert?

                        • z.B. Werte x, y,z doch auf 0?
                        M 1 Reply Last reply Reply Quote 0
                        • M
                          Matten @Homoran last edited by

                          @Homoran Hallo Homoran, ich habe die Aktionen in den beiden Harmony Hubs beobachtet, dort sieht auf den ersten Blick alles gut aus, hat aber dann gestern Abend doch wieder nicht funktioniert. Dann werde ich die Debug Blöcke doch mal einbauen müssen. Danke!

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          608
                          Online

                          31.8k
                          Users

                          80.0k
                          Topics

                          1.3m
                          Posts

                          blockly
                          4
                          18
                          801
                          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