Entwicklung node-red-contrib-loxone für node-red

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • pmayer
    LoxBus Spammer
    • 27.02.2017
    • 379

    Du hattest recht. Wenn Raum und Kategorie beide auf "nicht verwenden" stehen, taucht das Control nicht auf da Loxone es im Structure-File nicht mitgibt. Wenn allerdings nur Raum oder nur Kategorie auf "nicht verwenden" steht, wird es mitgegeben und beim Verarbeiten kommt es zum Absturtz.

    Code:
    0|node-red | TypeError: Cannot read property 'name' of undefined
    0|node-red |     at LoxoneMiniserver.buildMsgObject (/home/pm/node-red-contrib-loxone/loxone/loxone.js:482:66)
    Die hohe CPU-Last kam wahrscheinlich vom ständigen Neustart von node-red.

    Ist in Version 0.10.0 gefixed.
    Außerdem habe ich mal das neue Farbschema und Logo von Loxone übernommen.

    node-red-contrib-loxond 0.10.0 ist bereits gepublished und kann über den Palette Manager aktualisiert werden.
    Die Designänderungen erfordern eventuell einen harten Reload (STRG-F5, CMD-SHIFT-R) des Browser im node-red Editor.

    Gruß,
    Patrik
    Zuletzt geändert von pmayer; 21.04.2018, 01:15.
    https://allgeek.de/

    https://twitter.com/pregopm, https://github.com/codmpm/
    https://github.com/codmpm/node-red-contrib-loxone
    https://github.com/codm/wled-controller

    Kommentar

    • Gast

      Das ging ja Flott! Besten dank!

      Andere Frage:

      Ist es möglich, wenn der Benutzer der im Node als eine spezielle Benutzergruppehinterlegt ist, objekte im miniserver nur dieser Gruppe freizugeben, damit gewisse eingänge nicht alle sehen? Jenachdem erscheint es ja nicht im structure file..

      weisst du wie ich meine?

      Gruss

      Kommentar


      • pmayer
        pmayer kommentierte
        Kommentar bearbeiten
        Hmm... wenn ich dich richtig verstehe richtet sich das nach dem User den du in der Miniserver-Verbindung hinterlegst. Es spricht nichts dageben den selben Miniserver mehrfach mit verschiedenen Benutzerns zu verbinden.
    • Gast

      Hallo

      Weitere Frage:
      Ist es möglich, z.b. eine Schaltuhr zu deaktivieren ohne einen virtuellen Eingang? Beim Eingang ist es ja möglich diese states einzulesen, aber schreiben nicht oder?

      Kommentar


      • pmayer
        pmayer kommentierte
        Kommentar bearbeiten
        Hast du mal in die Webservice-Doku geschaut?

        Bzw, welche States bekommst du den im Control-Out Node angeboten?

      • Gast
        Gast kommentierte
        Kommentar bearbeiten
        ok, ich denke mit dem Webservice krieg ich das so hin wie ich möchte. besten dank!

        Zur Zeit scheitere ich aber noch an einer doch recht simplen Logik und verstehe nicht wiso:
        if (msg.override > 0 && msg.value == 1 ) {
        msg.payload = true ;
        return msg;
        } else {
        msg.payload = false ;
        return msg;
        }

        msg.override ist eine Zeit vom Timer der Schaltuhr in Sekunden. msg.value der Ausgang. Ich will damit Anzeigen, ob Hand ein(value=1 und override !=0), Hand Aus(value =0 und override !=0) oder Uhr (override=0, funktioniert) aktiv ist..

      • pmayer
        pmayer kommentierte
        Kommentar bearbeiten
        Ah, du denkst noch nicht flow based... ;-)


        Schau dir trotzdem den Change-Node und seine Optionen noch mal an. Der kann auch abhängig Sachen im msg-object ändern.
    • eisenkarl
      Lox Guru
      • 28.08.2015
      • 1349

      Hallo, etwas widerwillig (bin schon 2 Tage dran!) muss ich euch um Hilfe bitten ;-)

      Ich bin dabei, die ibox2 Milight in nodered umzusetzen. Licht an, mode, Farbe usw funktioniert auch alles mit dem node inject, es glingt mir allerdings nicht, eine Farbe per Loxone Bewegungsmelder zu setzen. Versucht habe ich es mit change, das Milight braucht aber den topic rgb um eine Farbe zu schalten und change hat kein topic....

      Kann mir jemand helfen?

      Danke

      Kommentar

      • pmayer
        LoxBus Spammer
        • 27.02.2017
        • 379

        Klar hat der change-node ein Topic. Du kannst damit ja immer das komplette msg-object bearbeiten...

        https://allgeek.de/

        https://twitter.com/pregopm, https://github.com/codmpm/
        https://github.com/codmpm/node-red-contrib-loxone
        https://github.com/codm/wled-controller

        Kommentar


        • eisenkarl
          eisenkarl kommentierte
          Kommentar bearbeiten
          Oh man, wie einfach...
          Da bin ich nicht drauf gekommen

          DANKE
      • eisenkarl
        Lox Guru
        • 28.08.2015
        • 1349

        pmayer
        hättest du auch noch eine Idee, wie ich die Werte aus dem Lichtbaustein umwandeln kann in etwa so etwas:

        4.5.2018, 13:48:36node: 62aabbf.e1d0cc4
        rgb : msg.payload : string[16]
        "rgb(77, 50, 185)"

        Danke

        Kommentar

      • eisenkarl
        Lox Guru
        • 28.08.2015
        • 1349

        Hi pmayer ,
        auch für diesen Tip noch mal Danke, allerdings verlangt der converter einen array als input und ich bekomme diesen Fehler:


        msg : string[18]
        "Input not an array"

        Hast du evtl auch hierfür noch einen Tip?

        Kommentar


        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Ich weiß nicht wie deine Werte aussehen ;-)

          msg.payload = [255, 128, 64];

          ginge zum Beispiel. Die solltest in einem Change node auch einen Array befüllen können.
      • pmayer
        LoxBus Spammer
        • 27.02.2017
        • 379

        Version 0.10.1 wurde gerade released.

        Ich habe in 0.10.0 einen _dummen_ copy und paste Fehler gemacht wodurch die Kategorie im Raum angezeigt wurde. Vielen Dank fürs finden und für den Pull-Request kerrick !!
        https://allgeek.de/

        https://twitter.com/pregopm, https://github.com/codmpm/
        https://github.com/codmpm/node-red-contrib-loxone
        https://github.com/codm/wled-controller

        Kommentar


        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          gerne

        • Gast
          Gast kommentierte
          Kommentar bearbeiten
          Also ich weiß nicht warum, aber es läuft wieder... ich habe mir das leicht gemacht und den Node-Red LXC Container geklont. Fertig :-) Dann habe ich neben dem Backup auch immer was zum Testen.

        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          :-D
          Meld dich trotzdem, wenn es irgendwo hängt :-)
      • .:Chris:.
        Extension Master
        • 05.01.2016
        • 190

        Frage zur Verwendung der Loxone Schaltuhr in Kombination mit node-red:

        Jedes Mal wenn ich auf "full-deploy" gehe wird das komplette Objekt aktualisiert und (z.B. in meinem Fall) ein Trigger gestartet.

        Dies soll jedoch nur geschehen, wenn der payload = 1 ist.

        Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 1_ein.JPG
Ansichten: 838
Größe: 19,1 KB
ID: 156785Klicke auf die Grafik für eine vergrößerte Ansicht

Name: 2_aus.JPG
Ansichten: 833
Größe: 18,4 KB
ID: 156786

        Wie kann das realisiert werden?

        Danke
        .:Chris:.
        Angehängte Dateien

        Kommentar


        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Mach entweder keinen Full-Deploy oder prüfe mit dem Switch-Node auf payload == 1
          Zuletzt geändert von pmayer; 03.06.2018, 16:50.

        • .:Chris:.
          .:Chris:. kommentierte
          Kommentar bearbeiten
          Hallo pmayer,
          der Tipp mit "Switch-Node auf payload == 1" bracht leider nicht den gewünschten Erfolg.
          Andere Ideen?

        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Wie hast du es denn gebaut?
      • Drunkard
        LoxBus Spammer
        • 27.08.2015
        • 277

        Ich versuche mich gerade zum ersten Mal an NodeRed und ioBroker. Die Installation hat soweit geklappt....

        Ich möchte gern ein paar Werte von meinem Rasenmähroboter in der Loxone Visu anzeigen. Dafür habe ich folgenden Flow erstellt.
        Allerdings ist mir nicht ganz klar, was ich in den jeweiligen Properties eingeben muss? In der Loxone Config lege ich einen virtuellen Eingang dafür an?

        Danke und Gruß

        Kommentar


        • Drunkard
          Drunkard kommentierte
          Kommentar bearbeiten
          Eigentlich genau wie du es bereits hier: https://www.loxforum.com/forum/faqs-...3773#post93773 beschrieben hast.

        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Ach, dann ist gut :-) Super, dass es klappt!
          Zuletzt geändert von pmayer; 12.06.2018, 15:36.

        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Dann noch zur Ergänzung: Der function-node "set msg-uri" wird in der aktuellen Version des webservice-node nicht mehr gebraucht. Dort kann msg.payload einfach durch setzen des Hakens an die msg.uri angehangen werden.
      • Gast

        pmayer
        Ich habe ein Problem, über das ich berichten möchte, aber ich spreche kein Deutsch - Ist es in Ordnung, hier Englisch zu sprechen oder sollte ich ein Thema im englischen Forum öffnen und von hier aus einen Link dazu erstellen? Oder ich kann weiterhin Google Translate verwenden .....

        Es hat mit dem Konfigurationsknoten und seiner Persistenz bei Verbindungen zu tun, auch wenn keine Loxone-Knoten verwendet werden. Wenn Sie zwei Verbindungsprofile erstellen, aber nur eines verwenden, stellt das Original immer noch Verbindungen her sowie das zweite, selbst wenn Sie es gewaltsam löschen. Dadurch werden fortlaufende Protokollnachrichten mehrmals pro Sekunde gesendet:

        "Miniserver connection error: undefined"


        1|node-red | 28 Jul 14:39:15 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:39:15 - [error] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connection error: undefined
        1|node-red | 28 Jul 14:39:15 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:39:15 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:39:15 - [error] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connection error: undefined
        1|node-red | 28 Jul 14:39:15 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:39:16 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:39:16 - [info] [loxone-miniserver:e42aefbc.0dfdc] got structure file 2018-07-22 21:10:33
        1|node-red | 28 Jul 14:39:17 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:39:17 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:39:17 - [info] [loxone-miniserver:e42aefbc.0dfdc] got structure file 2018-07-22 21:10:33
        1|node-red | 28 Jul 14:39:17 - [info] [loxone-miniserver:e42aefbc.0dfdc] got structure file 2018-07-22 21:10:33
        1|node-red | 28 Jul 14:43:28 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:43:28 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:43:28 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:43:30 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:43:30 - [error] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connection error: undefined
        1|node-red | 28 Jul 14:43:30 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:43:30 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:43:30 - [error] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connection error: undefined
        1|node-red | 28 Jul 14:43:30 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed
        1|node-red | 28 Jul 14:43:32 - [info] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connected (192.168.1.95:80) using Token-Enc
        1|node-red | 28 Jul 14:43:32 - [error] [loxone-miniserver:e42aefbc.0dfdc] Miniserver connection error: undefined
        1|node-red | 28 Jul 14:43:32 - [info] [loxone-miniserver:e42aefbc.0dfdc] connection closed


        Zuletzt geändert von Gast; 28.07.2018, 16:45.

        Kommentar


        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Müsste es mit der aktuellsten Miniserverversion noch mal testen, aber hätte keine Erklärung warum es damit nicht mehr gehen sollte.
          Steht irgendwas in den Changelogs?

          Wie ist dein Pi mit deinem Netzwerk verbunden? Wenn per WLan, nimm bitte mal LAN.

        • Negropo
          Negropo kommentierte
          Kommentar bearbeiten
          pmayer Der Pi ist mittels WLAN verbunden. Eine Anbindung per LAN ist leider nicht möglich. Das lustige ist, trotz der Fehlermeldung funktioniert es jetzt.

        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Hmm... kannst du parallel mal einen "ping <miniserver>" vom Pi aus laufen lassen? Ich will nur ausschließen, dass es an der Netzwerkverbindung liegt.
      • loxvip
        Extension Master
        • 12.07.2016
        • 101

        Wenn ich den Stream In Node nutze und dann per Debug die Nachrichten anzeigen möchte kommt nichts für Category "Temperatur" an. Bei den anderen Categories kommt etws. Hat jemand eine Idee woran das liegen kann?
        Zuletzt geändert von loxvip; 14.08.2018, 09:00.

        Kommentar


        • loxvip
          loxvip kommentierte
          Kommentar bearbeiten
          hast du eine idee wo ich das finden könnte? es scheint nur beim ersten deploy aufzutreten. danach kommen die normalen werte.

        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Dann mach mal keinen "Full-Deploy", dort wird nämlich ein Reconnect ausgeführt und alle Werte in diesem Moment übertragen.

          Es sieht danach aus, dass deine "Tür" beim Verbinden noch keinen Wert hat (0) und von Loxone danach erst einen Wert bekommt der wieder übertragen wird. Works as designed ;-)
          Zuletzt geändert von pmayer; 16.08.2018, 14:05.

        • loxvip
          loxvip kommentierte
          Kommentar bearbeiten
          alles klar. hab jetzt einfach einen switch dahinter der nur bei state=value weiter macht.
      • loxvip
        Extension Master
        • 12.07.2016
        • 101

        Und noch eine andere Frage.. die Anbindung des Alexa Skills hat soweit geklappt. On/off funktioniert in Verbindung mit Control Out. Leider funktioniert aber das dimmen nicht. Muss man das vorher irgendwie umwandeln oder funktioniert das mit Control Out gar nicht? Danke!

        Kommentar


        • pmayer
          pmayer kommentierte
          Kommentar bearbeiten
          Das kommt auf den Baustein und den gewählten State an. Schau dazu mal in die Loxone-Dokumentation: https://www.loxone.com/dede/wp-conte...ile.pdf?x48792 - ist auch in der Beschreibung verlinkt: https://github.com/codmpm/node-red-contrib-loxone

          Falls der Baustein es wirklich nicht erlaubt, weil kein State, dann schau dir mal das dritte Beispiel am Github-Link an. Dort ist erklärt, wie du das über den Webservice-Node machen kannst.

        • loxvip
          loxvip kommentierte
          Kommentar bearbeiten
          es kommt so an:

          {"on":true,"bri":25,"on_off_command":false,"payloa d":"on","change_direction":0,"bri_normalized":0.25 ,"device_name":"Küche Licht","light_id":"81b1a4c0694078","port":38809,"_ msgid":"f50edd65.7873a"}

          mit einer change node und set msg.payload=msg.bri tut es :-) DANKE!
          Zuletzt geändert von loxvip; 16.08.2018, 09:34.
      • loxvip
        Extension Master
        • 12.07.2016
        • 101

        Noch eine Frage zur Control Out Node. Wenn ich per Alexa die Control Out Node ansteuere funktioniert das soweit. Wenn ich allerdings parallel per Taster das Licht anschalte oder der BMW das Licht anschaltet dann kommt der Befehl "aus" bzw. payload 0 nicht bei der Control Out Node an bzw. schaltet Loxone nicht das Licht aus. Hat die Control Out Node einen eigenen Merker ob das Licht an ist und muss man das vorher synchronisieren falls der Befehl mal nicht über die Node selbst kommt?

        Kommentar

        • pmayer
          LoxBus Spammer
          • 27.02.2017
          • 379

          Ließ noch mal die Beschreibung von node-red-contrib-loxone: https://github.com/codmpm/node-red-contrib-loxone ;-)

          You will get the data from Loxone's websocket as is. There is and will be no abstraction layer!
          und

          I've discovered that a switch element emits its current state (active) two times with the same value. The first one when the trigger-button is pressed and second one when the button is released - so take care of this as it might give you unexpected results. This could be catched with a delay node. Also keep in mind, that this element sends 1/0 but expects to be fed with On/Off/Pulse.
          Es gibt keinen Merker - oder ähnlich - in den Nodes. Der Taster gibt dir zwei Events (msg.payload), ein mal 1 und ein mal 0. Du musst dir den entsprechend Event isolieren. Der Status des Lichtbausteins kommt per control-in, den du dann natürlich entsprechend in deine Alexa-Logik einbauen musst.

          Kommt aber natürlich auf deine Programmierung an :-)
          Zuletzt geändert von pmayer; 17.08.2018, 15:42.
          https://allgeek.de/

          https://twitter.com/pregopm, https://github.com/codmpm/
          https://github.com/codmpm/node-red-contrib-loxone
          https://github.com/codm/wled-controller

          Kommentar


          • Xenobiologist
            Xenobiologist kommentierte
            Kommentar bearbeiten
            Soll ich dir mal ein paar Beispiele schicken, wie ich Alexa und Loxone über Node-RED kombiniert habe?

          • pmayer
            pmayer kommentierte
            Kommentar bearbeiten
            Sorry, dann hatte ich dich falsch verstanden. Ich dachte du wolltest den Zustand "umschalten". Dafür bräuchtest du ihn per Control-In.

            Das halte ich für eine gute Idee Xenobiologist 👍

          • svethi
            svethi kommentierte
            Kommentar bearbeiten
            Der Control Out schickt rein den Befehl. Egal was da grad ist. Er ist auch nicht das Control im MiniServer. Es ist rein ein Sender. Wenn Du 0 sendest und zur gleichen Zeit über andere Wege was anderes vorgibst, gewinnt das, was zu letzt eintrifft.
        Lädt...