Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Szenen in Blockly

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.0k

Szenen in Blockly

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
10 Beiträge 4 Kommentatoren 1.3k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G Offline
    G Offline
    Gerni
    schrieb am zuletzt editiert von
    #1

    Hi zusammen, in meiner Umgebung nutze ich zB Szenen um zb die Garten Beleuchtung an und aus zu schalten wenn eine Tür (xiaomi sensor) geöffnet wird.

    Die Szene funktioniert auch wenn ich die Szene manuell aktiviere.

    Setze ich die Lampen manuell in das Blockly funktioniert das Blockly auch. Jedoch möchte ich das etwas komprimiert machen also die Szene ins Blockly gepackt.

    Ergebnis, die Garten Beleuchtung geht bei geöffneter Tür nicht an oder aus.

    Kann ein Blockly Script nicht mit Szenen umgehen?

    Gruß

    Stefan

    Jede Menge verschiedenes Zeug

    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      dYna
      schrieb am zuletzt editiert von
      #2

      Poste doch mal dein Blockly Script (exportiert im Code Tag).

      1 Antwort Letzte Antwort
      0
      • G Offline
        G Offline
        Gerni
        schrieb am zuletzt editiert von
        #3

        Das bekomme ich hin.

        ! ````
        <xml xmlns="http://www.w3.org/1999/xhtml"><block type="variables_set" id="o3Ii^Z;(^[/Wl[]Tw3L" x="-162" y="63"><field name="VAR">Licht_Küche_war_aus</field> <value name="VALUE"><block type="logic_negate" id="V!5ydH97_wW*XXT1|?s!"><value name="BOOL"><block type="get_value" id=";hv1XkhoOp?%h(GvH?_l"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value></block></value> <next><block type="variables_set" id="Rg2;En^MI3z3U/jCDi}}"><field name="VAR">Licht_Gartenbeleuchtung_war_aus</field> <value name="VALUE"><block type="logic_negate" id="gZI/sj6.+Ja!z[6iKh=o"><value name="BOOL"><block type="get_value" id="TTno-h6c~hC!bw3|EOc"><field name="ATTR">val</field>
        <field name="OID">javascript.0.Scene.Gartenbeleuchtung</field></block></value></block></value>
        <next><block type="on" id="X;Cp_fbl5.{}9+*MBtnW"><field name="OID">mihome.0.devices.magnet_158d0001d821d1.state</field>
        <field name="CONDITION">true</field>

                <statement name="STATEMENT"><block type="controls_if" id="r4;C-s:gJHryisv4KGb`"><value name="IF0"><block type="logic_compare" id="UDQ/e84{v6!/G`]9t7QB"><field name="OP">LT</field>
                        <value name="A"><block type="get_value" id="U2EWT0XNsJOW]@]Yk=~f"><field name="ATTR">val</field>
                            <field name="OID">hm-rpc.0.OEQ0271572.1.BRIGHTNESS</field></block></value> 
                        <value name="B"><block type="math_number" id="p?TJR~lG*ACFgAtTx8Q6"><field name="NUM">100</field></block></value></block></value> 
                    <statement name="DO0"><block type="controls_if" id="mc-/457kBLeVlnE*0U5U"><mutation else="1"></mutation>
                        <value name="IF0"><block type="get_value" id="HJ*WB)WwDP/-Zr4?+oaN"><field name="ATTR">val</field>
                            <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                        <statement name="DO0"><block type="variables_set" id="qNoIPrg/8j}w@iXh;u{G"><field name="VAR">Licht_Küche_war_aus</field>
                            <value name="VALUE"><block type="logic_boolean" id="%r=#Xdt{2cPQouQ]JIn-"><field name="BOOL">FALSE</field></block></value></block></statement> 
                        <statement name="ELSE"><block type="control" id="Zvj.L!dIA2R1COxH|?;H"><mutation delay_input="false"></mutation>
                            <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE"><block type="logic_boolean" id="Y-C2(|qU(jar*9o~.nR0"><field name="BOOL">TRUE</field></block></value> 
                            <next><block type="variables_set" id="v^35z/4wSF6)P:OGjilj"><field name="VAR">Licht_Küche_war_aus</field>
                                <value name="VALUE"><block type="logic_boolean" id="fJ.jCeh`SBtx0@%G/f#="><field name="BOOL">TRUE</field></block></value></block></next></block></statement> 
                        <next><block type="controls_if" id="n*v5Mey4,E={?7uOA|;+"><mutation else="1"></mutation>
                            <value name="IF0"><block type="get_value" id="ua[[e5-V,3|Cd8cb+-Ys"><field name="ATTR">val</field>
                                <field name="OID">javascript.0.Scene.Gartenbeleuchtung</field></block></value> 
                            <statement name="DO0"><block type="variables_set" id="@,3h9HvhwwahNpW[-n*B"><field name="VAR">Licht_Gartenbeleuchtung_war_aus</field>
                                <value name="VALUE"><block type="logic_boolean" id="GDBd@}JCq{64Ps1;NwSb"><field name="BOOL">FALSE</field></block></value></block></statement> 
                            <statement name="ELSE"><block type="control" id="Eyw1aZS{T`@j,As{:f.:"><mutation delay_input="false"></mutation>
                                <field name="OID">javascript.0.Scene.Gartenbeleuchtung</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE"><block type="logic_boolean" id="kq~bv(+7[x-s%e%=03wa"><field name="BOOL">TRUE</field></block></value> 
                                <next><block type="variables_set" id="ja)eLeTb|%f@E6DN4xTp"><field name="VAR">Licht_Gartenbeleuchtung_war_aus</field>
                                    <value name="VALUE"><block type="logic_boolean" id="b:LKwM9;zQQLCG#,~UoI"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> 
                            <next><block type="timeouts_cleartimeout" id="^9kndE@5R7DmO.Pb3ZWr"><field name="NAME">timeout</field>
                                <next><block type="timeouts_settimeout" id="1m)Q_r6s:]S6[6JqKIcH"><field name="NAME">timeout</field>
                                    <field name="DELAY">3</field>
                                    <field name="UNIT">min</field>
                                    <statement name="STATEMENT"><block type="controls_if" id="q}VKP`-H5aXwG#1=6+qW"><value name="IF0"><block type="variables_get" id="6H_4wR[~ocbT/Bz18Rdl"><field name="VAR">Licht_Küche_war_aus</field></block></value> 
                                        <statement name="DO0"><block type="control" id="ftP!r*}f{K0X.R)Uax?:"><mutation delay_input="true"></mutation>
                                            <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                            <field name="WITH_DELAY">TRUE</field>
                                            <field name="DELAY_MS">2</field>
                                            <field name="UNIT">min</field>
                                            <field name="CLEAR_RUNNING">FALSE</field>
                                            <value name="VALUE"><block type="logic_boolean" id="Z7hs,k@|2R:*~^FsIB~#"><field name="BOOL">FALSE</field></block></value></block></statement> 
                                        <next><block type="controls_if" id="y_.48SkPAFfw-s{!;CVH"><value name="IF0"><block type="variables_get" id="-Wpbof*~W^0+_qSMUU`e"><field name="VAR">Licht_Gartenbeleuchtung_war_aus</field></block></value> 
                                            <statement name="DO0"><block type="control" id="X/(^=/hR[cU*!1p,tN+c"><mutation delay_input="true"></mutation>
                                                <field name="OID">javascript.0.Scene.Gartenbeleuchtung</field>
                                                <field name="WITH_DELAY">TRUE</field>
                                                <field name="DELAY_MS">4</field>
                                                <field name="UNIT">min</field>
                                                <field name="CLEAR_RUNNING">FALSE</field>
                                                <value name="VALUE"><block type="logic_boolean" id="Q78@%r/U+%Y)Z^cEi]FG"><field name="BOOL">FALSE</field></block></value></block></statement></block></next></block></statement></block></next></block></next></block></next></block></statement></block></statement></block></next></block></next></block></xml> 
        

        Jede Menge verschiedenes Zeug

        1 Antwort Letzte Antwort
        0
        • D Offline
          D Offline
          dYna
          schrieb am zuletzt editiert von
          #4

          Die Abfrage macht irgendwie keinen Sinn:

            if (getState("hm-rpc.0.OEQ0271572.1.BRIGHTNESS").val < 100) {
              if (getState("hm-rpc.0.NEQ1502825.1.STATE").val) {
                Licht_K_C3_BCche_war_aus = false;
              } else {
                setState("hm-rpc.0.NEQ1502825.1.STATE", true);
                Licht_K_C3_BCche_war_aus = true;
              }
          
          if (getState("hm-rpc.0.NEQ1502825.1.STATE").val)
          ````ist doch immer wahr, insofern ist Licht_K_C3_BCche_war_aus auch immer falsch, egal was in deinem Script passiert.
          1 Antwort Letzte Antwort
          0
          • G Offline
            G Offline
            Gerni
            schrieb am zuletzt editiert von
            #5

            Erstmal Danke für die Antwort - auch wenn ich damit nichts anfange kann.

            1. Mir fällt auf, dass die Bezeichnung im Export komisch sind, eigentlich heißt das Objekt "Licht_Küche".

            2. Wenn ich die Szene raus nehme und anstelle die einzelnen Geräte innerhalb der Szene dort einfüge funktioniert alles.

            Warum macht das keinen Sinn? Im Prinzip: Wenn die Tür geöffnet wird und Licht in der Küche ist an soll der Timer nicht greifen und das Licht weiterhin an bleiben. ist das Licht aus bei Öffnen der Tür wird Licht eingeschaltet (und eben die Lampen innerhalb der Szene - was ja nicht geht) und nacht Timer wieder ausgeschaltet. Das funktioniert auch wie gewünscht.

            Gruß

            Stefan

            Jede Menge verschiedenes Zeug

            1 Antwort Letzte Antwort
            0
            • D Offline
              D Offline
              dYna
              schrieb am zuletzt editiert von
              #6

              Mit der von mir zitierten Abfrage wird nur gefragt, ob das Objekt vorhanden ist und das ist eben immer wahr.

              Du musst den Zustand des Objekts abfragen und nicht das Objekt selbst.

              Also if Objekt == irgendwas und nicht if Objekt.

              1 Antwort Letzte Antwort
              0
              • T Offline
                T Offline
                tempestas
                schrieb am zuletzt editiert von
                #7

                das ist doch nur ne Kurzschreibform? Wenn der Val true/false ist, ist das kurz für if (getState("hm-rpc.0.NEQ1502825.1.STATE").val === true)

                <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                1 Antwort Letzte Antwort
                0
                • D Offline
                  D Offline
                  dYna
                  schrieb am zuletzt editiert von
                  #8

                  Ich entschuldige mich für meine Unwissenheit, nehme alles zurück und behaupte das Gegenteil.

                  Dann würde ich mal die Umlaute aus allen Objekten usw. entfernen.

                  1 Antwort Letzte Antwort
                  0
                  • G Offline
                    G Offline
                    Gerni
                    schrieb am zuletzt editiert von
                    #9

                    Umlaute entfernen kann es ja auch nicht sein, Küche ist nun mal Küche und nicht Kueche oder Fluege ;-)

                    Und; die Szene "Gartenbeleuchtung" greift ja zB auch nicht. Wie gesagt, füge ich die Geräte einzeln ein geht alles.

                    Und; Du nimmst alles zurück und behauptest das Gegenteil?! Wie meinen??? Hilft jetzt nicht oder verstehe ich Dich jetzt nicht?

                    Gruß

                    Jede Menge verschiedenes Zeug

                    1 Antwort Letzte Antwort
                    0
                    • rantanplanR Offline
                      rantanplanR Offline
                      rantanplan
                      schrieb am zuletzt editiert von
                      #10

                      @Gerni:

                      Umlaute entfernen kann es ja auch nicht sein, Küche ist nun mal Küche und nicht Kueche oder Fluege ;-)

                      Und; die Szene "Gartenbeleuchtung" greift ja zB auch nicht. Wie gesagt, füge ich die Geräte einzeln ein geht alles. `
                      Hallo

                      Auf Umlaute sollte man beim Programmieren möglichst verzichten.

                      JavaScript kennt keine Umlaute. Deshalb siehst Du beim Export diese kryptischen Übersetzungen.

                      Es ist also immer zusätzliche Programmierung notwendig, nur weil jemand unbedingt Küche und nicht Kueche schreiben will. :roll:

                      Ich würde mich nicht darauf verlassen, dass sich, bei irgend einem Update, ein Bug in diese "Übersetzung" schleicht.

                      Hast Du schon mal den Debug-Baustein gesehen?

                      Damit kann man sehr schön den Ablauf eines Programms überprüfen.

                      Grüße

                      Rantanplan

                      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      628

                      Online

                      32.4k

                      Benutzer

                      81.5k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe