Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Virtueller Schalter 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

    [gelöst] Virtueller Schalter funktioniert nicht

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

      und noch eine Bitte:

      Ich finde den Post von neulich nicht mehr, wo ein Blockly zur Erzeugung eines eingenen Datenpunktes unter javasript.0 gezeigt wurde.
      Ich habs mir iregendwie zerschossen.
      Bitte nochmal !

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

        @HeliosFan sagte in Virtueller Schalter funktioniert nicht:

        und noch eine Bitte:

        Ich finde den Post von neulich nicht mehr, wo ein Blockly zur Erzeugung eines eingenen Datenpunktes unter javasript.0 gezeigt wurde.
        Ich habs mir iregendwie zerschossen.
        Bitte nochmal !

        Hier mal drei Beispiele

        • ein Button
        • ein Schalter
        • ein String

        <xml xmlns="http://www.w3.org/1999/xhtml">
         <block type="procedures_defcustomnoreturn" id="}`|TJu~h$I)LcxvN*p|[" x="88" y="88">
           <mutation statements="false"></mutation>
           <field name="NAME">Datenpunkt_anlegen</field>
           <field name="SCRIPT">Ly9EYXRlbnB1bmt0IEJ1dHRvbiBlcnN0ZWxsZW4KY3JlYXRlU3RhdGUoIkVpZ2VuZV9EYXRlbnB1bmt0ZS5WaXJ0dWVsbGVfU2NoYWx0ZXIuMDFUZXN0YnV0dG9uX21pdF9TbWFydE5hbWVuIiwgewogICAgIm5hbWUiOiAiMDFUZXN0YnV0dG9uX21pdF9TbWFydE5hbWVuIiwKICAgICJyb2xlIjogImJ1dHRvbiIsCiAgICAidHlwZSI6ICJtaXhlZCIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgInNtYXJ0TmFtZSI6IHsKICAgICAgImRlIjogIlRlc3RidXR0b24gbWl0IFNtYXJ0bmFtZW4iLAogICAgICAic21hcnRUeXBlIjogIlNXSVRDSCIKICAgIH0KfSk7Ci8vRGF0ZW5wdW5rdCBTd2l0Y2ggKFNjaGFsdGVyKSBlcnN0ZWxsZW4tSW5pdGlhbGlzaWVydCBtaXQgdHJ1ZQpjcmVhdGVTdGF0ZSgiRWlnZW5lX0RhdGVucHVua3RlLlZpcnR1ZWxsZV9TY2hhbHRlci4wMlRlc3RzY2hhbHRlcl9taXRfU21hcnROYW1lbiIsJ3RydWUnLCB7CiAgICBuYW1lOiAnMDJUZXN0c2NoYWx0ZXJfbWl0X1NtYXJ0TmFtZW4nLCAKICAgIHJvbGU6ICdzd2l0Y2gnLAogICAgdHlwZTogJ2Jvb2xlYW4nLCAKICAgIHJlYWQ6ICB0cnVlLCAKICAgIHdyaXRlOiB0cnVlLAogICAgInN0YXRlcyI6ICJ0cnVlOmVpbmdlc2NoYWx0ZXQ7ZmFsc2U6YXVzZ2VzY2hhbHRldCIsCiAgICAic21hcnROYW1lIjogewogICAgImRlIjogIlRlc3RzY2hhbHRlciBtaXQgU21hcnROYW1lbiIsCiAgICAic21hcnRUeXBlIjogIlNXSVRDSCIKfQp9KTsKLy9EYXRlbnB1bmt0IFN0cmluZyBlcnN0ZWxsZW4tIFRleHQgd2lyZCBJbnRpYWxpc2llcnQKY3JlYXRlU3RhdGUoIkVpZ2VuZV9EYXRlbnB1bmt0ZS5WaXJ0dWVsbGVfU2NoYWx0ZXIuMDNUZXN0c3RyaW5nIiwnSGllciBzdGVodCBlaW4gVGV4dCcsIHsKICAgIG5hbWU6ICcwM1Rlc3RzdHJpbmcnLCAKICAgIHJvbGU6ICdzdHJpbmcnLAogICAgdHlwZTogJ3N0cmluZycsCiAgICByZWFkOiAgdHJ1ZSwgCiAgICB3cml0ZTogdHJ1ZSwKfSk7</field>
           <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
         </block>
         <block type="procedures_callcustomnoreturn" id="Cs[B(f2xL,GNDwczSxmg" x="87" y="137">
           <mutation name="Datenpunkt_anlegen"></mutation>
         </block>
        </xml>
        

        In der Funktion auf </> klicken, dann öffnet sich der Funktion Editor.
        Da steht das drinn


        Bildschirmfoto 2019-11-13 um 18.50.20.png

        H 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @HeliosFan last edited by

          @HeliosFan sagte:

          Alexa meldet "OK"

          "schnelles aufheizen beendet" muss verzögert (innerhalb von Ausführen timeout) ausgeführt werden.

          H 1 Reply Last reply Reply Quote 0
          • H
            HeliosFan @dslraser last edited by

            @dslraser danke

            1 Reply Last reply Reply Quote 0
            • H
              HeliosFan @paul53 last edited by

              @paul53 werd ich versuchen, danke

              H 1 Reply Last reply Reply Quote 0
              • H
                HeliosFan @HeliosFan last edited by HeliosFan

                Es bleibt dabei: funktioniert nicht
                Ich habe mal an dem Datenpunkt rumgespielt.
                3eb86403-054c-4ee2-91dc-3038b51e8509-grafik.png

                Funktioniert nicht mit state/state, state/switch, und auch nicht mit state/button

                Blockly:
                ab369ca8-17d3-48ee-94c8-b71db56887a2-grafik.png

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @HeliosFan last edited by

                  @HeliosFan sagte:

                  Funktioniert nicht mit state/state, state/switch, und auch nicht mit state/button

                  Die Rolle hat für Javascript keine Bedeutung.
                  Was funktioniert nicht ?

                  • Wird nicht getriggert ?
                  • Keine Sprachausgabe ?
                  • Der Sollwert wird nicht verändert ?
                  H 1 Reply Last reply Reply Quote 0
                  • H
                    HeliosFan @paul53 last edited by

                    @paul53 said in Virtueller Schalter funktioniert nicht:

                    Was funktioniert nicht ?

                    Wird nicht getriggert ?
                    Keine Sprachausgabe ?
                    Der Sollwert wird nicht verändert ?

                    Alles davon

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @HeliosFan last edited by paul53

                      @HeliosFan sagte:

                      Alles davon

                      Wie stellst Du ohne Log-Baustein fest, dass nicht getriggert wird ?

                      Blockly_temp.JPG

                      H 1 Reply Last reply Reply Quote 0
                      • H
                        HeliosFan @paul53 last edited by

                        @paul53
                        b45e77f2-81bf-4621-8956-9c0322301524-grafik.png

                        Kein Eintrag im Log

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @HeliosFan last edited by

                          @HeliosFan sagte:

                          Kein Eintrag im Log

                          Und der Wert wurde auf / bei true aktualisiert ?

                          H 1 Reply Last reply Reply Quote 0
                          • H
                            HeliosFan @paul53 last edited by

                            @paul53
                            nein

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @HeliosFan last edited by

                              @HeliosFan sagte:

                              nein

                              Das ist aber erforderlich, damit getriggert wird und die Bedingung im falls-Block erfüllt ist.

                              H 1 Reply Last reply Reply Quote 0
                              • H
                                HeliosFan @paul53 last edited by HeliosFan

                                @paul53
                                Also wenn ich den virtuellen Schalter über die Alexa App betätige geht er auf "true" wechselt aber auf rot.
                                Im Log kommen Fehler

                                a7782fd3-da06-4054-bd17-f3b647d98c78-grafik.png

                                Dabei ist Zeile 3 der Oberschwachsinn. Das Object ist sehr wohl definiert.
                                Und wenn ich über Alexa wieder ausschalte ist auch "false" rot.
                                Mehr passiert einfach nicht.
                                Keine Sprachausgabe, keine Wertänderung an den Thermostaten.

                                paul53 2 Replies Last reply Reply Quote 0
                                • paul53
                                  paul53 @HeliosFan last edited by

                                  @HeliosFan sagte:

                                  geht er auf "true" wechselt aber auf rot.

                                  Der Wechsel auf rot ist normal.

                                  @HeliosFan sagte in Virtueller Schalter funktioniert nicht:

                                  Im Log kommen Fehler

                                  Was steht in Zeile 24 des von Blockly erzeugten Javascript-Codes ?

                                  @HeliosFan sagte in Virtueller Schalter funktioniert nicht:

                                  Mehr passiert einfach nicht.

                                  Bei Fehlern wird die Skriptausführung abgebrochen.

                                  H 1 Reply Last reply Reply Quote 0
                                  • H
                                    HeliosFan @paul53 last edited by HeliosFan

                                    @paul53 ```

                                    var zuletzt_eingestelle_Temperatur, timeout;
                                    
                                    
                                    on({id: 'javascript.0.Eigene_Datenpunkte.01Virtuelle_Schalter.01Schnelles_Aufheizen', change: "any"}, function (obj) {
                                      var value = obj.state.val;
                                      var oldValue = obj.oldState.val;
                                      if (getState("javascript.0.Eigene_Datenpunkte.01Virtuelle_Schalter.01Schnelles_Aufheizen").val == true) {
                                        zuletzt_eingestelle_Temperatur = getState("fritzdect.0.Hgroup_3D:48:6F-900.lasttarget").val;
                                        setState("alexa2.0.Echo-Devices.G090P3088455013L.Commands.speak"/*speak*/, 'schnelles auheizen gestartet');
                                        setState("fritzdect.0.Hgroup_3D:48:6F-900.targettemp"/*Target Temp*/, 28);
                                        console.log('schnellheizen');
                                        (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                                        timeout = setTimeout(function () {
                                          if (compareTime('06:00', '12:00', "between", null) || compareTime('17:00', '22:00', "between", null)) {
                                            setState("fritzdect.0.Hgroup_3D:48:6F-900.targettemp"/*Target Temp*/, getState("fritzdect.0.Hgroup_3D:48:6F-900.comfytemp").val);
                                          } else {
                                            setState("fritzdect.0.Hgroup_3D:48:6F-900.targettemp"/*Target Temp*/, zuletzt_eingestelle_Temperatur);
                                          }
                                          setStateDelayed("alexa2.0.Echo-Devices.G090P3088455013L.Commands.speak"/*speak*/, 'schnelles auheizen beendet', 1000, false);
                                        }, 1800000);
                                      }
                                    });
                                    
                                    obj.id;
                                    
                                    
                                    paul53 1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 @HeliosFan last edited by

                                      @HeliosFan

                                      Da lungert irgendwo noch ein Block "Objekt ID" rum, der gelöscht werden muss.

                                      H 1 Reply Last reply Reply Quote 0
                                      • H
                                        HeliosFan @paul53 last edited by

                                        @paul53
                                        ok, aber wo ?
                                        ich finde nichts
                                        {
                                        "from": "system.adapter.javascript.0",
                                        "user": "system.user.admin",
                                        "ts": 1573659650120,
                                        "common": {
                                        "name": "Virtueller Schalter Schnelles_Aufheizen",
                                        "type": "boolean",
                                        "role": "switch",
                                        "read": true,
                                        "write": true,
                                        "def": false,
                                        "smartName": {
                                        "de": "schnellheizen",
                                        "smartType": "SWITCH"
                                        }
                                        },
                                        "native": {},
                                        "acl": {
                                        "object": 1638,
                                        "owner": "system.user.admin",
                                        "ownerGroup": "system.group.administrator",
                                        "state": 1638
                                        },
                                        "_id": "javascript.0.Eigene_Datenpunkte.01Virtuelle_Schalter.01Schnelles_Aufheizen",
                                        "type": "state"
                                        }

                                        paul53 1 Reply Last reply Reply Quote 0
                                        • paul53
                                          paul53 @HeliosFan last edited by

                                          @HeliosFan sagte:

                                          ok, aber wo ?

                                          Im Blockly. Vielleicht hat sich der verwaiste Block hinter dem Trigger-Block versteckt ? Dann verschiebe mal den gesamten Triggerblock, damit er zum Vorschein kommt.

                                          H 1 Reply Last reply Reply Quote 0
                                          • H
                                            HeliosFan @paul53 last edited by HeliosFan

                                            @paul53
                                            ja das wars.
                                            Ändert aber nicht, das Blockly wird nicht abgearbeitet.
                                            Es wird nur die Bedingung erfüllt, die im Timeout steht:
                                            17d57c05-a7a9-4087-9845-867428293b68-grafik.png
                                            Und die Heizung auf 23 Grad regelt (Comfort Temp)

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            765
                                            Online

                                            31.9k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            33
                                            1656
                                            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