Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Gelöst] Lösung für Bilder für VIS verfügbar machen

    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] Lösung für Bilder für VIS verfügbar machen

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

      Ich weiß nicht wo ich das posten soll...

      Mein Problem war folgendes:
      Ich habe einen Server mit Tvheadend der mir im Netzwerk die Satelliten-Programm für Kodi zur Verfügung stellt.
      Dieser Server hat eine sogenannten Image-Cache indem er die Icons zu den Sendern bereitstellt.

      Abrufen kann man diese Icons über

      http://serverip:port/imagecache/1234"
      

      1234 steht hier für die ProgrammId und dort liegt das zugehörige PNG.

      Ein Problem ist, dass der Server eine Authentifizierung braucht.

      Die Lösungen die ich bisher immer gefunden habe, waren

      • png per wget runterladen (dort kann die Authentifizierung mitgegeben werden)
      • das file mit fs.readFile laden
      • diese Daten dann mit writeFile ins Verzeichnis und die DB für vis hochladen

      mit dem folgendem Skript konnte ich die Speicherung per WGET und das Einladen der Daten umgehen.

      const get_pic = async (picid) => {
          var url_pics = 'http://serverip:port/imagecache/' + picid;
          
          const user = "USER";
          const pwd = "geheimes Passwort";
          try {
              const res = await axios.post(
                  url_pics,
                  "",
                  {
                      responseType: 'arraybuffer',
                      contentType: 'image/png',
                      auth: {username: user, password: pwd}
                  }
                  );
              
              writeFile('vis.0', '/main/imagecache/'+ picid + '.png', res.data, function (error)
                                      {
                                          if ( error == null)    console.log('file written: '+ picid + '.png');
                                          else console.log ('error writing file: ' + error);
                                      }
                                  );
              return res.status; // Status übergeben für evtl. weitere Verarbeitung
          }
          catch (err) {
              console.error(err);
          }
      };
      

      Vielleicht ist das auch ein Lösungsansatz um von webcams Bilder abzuholen usw.

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

      Support us

      ioBroker
      Community Adapters
      Donate

      892
      Online

      31.9k
      Users

      80.2k
      Topics

      1.3m
      Posts

      1
      1
      122
      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