Navigation

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

    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

    Z
    • Profile
    • Following 0
    • Followers 0
    • Topics 0
    • Posts 3
    • Best 1
    • Groups 1

    zerraxys

    @zerraxys

    Starter

    1
    Reputation
    7
    Profile views
    3
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    zerraxys Follow
    Starter

    Best posts made by zerraxys

    • RE: Modulare Skripe

      @azamir Ja, ich denke das ist der Fall. Aber Skripte laufen doch auch so unabhängig voneinander. Ich wüsste nicht, wie man Daten zwischen denen teilen kann.

      posted in JavaScript
      Z
      zerraxys

    Latest posts made by zerraxys

    • RE: Unifi-Adapter Anmeldeprobleme

      @looxer01 Mit dem Fix treten die Timeouts immer noch gelegentlich auf. Er sollte es dann aber eine Minute später (oder was auch immer das Update-Interval ist) erneut versuchen. Das heißt, der Adapter sollte sich nicht mehr komplett weghängen.

      posted in ioBroker Allgemein
      Z
      zerraxys
    • RE: Modulare Skripe

      @azamir Ja, ich denke das ist der Fall. Aber Skripte laufen doch auch so unabhängig voneinander. Ich wüsste nicht, wie man Daten zwischen denen teilen kann.

      posted in JavaScript
      Z
      zerraxys
    • RE: Modulare Skripe

      Ich stehe vor dem selben Problem und experimentiere gerade mit einer Lösung über eval (ich weiß, das ist eigentlich evil). Als globale Funktion habe ich ein load Skript, dass wir folgt aussieht

      const loadCache = {};
      function load (filename) {
          if (!loadCache[filename]) {
              const path = require("path");
              const fs = require("fs");
      
              const fn = path.resolve("opt", "iobroker", "iobroker-scripts", "scripts", "Modules", filename) + ".js";
              const source = fs.readFileSync(fn, "utf8");
      
              var module = {};
              eval(source);
              loadCache[filename] = module.exports;
          }
      
          return loadCache[filename];
      };
      
      

      In meinen Skripten kann ich miit einem einfachen

      var meinModul = load("mein_modul");
      

      die Datei /opt/iobroker/iobroker-scripts/scripts/Modules/mein_modul.js laden und deren "module.exports"-Wert bekommen. Offene Ideen sind im Moment noch:

      • Das globale require überladen, damit es natürlicher aussieht
      • Den Pfad irgendwie zur Laufzeit bestimmen, damit er nicht hart eingebrannt ist

      Aber zumindest läuft es erstmal und ich kann anfangen, etwas Ordnung zu schaffen.

      posted in JavaScript
      Z
      zerraxys
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo