Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Skript teilweise ohne Funktion -

    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

    Skript teilweise ohne Funktion -

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

      Hallo Community,

      ich habe vor einiger Zeit für meine Loxone-Lichtsteuerung ein Skript gebastelt.
      Dieses läuft eigentlich auch, aber manchmal "verrent" es sich und dann ist es ohne Funktion.

      Hier dazu die Fehlermeldung im Log:

      javascript.0	2020-11-23 20:21:32.702	warn	(4564) at processImmediate (timers.js:658:5)
      javascript.0	2020-11-23 20:21:32.701	warn	(4564) at tryOnImmediate (timers.js:676:5)
      javascript.0	2020-11-23 20:21:32.701	warn	(4564) at runCallback (timers.js:705:18)
      javascript.0	2020-11-23 20:21:32.701	warn	(4564) at Immediate.setImmediate (C:\Program Files\iobroker\Smart\node_modules\iobroker.js-controller\lib\adapter.js:5384:37)
      javascript.0	2020-11-23 20:21:32.701	warn	(4564) at Object.stateChange (C:\Program Files\iobroker\Smart\node_modules\iobroker.javascript\main.js:472:25)
      javascript.0	2020-11-23 20:21:32.700	warn	(4564) at Object.callback (C:\Program Files\iobroker\Smart\node_modules\iobroker.javascript\lib\sandbox.js:1055:38)
      javascript.0	2020-11-23 20:21:32.700	warn	(4564) at Object.<anonymous> (script.js.Beleuchtung.Wohnzimmer.Decke_Wechsel:23:5)
      javascript.0	2020-11-23 20:21:32.700	warn	(4564) at setState (C:\Program Files\iobroker\Smart\node_modules\iobroker.javascript\lib\sandbox.js:1358:20)
      javascript.0	2020-11-23 20:21:32.699	warn	(4564) You are assigning a string to the state "loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods" which expects a array. Please fix your code to use a array or change the state type to string.
      

      Ich habe das Skript sehr ähnlich noch in drei weiteren Varianten. Auch diese sind dann mit gleichem Ergebnis ohne Funktion. (also zur gleichen Zeit!)

      Nun zur temporären Lösung:
      Den Loxone-Adapter neu Starten. Dann geht es wieder

      Ich habe das Skript in Blocky erstellt, aber zur Ansicht hier als Javascript:

      var Liste;
      
      
      on({id: "loxone.0.161b228d-0221-4deb-ffff374e0faf5b1f.active"/*I2: active*/, val: true}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        setState("javascript.0.Licht_Wohnzimmer_Wechsel"/*Licht_Wohnzimmer_Wechsel*/, true);
      });
      
      on({id: "loxone.0.15f7f8f8-0354-8f27-ffff4473333fa291.active"/*Doppelklick: active*/, val: true}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        setState("javascript.0.Licht_Wohnzimmer_Wechsel"/*Licht_Wohnzimmer_Wechsel*/, true);
      });
      
      on({id: "javascript.0.Licht_Wohnzimmer_Wechsel"/*Licht_Wohnzimmer_Wechsel*/, val: true}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        Liste = ['Entspannen', 'TV', 'Party', 'Durchgang Abend', 'Durchgang', 'Aus'];
        if (getState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods").val == 'Durchgang') {
          setState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods"/*Wohnzimmer-Belruchtung: activeMoods*/, (Liste[0]));
        } else if (getState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods").val == 'Entspannen') {
          setState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods"/*Wohnzimmer-Belruchtung: activeMoods*/, (Liste[1]));
        } else if (getState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods").val == 'TV') {
          setState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods"/*Wohnzimmer-Belruchtung: activeMoods*/, (Liste[2]));
        } else if (getState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods").val == 'Party') {
          setState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods"/*Wohnzimmer-Belruchtung: activeMoods*/, (Liste[3]));
        } else {
          setState("loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods"/*Wohnzimmer-Belruchtung: activeMoods*/, (Liste[4]));
        }
        setState("javascript.0.Licht_Wohnzimmer_Wechsel"/*Licht_Wohnzimmer_Wechsel*/, false);
      });
      

      Nun am ende noch die entscheidende Frage:
      Hat jemand eine Idee und am besten auch eine Lösung?

      UncleSam paul53 2 Replies Last reply Reply Quote 0
      • UncleSam
        UncleSam Developer @A1uca2d last edited by UncleSam

        @A1uca2d sagte in Skript teilweise ohne Funktion -:

        (4564) You are assigning a string to the state "loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods" which expects a array. Please fix your code to use a array or change the state type to string.

        Die Fehlermeldung sagt ja alles: du setzt einen String anstelle eines Arrays. Der Wert sollte etwas wie ["Schlafen"] sein.

        Wobei dann wohl mein Code im Adapter nicht funktioniert... kannst du bitte ein Issue auf Github erfassen?

        A UncleSam 2 Replies Last reply Reply Quote 0
        • A
          A1uca2d @UncleSam last edited by

          @UncleSam schön waren, es, wenn es so einfach wäre.

          Das ist nicht das Problem. Die Warnung zeigt er immer, aber damit funktioniert es... Halt nur eine Warnung... Aber wo tatsächlich das Problem ist wird ich nicht.

          Nur zur Sicherheit: ich hatte auch ein sehr zu umfangreiches Skript gebaut um das Array zu füllen, aber auch das führt in unregelmäßigen Abständen zu dem Fehler und den Meldungen im Log.

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

            @A1uca2d sagte:

            Hat jemand eine Idee und am besten auch eine Lösung?

            Was soll das Script machen ? Soll es die Liste vom links nach rechts durchgehen und dann wieder von Anfang ?

            Als erstes solltest Du den Datenpunkt-Typ des Datenpunktes mit der ID "loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods" von "array" in "string" ändern.

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

              @paul53 sagte in Skript teilweise ohne Funktion -:

              Als erstes solltest Du den Datenpunkt-Typ des Datenpunktes mit der ID "loxone.0.12394f68-03bc-e827-ffff374e0faf5b1f.activeMoods" von "array" in "string" ändern.

              Bitte nicht einfach in Datenpunkten etwas von Hand ändern. In diesem Fall wäre das zwar ein Workaround, aber später schaffst du dir damit möglicherweise neue Probleme, auf die nie jemand kommen wird.

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

                @UncleSam sagte:

                später schaffst du dir damit möglicherweise neue Probleme

                Da ich Loxone nicht kenne: Was soll dieser Datenpunkt "activeMoods" enthalten ?

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

                  @paul53 sagte:

                  Soll es die Liste vom links nach rechts durchgehen und dann wieder von Anfang ?

                  Falls ich dies richtig interpretiert habe, hier eine Vorschlag, der mit dem Datenpunkt vom Typ "array" funktionieren sollte:

                  Blockly_temp.JPG

                  1 Reply Last reply Reply Quote 0
                  • A
                    A1uca2d @UncleSam last edited by

                    @UncleSam @paul53
                    Das mit dem String und Array ist wie gesagt nicht das Problem.
                    wenn es so wäre, hätte ich es mit einem entsprechenden Skript selber gelöst.

                    Ich habe gerade noch mal etwas rumprobiert, und die gleichen Warnmeldungen erhalte ich im Log auch, wenn das Skript funktioniert. Ist in dem Fall als nicht aussagekräftig.

                    Kann es sein, dass es ein Problem vom Loxone-Adapter in Kombination mit Loxone ist?
                    Ich komme auf die Idee, da mir zuletzt auch in der Loxone-Config angezeigt wurde, dass es mit dem Baustein "Lichtsteuerung" Probleme gab. (Der Hinweis wird nicht mehr angezeigt)

                    Kann im alternativ tiefer im System nach Infos suchen, wo ggf. der Unterschied zu "funktioniert" und "funktioniert nicht" liegt?

                    1 Reply Last reply Reply Quote 0
                    • UncleSam
                      UncleSam Developer @UncleSam last edited by

                      @UncleSam sagte in Skript teilweise ohne Funktion -:

                      Wobei dann wohl mein Code im Adapter nicht funktioniert... kannst du bitte ein Issue auf Github erfassen?

                      @A1uca2d Genau, es ist ein Problem des Adapters, deshalb bitte Issue erfassen.

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        A1uca2d @UncleSam last edited by

                        @UncleSam

                        bereits von einem dritten geschehen.
                        https://github.com/UncleSamSwiss/ioBroker.loxone/issues/58

                        raintonr created this issue in UncleSamSwiss/ioBroker.loxone

                        closed activeMoods of lighting controller can get stuck/not sync properly #58

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        434
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        blockly javascript
                        3
                        10
                        544
                        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