Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. LoxDUS

    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

    L
    • Profile
    • Following 0
    • Followers 0
    • Topics 20
    • Posts 94
    • Best 10
    • Groups 1

    LoxDUS

    @LoxDUS

    11
    Reputation
    110
    Profile views
    94
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    LoxDUS Follow
    Starter

    Best posts made by LoxDUS

    • RE: [Gelöst] Speicherlecks im ioBroker?

      @OliverIO
      Ich habe jetzt meine Scripte komplett aufgeräumt. Dabei ist mir aufgefallen das ich an vielen Stellen gerade die ganzen Timerobjekte nicht vernünftig mit clearTimeout() aufgeräumt habe. So habe ich glaube ich viele Objekte ins Nirvana geschickt und dort haben die sich im Speicher festgebissen.

      Ich habe jetzt alle Scripte wieder am laufen und der Speicher dümpelt seit Stunden mit 66% frei vor sich hin.
      83a03b7d-c28e-419e-aebc-2f3f0a2daed5-image.png

      d8d890bb-8d35-4488-b66e-2ed5a1ec2403-image.png
      (Die große Lücke kommt daher weil der SQL Datenbank zwischenzeitlich ausgestiegen ist weil ich den ioBroker neu gestartet hatte)

      Vielen Dank nochmal für die nützlichen Hinweise.

      Viele Grüße,

      Artur

      posted in Error/Bug
      L
      LoxDUS
    • RE: Verzeichnisrechte für VIS

      Ich habe noch ein wenig rumexperimentiert und folgendes heraus gefunden:
      Das speichern mit "writeFile" funktioniert wunderbar, auch wenn man in ein Verzeichnis schreibt das eigentlich nur ein Symbolischer Link ist. Diese Dateien werden aber nicht von VIS gesehen obwohl exakt die gleichen Berechtigungen und Owner an den Dateien hängen wie bei Dateien die von VIS gesehen werden (nämlich genau die Dateien, die man über den Dateiexplorer von VIS hochgeladen hat. Nehme ich die für VIS "nicht" sichtbaren Dateien und lade sie per Dateiexplorer von VIS in exakt das gleiche Verzeichnis hoch, werden sie auch von VIS gesehen. Ich vermute also das diese Dateien irgendwie noch "registriert" werden müssen damit VIS sie sieht....

      @Peoples
      Vielen Dank für den Hinweis. Ich habe mir Dein Script mal angesehen. Prinzipiell habe ich das gleiche gemacht. Bis auf diesen kleinen Unterschied:

      ...
       var data = fs.readFileSync('/tmp/image.jpg');
          writeFile('vis.'+visInstance, imageFolder + fname, data, function (error) {
      ...
      

      Hier wird dann wahrscheinlich (mit "fs.readFileSync" - ich weis es aber nicht -) die Bilddatei der DB bekannt gemacht? Das habe ich vorher, also mit der "alten" js.controller Version (<2.0) nicht gemacht und es hatte funktioniert.
      Wie auch immer, ich habe Deinen Code genommen und meinen Bedürfnissen ein wenig angepasst und nun funktioniert es auch bei mir mit den Symbolischen Links auf die gemountete SD-Karte.

      Vielen Dank für deine Hilfe.

      Artur

      posted in Visualisierung
      L
      LoxDUS
    • RE: gelöst-wie writeFile() in js script nutzen

      So, habe nochmal ein wenig "rumgeforscht".

      Anscheinend geht hier durch das asynchrone Verhalten von Node.js so einiges durcheinander. Die Versuche das durch "process.nextTick" oder "await" und "premises" hinzubekommen sind bei mir fehlgeschlagen. Ich habe aber einen Weg gefunden wie es zumindest bei mir jetzt funktioniert die Bilder Zeitgerecht und so abzulegen das ich mit VIS darauf zugreifen kann (auch wenn sie auf einer gemounteten FAT32 SD-Karte liegen).

      Wenn ich das ganze asynchrone IO-Filehandling von Node.js richtig verstanden habe, sollte man in den Callback Funktionen das Filehandling einbauen. Denn nur dort ist sichergestellt das die File-Operation auch wirklich gelaufen ist. Wenn man das sequentiell im Quellcode schreibt kann es sein, dass, wegen der asynchronität von Node.js, sich Funktionen einander überholen.

      Meine Lösung sieht nun so aus:

      var KlingelBilder = ["","",""];
      function saveImage() {
          var time = new Date();
      
          // Bildnamen erzeugen
          var Name = 'Eing_'+time.getFullYear()+time.getMonth()+time.getDate()+'_'+time.getHours()+time.getMinutes()+time.getSeconds()+'.jpg';
          request.get({url: cam_img, encoding: 'binary'}, function (err, response, body) {
              if(err) {
                  log('Beim holen des Bildes ist ein Fehler aufgetreten!');
              } else
              {   fs.writeFile('/home/USB/bellpics/tmp.jpg', body, 'binary', function(err) {   
                      if (err) {
                          log('Fehler beim Speichern von Bild /home/USB/bellpics/tmp.jpg   Fehler:' + err, 'warn');
                       } else {
                          var data = fs.readFileSync('/home/USB/bellpics/tmp.jpg');
                          writeFile('vis.0', 'KameraBilder/' + Name, data, function (error) {
                              if(error) {
                                  log('Fehler beim Speichern von Bild KameraBilder/' + Name +'   Fehler:' + err, 'warn');
                              } else {
                                  // Bilder durchrotieren. An position 0 steht immer das letzte Bild
                                  log('Bild wurde als KameraBilder/' + Name +' gespeichert');
                                  KlingelBilder[2] = KlingelBilder[1];
                                  KlingelBilder[1] = KlingelBilder[0];
                                  KlingelBilder[0] = '/vis.0/KameraBilder/' + Name;
                                  setState('javascript.0.Sonderfunktionen.KlingelBild1', KlingelBilder[0]);
                                  setState('javascript.0.Sonderfunktionen.KlingelBild2', KlingelBilder[1]);
                                  setState('javascript.0.Sonderfunktionen.KlingelBild3', KlingelBilder[2]);
                              }
                          });
                       }
                  });
              }
          });
      
      }
      

      @Peoples
      Ich habe auch die exec Funktion wieder gegen das request.get (Zeile 7) ausgetauscht weil ich ungerne die exec-Funktion im Javascript-Adapter freischalte.

      Die Verzeichnisse kann man sich ja nach belieben anpassen....

      Viele Grüße,

      Artur

      posted in JavaScript
      L
      LoxDUS
    • RE: [HowTo] ioBroker Restore unter Linux durchführen

      ....-----^^^^ Oh man, das ist mir nicht aufgefallen ^^^^-----.....

      OK, ich habe jetzt mit

      iobroker set admin.0 --bind 0.0.0.0
      

      Das binding geändert und schwups .... es läuft.

      artur@ioBroker2:~$ iobroker list instances
      [sudo] Passwort für artur:
      + system.adapter.admin.0                 : admin                 -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
        system.adapter.alexa2.0                : alexa2                - disabled
      + system.adapter.backitup.0              : backitup              -  enabled
        system.adapter.cloud.0                 : cloud                 - disabled
      

      Vielen Dank für die schnelle Hilfe.
      Grüße,

      Artur

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: [Gelöst] Speicherlecks im ioBroker?

      Endstand 31.12.2020, 22:38Uhr:

      Es läuft wieder alles stabil.
      3732258b-5f82-4893-a049-e24f1859ee8a-image.png
      Der freie Speicher hat sich zwischen 64 und 66% eingependelt.
      Die Javascripte laufen alle und meine javascript Instanz hat sich auf eine feste Speicherauslastung eingelassen 🙂

      4f95db21-1d73-48eb-97c1-523c83abb6b3-image.png
      Ich habe tatsächlich noch in einem Skript einen setTimeout() und clearTimeout() Fehler gefunden.

      Mein FAZIT:

      • Das Know-How hier im Forum ist extrem hoch.

      • Die Verwendung von setTimeout(), setIntervall() sollte mit bedacht gewählt werden. Vielleicht werden durch ein Event/Trigger immer wieder neue Timer-Objekte angelegt und die zuvor angelegten Objekte sind als nicht mehr erreichbare Referenz irgendwo im Speicher sodass auch der Garbage Collector sie nicht mehr finden kann. Immer hinterfragen ob ggf. mit einem clearTimeout() oder clearIntervall() erzeugte Objekte (die Callbackfunktionen) gelöscht werden müssen.
        https://auth0.com/blog/four-types-of-leaks-in-your-javascript-code-and-how-to-get-rid-of-them/ war ein guter Ansatzpunkt.

      Viele Grüße und einen hervorragenden Start ins Jahr 2021!

      Artur

      posted in Error/Bug
      L
      LoxDUS
    • RE: Modbus adapter Danfoss ECL Comfort 310 auslesen

      @rossi73
      Ich nutze den
      DSD TECH USB to RS485 RS422 ...WS
      3feb6d62-5b0b-4016-9991-b44adac0689c-image.png

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: Modbus adapter Danfoss ECL Comfort 310 auslesen

      @rossi73
      Sieht bei mir dann so aus:
      019dc29c-4aca-48d0-9352-015fd18b32fd-image.png

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: Modbus adapter Danfoss ECL Comfort 310 auslesen

      Das hier ist die Javascript Routine um den Status der Pumpen und Ventile aus dem 16Bit Wort zu dekodieren:

      on({id: 'modbus.1.holdingRegisters.3998_Output'}, function (obj) {
          var b16 = getState('modbus.1.holdingRegisters.3998_Output').val;
          var v;
      
          // Bit       Funktion    Aktor
          // 0    1    Triac 1     M1 Auf
          // 1    2    Triac 2     M1 Zu
          // 2    4    Triac 3     M2
          // 3    8    Triac 4     M2
          // 4    16   Triac 5
          // 5    32   Triac 6
          // 6    64   Relais 1    P1
          // 7    128  Relais 2    P2
          // 8    256  Relais 3    P3
          // 9    512  Relais 4
          // 10   1024 Relais 5
          // 11   2048 Relais 6
      
          // P1
          if(b16 & 64) v = true;
          else v=false;
          setState('javascript.0.Sonderfunktionen.Heizung.P1', v);
      
          // P2
          if(b16 & 128) v = true;
          else v=false;
          setState('javascript.0.Sonderfunktionen.Heizung.P2', v);
      
          // P3
          if(b16 & 256) v = true;
          else v=false;
          setState('javascript.0.Sonderfunktionen.Heizung.P3', v);
      
          // M1 Motorventil
          if(b16 & 1) v = "Auf";
          else if(b16 & 2) v = "Zu";
          else v="0";
          setState('javascript.0.Sonderfunktionen.Heizung.M1', v);
      });
      

      Und hier runde ich die Sensorwerte:

      on(['modbus.1.holdingRegisters.10200_S1'/*Aussentemperatur*/, 
          'modbus.1.holdingRegisters.10202_S3'/*Vorlauftemperatur*/, 
          'modbus.1.holdingRegisters.10204_S5'/*Rücklauftemperatur*/, 
          'modbus.1.holdingRegisters.10205_S6'/*Obere Speichertemperatur*/], function (obj) {
          var AT16 = getState('modbus.1.holdingRegisters.10200_S1'/*Aussentemperatur*/).val;
          var AT;
      
          if(AT16>32767) AT16 = AT16-65535;
          AT = (AT16/100).toFixed(1); // Auf 1 Stelle nach Komma runden
      
          setState('javascript.0.Sonderfunktionen.Heizung.ATStrg', AT);
          setState('javascript.0.Sonderfunktionen.Heizung.Aussentemperatur'/*Aussentemperatur*/, AT16 / 100);
          setState('javascript.0.Sonderfunktionen.Heizung.Vorlauftemperatur'/*Vorlauftemperatur*/, getState('modbus.1.holdingRegisters.10202_S3'/*Vorlauftemperatur*/).val / 100);
          setState('javascript.0.Sonderfunktionen.Heizung.Ruecklauftemperatur'/*Ruecklauftemperatur*/, getState('modbus.1.holdingRegisters.10204_S5'/*Rücklauftemperatur*/).val / 100);
          setState('javascript.0.Sonderfunktionen.Heizung.Speichertemperatur'/*Speichertemperatur*/, getState('modbus.1.holdingRegisters.10205_S6'/*Obere Speichertemperatur*/).val / 100);       
      });
      
      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien

      Der Adapter liegt aktuell in einer Alpha auf GitHub - dort sind viele Dinge hinzugekommen und behoben - auch eine Galerie 😉

      Vielen Dank, nachdem ich die Alpha-Version installiert habe, habe ich die Galerie und kann darüber die Bilder hochladen und nutzen!

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien

      @arteck sagte in Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien:

      @loxdus hast du multihost ?? dann muss der adapter da istalliert sein wo die vis läuft

      Ne, habe kein Multihost System. Nachdem ich wie empfohlen die Alpha-Version installiert habe und darüber dann die Bilder hochladen kann, klappt es nun.
      Vielen Dank trotzdem für den Tipp.

      posted in ioBroker Allgemein
      L
      LoxDUS

    Latest posts made by LoxDUS

    • RE: Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien

      @arteck sagte in Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien:

      @loxdus hast du multihost ?? dann muss der adapter da istalliert sein wo die vis läuft

      Ne, habe kein Multihost System. Nachdem ich wie empfohlen die Alpha-Version installiert habe und darüber dann die Bilder hochladen kann, klappt es nun.
      Vielen Dank trotzdem für den Tipp.

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien

      Der Adapter liegt aktuell in einer Alpha auf GitHub - dort sind viele Dinge hinzugekommen und behoben - auch eine Galerie 😉

      Vielen Dank, nachdem ich die Alpha-Version installiert habe, habe ich die Galerie und kann darüber die Bilder hochladen und nutzen!

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien

      @sigi234 sagte in Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien:

      @loxdus
      Bilder/Icons müssen immer via Dateimanager hochgeladen werden und nicht ins Adapter Verzeichnis.

      Im Energiefluss Adapter habe ich keinen Dateimanager gefunden:
      19c9b471-6b1b-4fa6-a47f-c921a0f4e434-image.png

      ... oder meinst Du den Dateimanager von der VIS?
      Dann müsste ich doch aber auch im Energiefluss Adapter bei den Bildern den kompletten Pfad zu den VIS-Dateien angeben?

      posted in ioBroker Allgemein
      L
      LoxDUS
    • Energiefluss-Erweitert Adapter: Keine eigenen Bilddateien

      Liebe ioBroker Gemeinde,
      ich möchte in der Visualisierung des Energiefluss-Erweitert Adapters eigene Bilddateien darstellen.
      Dazu habe ich ein paar Bilder in das img\ Verzeichnis des Adapters hochgeladen:
      Beispiel: battery.png
      21ceb3a9-fce6-43c5-b25a-8e85f0864a80-image.png

      Wenn ich nun versuche die Datei in den Energiefluss Adapter einzubinden, zeigt er mir immer nur ein Quadrat mit dem Text 100 x 100 an:
      b93e5191-7943-463a-a66a-9fbd73c4509e-image.png

      in den Settings zu dem Bild habe ich meines Erachtens nach den richtigen Namen eingetragen: ae539fd7-8004-4207-97aa-963bcb9b80e6-image.png

      Wenn ich ein Bild, das mit dem Adapter installiert wurde, angebe z.B. tmp_img.png, Dann wird es angezeigt. Ich vermute nun, dass es an den Zugriffsrechten liegt. Wie man weiter ob im Screenshot sieht, sind die Dateien unter dem Besitzer "artur" angelegt worden und nicht "iobroker" (wie bei den anderen Dateien).

      Der user "artur" ist aber Mitglied der gruppe iobroker:
      857f8656-cb47-4470-a955-7bda5cffd860-image.png

      Habt ihr eine Idee wie ich die Bilder im Energiefluss Adapter nutzen kann?

      Vielen Dank,

      Artur

      posted in ioBroker Allgemein
      L
      LoxDUS
    • RE: VIS2 Editor wird nicht angezeigt

      @bluefox
      Habe jetzt aus GITHUB die Version 2.9.64 installiert.
      Weil mir der Adapter selber nur die Version 2.9.32 angeboten hat:
      1dfc1558-96a1-4428-ac16-f9d4770034dd-image.png

      Nun funktioniert VIS2 auch bei mir.

      Danke für eure Unterstützung,

      Artur

      posted in Visualisierung
      L
      LoxDUS
    • RE: VIS2 Editor wird nicht angezeigt

      @jogibear9988 @jogibear9988

      Habe jetzt mal ein wenig in der Browser Konsole rumgeklickt. Beim ersten Fehler wird die Zeile "**const permissions = ...."
      mit dem TypeError: "TypeError: Cannot read properties of undefined (reading 'permissions')" angemeckert. Der Code befindet sich in dem Modul: vis-2 -> static -> js ->Utils -> utils.tsx

      /**
       * Check if the user has access to the project in given mode
       *
       * @param options project, user and mode information
       */
      export function hasProjectAccess(options: CheckAccessOptions): boolean {
          const { project, user, editMode } = options;
      
          **const permissions = project.___settings.permissions?.[user] ?? DEFAULT_PERMISSIONS;**
      
          if (editMode && permissions.write) {
              return true;
          }
      
          return !editMode && permissions.read;
      }
      
      

      ... da ist also ein '?' enthalten

      posted in Visualisierung
      L
      LoxDUS
    • RE: VIS2 Editor wird nicht angezeigt

      @homoran

      1c67e8d4-b16c-4034-861a-bb3a4ce30bf7-image.png

      e41a9903-6087-4375-b3b4-40bf63ac18e4-image.png

      posted in Visualisierung
      L
      LoxDUS
    • RE: VIS2 Editor wird nicht angezeigt

      @homoran OK, Browserkonsole?

      Meinst du die Logs?
      Ich habe die VIS2 Instanz mal auf DEBUG umgestellt, deswegen der Neustart:

      2024-07-12 08:44:18.631  - info: host.ioBroker stopInstance system.adapter.vis-2.0 (force=false, process=true)
      2024-07-12 08:44:18.688  - info: host.ioBroker stopInstance system.adapter.vis-2.0 send kill signal
      2024-07-12 08:44:18.648  - info: vis-2.0 (2641535) Got terminate signal TERMINATE_YOURSELF
      2024-07-12 08:44:18.678  - info: vis-2.0 (2641535) terminating
      2024-07-12 08:44:18.684  - info: vis-2.0 (2641535) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
      2024-07-12 08:44:19.188  - info: vis-2.0 (2641535) terminating
      2024-07-12 08:44:19.443  - info: host.ioBroker instance system.adapter.vis-2.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
      2024-07-12 08:44:21.964  - info: host.ioBroker instance system.adapter.vis-2.0 started with pid 2846176
      2024-07-12 08:44:23.725  - debug: vis-2.0 (2846176) Redis Objects: Use Redis connection: 127.0.0.1:9001
      2024-07-12 08:44:23.824  - debug: vis-2.0 (2846176) Objects client ready ... initialize now
      2024-07-12 08:44:23.827  - debug: vis-2.0 (2846176) Objects create System PubSub Client
      2024-07-12 08:44:23.829  - debug: vis-2.0 (2846176) Objects create User PubSub Client
      2024-07-12 08:44:23.958  - debug: vis-2.0 (2846176) Objects client initialize lua scripts
      2024-07-12 08:44:23.973  - debug: vis-2.0 (2846176) Objects connected to redis: 127.0.0.1:9001
      2024-07-12 08:44:24.073  - debug: vis-2.0 (2846176) Redis States: Use Redis connection: 127.0.0.1:9000
      2024-07-12 08:44:24.119  - debug: vis-2.0 (2846176) States create System PubSub Client
      2024-07-12 08:44:24.123  - debug: vis-2.0 (2846176) States create User PubSub Client
      2024-07-12 08:44:24.246  - debug: vis-2.0 (2846176) States connected to redis: 127.0.0.1:9000
      2024-07-12 08:44:24.440  - debug: vis-2.0 (2846176) Plugin sentry Initialize Plugin (enabled=true)
      2024-07-12 08:44:25.156  - info: vis-2.0 (2846176) starting. Version 2.9.32 in /opt/iobroker/node_modules/iobroker.vis-2, node: v20.14.0, js-contr
      oller: 5.0.19
      2024-07-12 08:44:27.074  - info: vis-2.0 (2846176) vis-2 license is OK.
      2024-07-12 08:45:00.069  - info: javascript.0 (2421248) script.js.common.LichtSteuerung: -> Luftfeuchtigkeit im Bad ist höher als in Zuluft -> Ventilator an schalten
      2024-07-12 08:48:53.685  - info: web.0 (2422357) ==> Connected system.user.admin from ::ffff:192.168.178.147
      
      

      Sehe dort keine Fehler...

      Viele Grüße,

      Artur

      posted in Visualisierung
      L
      LoxDUS
    • VIS2 Editor wird nicht angezeigt

      Hallo,

      ich nutze die VIS seit einigen Jahren und bin, bis auf ein paar Kleinigkeiten auch recht zufrieden damit. Da ich nun irgendwo gelesen habe das es mit VIS2 jetzt auch die Möglichkeit gibt ein "responsive Design" zu erstellen, würde ich das gerne ausprobieren.

      Also, VIS2 über die Adapteransicht installiert und in der Instanz den Schlüssel gesetzt:
      b39b7015-bfa5-4e69-9cb1-ffd0694c849a-image.png
      ... alles anscheinend soweit OK...

      Es gibt aber zwei Probleme:

      1. Die VIS2 wird mir nicht wie die VIS1 in der Übersicht angeboten:
        38a0fcbe-eb6e-412a-a593-ee1d2bbe051b-image.png

      2. Wenn ich die VIS2 dann über den Link 30866164-d722-4440-b111-79bbf584646e-image.png in den Instanzen öffnen will kommt ganz kurz das "ioBroker" Zeichen (ihr wisst schon die "Lade-Animation (i)) dann habe ich aber nur noch einen schwarzen Browserinhalt:0e9824c4-cdf8-4c6c-a682-76b2d986a5aa-image.png

      Irgendeine Idee was ich machen kann um den VIS2 Editor anzuzeigen?

      Vielen Dank,

      Artur

      posted in Visualisierung
      L
      LoxDUS
    • RE: Solved: Update: ERROR: Process exited with code 25

      Vielen Dank für die Rückmeldungen.

      Ich habe noch ein wenig versucht die alte Installation wieder zu beleben, habe aber ständig irgendwelche Fehlermeldungen bekommen. Aus diesem Grund habe ich mir das

      /opt/iobroker/iobroker-data
      

      Verzeichnis gesichert, iobroker sowie nodejs und npm komplett deinstalliert und alles anschließend wieder sauber über den iobroker "Installer" installiert. so bin zumindest ich mir sicher das die richtigen Versionen installiert werden.
      Nach der Installation habe ich das obige data-Verezichnis wieder zurück an die Richtige stelle kopiert und noch einmal den iobroker fixer laufen lassen.

      Aktuell ist iobroker dabei die ganzen adapter zu laden und lädt aktuell die ganzen icons runter....

      Fazit für mich:
      nicht einfach wild die neuesten Versionen der Laufzeitumgebung laden und hoffen das schon alles laufen wird.

      Viele Grüße,

      Artur

      posted in ioBroker Allgemein
      L
      LoxDUS
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo