Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. Adapter mit Bilder-Upload

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Adapter mit Bilder-Upload

Geplant Angeheftet Gesperrt Verschoben Entwicklung
55 Beiträge 5 Kommentatoren 3.9k Aufrufe 8 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Jey CeeJ Jey Cee

    @skb also kein eigener webserver, da das der Web Adapter übernimmt.

    SKBS Offline
    SKBS Offline
    SKB
    Developer Most Active
    schrieb am zuletzt editiert von
    #25

    @jey-cee Genau. Auch die socket.io Verbindung ist die von ioBroker. Alles "Bordmittel".

    ... wer nicht mit der Zeit geht, geht mit der Zeit ...

    Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

    1 Antwort Letzte Antwort
    0
    • SKBS SKB

      @haus-automatisierung Also, aus der Konfigseite versende ich so:

      const response = await new Promise((resolve) => {
      	$("#upload_info").text(`Uploading File ${Object.keys(uploadStatus).length || 1} of ${filesLength}!`);
      	socket.emit('sendTo', appProperties.namespace, '_uploadFile', { fileName: filename, fileData: file }, (res) => { resolve(res); })
      });
      

      im Adapter empfange ich dies so im onMessage Bereich:

      case '_uploadFile':
      const uploadPath = path.join(instanceDir + userFiles, obj.message.fileName);
      if (!fs.existsSync(uploadPath)) {
      	this.log.info(`Uploading a new file to: ${uploadPath}`);
      	fs.writeFile(uploadPath, obj.message.fileData, 'binary', (err) => {
      		if (err) {
      			this.log.error(`Could not upload the file ${uploadPath}. Error: ${err}`);
      			this.sendTo(obj.from, obj.command, { error: err, url: null }, obj.callback);
      		} else {
      			this.sendTo(obj.from, obj.command, { error: null, url: obj.message.fileName, msg: 'File uploaded successfully!' }, obj.callback);
      		}
      	});
      } else {
      	this.log.warn(`The file trying to upload already exists: ${uploadPath}`);
      	this.sendTo(obj.from, obj.command, { error: 'File already exists!', url: obj.message.fileName }, obj.callback);
      }
      break;
      
      Und hier kommt ab und an das Kommando nicht zurück.
      
      haus-automatisierungH Online
      haus-automatisierungH Online
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von
      #26

      @skb sagte in Adapter mit Bilder-Upload:

      Auch die socket.io Verbindung ist die von ioBroker. Alles "Bordmittel".

      Ja, aber Du baust Dir damit deinen eigenen Weg via:

      @skb sagte in Adapter mit Bilder-Upload:

      Also, aus der Konfigseite versende ich so:
      socket.emit('sendTo',

      Warum nicht mit socket.emit('writeFile64', wie oben verlinkt? Dann muss dein Adapter damit gar nichts machen und es läuft alles über das Frontend.

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      SKBS 1 Antwort Letzte Antwort
      0
      • haus-automatisierungH haus-automatisierung

        @skb sagte in Adapter mit Bilder-Upload:

        Auch die socket.io Verbindung ist die von ioBroker. Alles "Bordmittel".

        Ja, aber Du baust Dir damit deinen eigenen Weg via:

        @skb sagte in Adapter mit Bilder-Upload:

        Also, aus der Konfigseite versende ich so:
        socket.emit('sendTo',

        Warum nicht mit socket.emit('writeFile64', wie oben verlinkt? Dann muss dein Adapter damit gar nichts machen und es läuft alles über das Frontend.

        SKBS Offline
        SKBS Offline
        SKB
        Developer Most Active
        schrieb am zuletzt editiert von
        #27

        @haus-automatisierung Ach, schau an. Ok, "das geht"? ... ok, wo landet die Datei dann? Wie kann man sie dann wieder abrufen?

        ... wer nicht mit der Zeit geht, geht mit der Zeit ...

        Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

        haus-automatisierungH 1 Antwort Letzte Antwort
        0
        • SKBS SKB

          @haus-automatisierung Ach, schau an. Ok, "das geht"? ... ok, wo landet die Datei dann? Wie kann man sie dann wieder abrufen?

          haus-automatisierungH Online
          haus-automatisierungH Online
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von
          #28

          @skb Sagmal klickst Du auch irgend einen Link hier an oder liest was ich schreibe? :)

          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
          📚 Meine inoffizielle ioBroker Dokumentation

          SKBS 1 Antwort Letzte Antwort
          0
          • haus-automatisierungH haus-automatisierung

            @skb Sagmal klickst Du auch irgend einen Link hier an oder liest was ich schreibe? :)

            SKBS Offline
            SKBS Offline
            SKB
            Developer Most Active
            schrieb am zuletzt editiert von
            #29

            @haus-automatisierung Klar, tat ich :) Da ist die Funktion aufgeführt. Ok, in der Readme kommt dann:

            writeFile64(_adapter, fileName, data64, options, callback)

            Heisst im Endeffekt mache ich:

            socket.emit('writeFile64', 'energiefluss-erweitert.0', 'userFiles/Bild.jpg', Bild64Daten, function()');

            Die Datei bekomme ich dann auf dem anderen Weg wieder - ok.

            Mit readDir bekomme ich die Dinge dann aufgelistet zurück?

            ... wer nicht mit der Zeit geht, geht mit der Zeit ...

            Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

            haus-automatisierungH 1 Antwort Letzte Antwort
            0
            • SKBS SKB

              @haus-automatisierung Klar, tat ich :) Da ist die Funktion aufgeführt. Ok, in der Readme kommt dann:

              writeFile64(_adapter, fileName, data64, options, callback)

              Heisst im Endeffekt mache ich:

              socket.emit('writeFile64', 'energiefluss-erweitert.0', 'userFiles/Bild.jpg', Bild64Daten, function()');

              Die Datei bekomme ich dann auf dem anderen Weg wieder - ok.

              Mit readDir bekomme ich die Dinge dann aufgelistet zurück?

              haus-automatisierungH Online
              haus-automatisierungH Online
              haus-automatisierung
              Developer Most Active
              schrieb am zuletzt editiert von
              #30

              @skb sagte in Adapter mit Bilder-Upload:

              Mit readDir bekomme ich die Dinge dann aufgelistet zurück?

              Nochmal der Link...

              https://iobroker.readthedocs.io/de/latest/bestpractice/storefiles.html

              🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
              🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
              📚 Meine inoffizielle ioBroker Dokumentation

              SKBS 1 Antwort Letzte Antwort
              0
              • haus-automatisierungH haus-automatisierung

                @skb sagte in Adapter mit Bilder-Upload:

                Mit readDir bekomme ich die Dinge dann aufgelistet zurück?

                Nochmal der Link...

                https://iobroker.readthedocs.io/de/latest/bestpractice/storefiles.html

                SKBS Offline
                SKBS Offline
                SKB
                Developer Most Active
                schrieb am zuletzt editiert von
                #31

                @haus-automatisierung Ne, ich meine, wenn der User nun Bilder hochgeladen hat, die ich abrufen möchte. Da kenne ich ja nicht jeden Dateinamen. So bekäme ich das Verzeichs, oder?

                https://github.com/ioBroker/ioBroker.socket-classes?tab=readme-ov-file#readdir_adapter-dirname-options-callback

                ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                haus-automatisierungH 1 Antwort Letzte Antwort
                0
                • SKBS SKB

                  @haus-automatisierung Ne, ich meine, wenn der User nun Bilder hochgeladen hat, die ich abrufen möchte. Da kenne ich ja nicht jeden Dateinamen. So bekäme ich das Verzeichs, oder?

                  https://github.com/ioBroker/ioBroker.socket-classes?tab=readme-ov-file#readdir_adapter-dirname-options-callback

                  haus-automatisierungH Online
                  haus-automatisierungH Online
                  haus-automatisierung
                  Developer Most Active
                  schrieb am zuletzt editiert von
                  #32

                  @skb sagte in Adapter mit Bilder-Upload:

                  Da kenne ich ja nicht jeden Dateinamen.

                  Den Namen musst Du einfach als Attribut irgendwo anders speichern (in das Instance-Objekt o.ä. wo. der Rest deiner Config auch liegt).

                  🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                  🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                  📚 Meine inoffizielle ioBroker Dokumentation

                  SKBS 2 Antworten Letzte Antwort
                  0
                  • haus-automatisierungH haus-automatisierung

                    @skb sagte in Adapter mit Bilder-Upload:

                    Da kenne ich ja nicht jeden Dateinamen.

                    Den Namen musst Du einfach als Attribut irgendwo anders speichern (in das Instance-Objekt o.ä. wo. der Rest deiner Config auch liegt).

                    SKBS Offline
                    SKBS Offline
                    SKB
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #33

                    @haus-automatisierung Aber, mit dem readDir komme ich ja auch weiter. Ich schaue mal, wie das geht. Danke!
                    Dann geht dies ja wirklich besser, als gedacht 👌

                    ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                    Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                    1 Antwort Letzte Antwort
                    0
                    • haus-automatisierungH haus-automatisierung

                      @skb sagte in Adapter mit Bilder-Upload:

                      Da kenne ich ja nicht jeden Dateinamen.

                      Den Namen musst Du einfach als Attribut irgendwo anders speichern (in das Instance-Objekt o.ä. wo. der Rest deiner Config auch liegt).

                      SKBS Offline
                      SKBS Offline
                      SKB
                      Developer Most Active
                      schrieb am zuletzt editiert von SKB
                      #34

                      @haus-automatisierung Also so:

                      let fileData = await readImage(file);
                      
                      const response = await new Promise((resolve) => {
                          socket.emit('writeFile64', appProperties.namespace, 'userFiles/' + filename, fileData, (res) => { resolve(res); });
                      });
                      
                      console.log(response);
                      

                      Bekomme ich "null" zurück -.-

                      Auch ein:

                      const response_folder = await new Promise((resolve) => {
                          socket.emit('mkdir', appProperties.namespace, 'userFiles', (error) => { resolve(error); })
                      });
                      console.log(response_folder);
                      

                      Liefert leider "null".

                      ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                      Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                      haus-automatisierungH 1 Antwort Letzte Antwort
                      0
                      • SKBS Offline
                        SKBS Offline
                        SKB
                        Developer Most Active
                        schrieb am zuletzt editiert von
                        #35

                        Oder, kann man diese Commandos nun nicht über die "normale" socket Verbindung nutzen? Muss dazu doch noch der socket-client auf ioBroker installiert sein?

                        ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                        Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                        1 Antwort Letzte Antwort
                        0
                        • SKBS Offline
                          SKBS Offline
                          SKB
                          Developer Most Active
                          schrieb am zuletzt editiert von SKB
                          #36

                          Ah, read the manual hilft auch weiter :D Gibt null, wenn kein Fehler auftaucht. Also, der "upload" klappt sehr gut. Dankeschön erstmal!

                          Jetzt wäre natürlich die Frage, kommt man "so" an das Bild heran? Ich würde dem User gerne eine Auswahl seiner Bilder geben, die er nutzen kann und dann sieht er ja den Namen der Datei. Somit wäre es dann gut zu wissen, wie ich dann an die Datei komme und sie ausliefern kann - über den WebAdapter dann.

                          Die Datei steckt ja nun in der ioBroker DB. Wie könnte man sie via URL anzeigen?

                          Eine Idee?

                          Edit: Ist es richtig, das die Datei dann einfach über den Admin Adapter kommt? Habe ich nun mal "getestet" - über:
                          http://192.168.70.70:8081/files/Adapter.Instanz/Dateiname.jpg kommt genau das Base64 👌

                          @haus-automatisierung @Jey-Cee
                          Kann man sich darauf verlassen, das der Admin Adapter immer auf Port 8081 läuft? Nein, oder?
                          Welche Admin Instanz wird denn für die Datei-Ablage/Anzeige genutzt?

                          Aber: Dies funktioniert ja z.B. nicht von extern, denke ich, weil das Bild ja statisch verlinkt würde und dann auf den Host des Admin-Adapter zeigt. Ich frage mich noch, ob man das Bild nicht auch vom WebAdapter ausliefern lassen könnte?

                          ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                          Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                          haus-automatisierungH OliverIOO 2 Antworten Letzte Antwort
                          0
                          • SKBS SKB

                            Ah, read the manual hilft auch weiter :D Gibt null, wenn kein Fehler auftaucht. Also, der "upload" klappt sehr gut. Dankeschön erstmal!

                            Jetzt wäre natürlich die Frage, kommt man "so" an das Bild heran? Ich würde dem User gerne eine Auswahl seiner Bilder geben, die er nutzen kann und dann sieht er ja den Namen der Datei. Somit wäre es dann gut zu wissen, wie ich dann an die Datei komme und sie ausliefern kann - über den WebAdapter dann.

                            Die Datei steckt ja nun in der ioBroker DB. Wie könnte man sie via URL anzeigen?

                            Eine Idee?

                            Edit: Ist es richtig, das die Datei dann einfach über den Admin Adapter kommt? Habe ich nun mal "getestet" - über:
                            http://192.168.70.70:8081/files/Adapter.Instanz/Dateiname.jpg kommt genau das Base64 👌

                            @haus-automatisierung @Jey-Cee
                            Kann man sich darauf verlassen, das der Admin Adapter immer auf Port 8081 läuft? Nein, oder?
                            Welche Admin Instanz wird denn für die Datei-Ablage/Anzeige genutzt?

                            Aber: Dies funktioniert ja z.B. nicht von extern, denke ich, weil das Bild ja statisch verlinkt würde und dann auf den Host des Admin-Adapter zeigt. Ich frage mich noch, ob man das Bild nicht auch vom WebAdapter ausliefern lassen könnte?

                            haus-automatisierungH Online
                            haus-automatisierungH Online
                            haus-automatisierung
                            Developer Most Active
                            schrieb am zuletzt editiert von
                            #37

                            @skb sagte in Adapter mit Bilder-Upload:

                            Edit: Ist es richtig, das die Datei dann einfach über den Admin Adapter kommt?

                            Das sollte über den Web-Adapter auch so funktionieren. Müsste ich auch testen.

                            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                            📚 Meine inoffizielle ioBroker Dokumentation

                            SKBS 1 Antwort Letzte Antwort
                            0
                            • haus-automatisierungH haus-automatisierung

                              @skb sagte in Adapter mit Bilder-Upload:

                              Edit: Ist es richtig, das die Datei dann einfach über den Admin Adapter kommt?

                              Das sollte über den Web-Adapter auch so funktionieren. Müsste ich auch testen.

                              SKBS Offline
                              SKBS Offline
                              SKB
                              Developer Most Active
                              schrieb am zuletzt editiert von
                              #38

                              @haus-automatisierung

                              http://192.168.70.70:8082/files/Adapter.Instanz/Dateiname.jpg erscheint leider nichts
                              auch nicht via:
                              http://192.168.70.70:8082/Adapter.Instanz/Dateiname.jpg

                              ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                              Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                              haus-automatisierungH 1 Antwort Letzte Antwort
                              0
                              • SKBS SKB

                                @haus-automatisierung

                                http://192.168.70.70:8082/files/Adapter.Instanz/Dateiname.jpg erscheint leider nichts
                                auch nicht via:
                                http://192.168.70.70:8082/Adapter.Instanz/Dateiname.jpg

                                haus-automatisierungH Online
                                haus-automatisierungH Online
                                haus-automatisierung
                                Developer Most Active
                                schrieb am zuletzt editiert von
                                #39

                                @skb sagte in Adapter mit Bilder-Upload:

                                http://192.168.70.70:8082/Adapter.Instanz/Dateiname.jpg

                                Das muss gehen. Aber halt nur, wenn das nicht angehakt ist

                                Screenshot 2024-06-20 at 12.43.14.png

                                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                📚 Meine inoffizielle ioBroker Dokumentation

                                SKBS 1 Antwort Letzte Antwort
                                0
                                • haus-automatisierungH haus-automatisierung

                                  @skb sagte in Adapter mit Bilder-Upload:

                                  http://192.168.70.70:8082/Adapter.Instanz/Dateiname.jpg

                                  Das muss gehen. Aber halt nur, wenn das nicht angehakt ist

                                  Screenshot 2024-06-20 at 12.43.14.png

                                  SKBS Offline
                                  SKBS Offline
                                  SKB
                                  Developer Most Active
                                  schrieb am zuletzt editiert von
                                  #40

                                  @haus-automatisierung Ist bei mir nicht angehakt. Daher wundere ich mich.

                                  ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                                  Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                                  1 Antwort Letzte Antwort
                                  0
                                  • SKBS SKB

                                    Ah, read the manual hilft auch weiter :D Gibt null, wenn kein Fehler auftaucht. Also, der "upload" klappt sehr gut. Dankeschön erstmal!

                                    Jetzt wäre natürlich die Frage, kommt man "so" an das Bild heran? Ich würde dem User gerne eine Auswahl seiner Bilder geben, die er nutzen kann und dann sieht er ja den Namen der Datei. Somit wäre es dann gut zu wissen, wie ich dann an die Datei komme und sie ausliefern kann - über den WebAdapter dann.

                                    Die Datei steckt ja nun in der ioBroker DB. Wie könnte man sie via URL anzeigen?

                                    Eine Idee?

                                    Edit: Ist es richtig, das die Datei dann einfach über den Admin Adapter kommt? Habe ich nun mal "getestet" - über:
                                    http://192.168.70.70:8081/files/Adapter.Instanz/Dateiname.jpg kommt genau das Base64 👌

                                    @haus-automatisierung @Jey-Cee
                                    Kann man sich darauf verlassen, das der Admin Adapter immer auf Port 8081 läuft? Nein, oder?
                                    Welche Admin Instanz wird denn für die Datei-Ablage/Anzeige genutzt?

                                    Aber: Dies funktioniert ja z.B. nicht von extern, denke ich, weil das Bild ja statisch verlinkt würde und dann auf den Host des Admin-Adapter zeigt. Ich frage mich noch, ob man das Bild nicht auch vom WebAdapter ausliefern lassen könnte?

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von OliverIO
                                    #41

                                    @skb sagte in Adapter mit Bilder-Upload:

                                    über den WebAdapter dann

                                    evtl kannst du die Extenstion Funktionalität des Web-Adapters nutzen.

                                    https://github.com/ioBroker/ioBroker.web/blob/master/WEB-EXTENSIONS-HOWTO.md

                                    allgemein zu writeFile und readFile.
                                    ich gehe mal davon aus, das du es im rahmen eines eigenen adapter einsetzt und nicht aus dem javascript-adapter

                                    wir gehen von folgendem adapter aus: demoadapter mit instanz 0
                                    wenn ich dort mit writeFile("abc.txt",dateiinhalt);
                                    schreibe, dann ist die datei im folgenden verzeichnis zu finden (wenn nicht redis eingesetzt, aber ist ja wie gesagt irrelevant.)

                                    iobroker/iobroker-data/files/demoadapter.0/abc.txt
                                    

                                    wenn du diese datei dann über den webadapter abrufen möchtest, dann müsste der pfad unter

                                    http://192.168.x.x:8082/demoadapter.0/abc.txt
                                    

                                    zu finden sein
                                    die extension für den web-adapter kannst du nutzen, wenn du beim ausliefern noch was machen willst.
                                    beispieladapter, die das einsetzen
                                    Cameras: https://github.com/ioBroker/ioBroker.cameras/blob/master/lib/web.js
                                    Simple-api: https://github.com/ioBroker/ioBroker.simple-api/blob/master/lib/simpleapi.js#L73
                                    Proxy: https://github.com/ioBroker/ioBroker.proxy/blob/master/lib/proxy.js#L20
                                    Eufy-Security: https://github.com/bropat/ioBroker.eufy-security/blob/master/src/lib/web.ts (Typescript-implementation)
                                    REST-API: https://github.com/ioBroker/ioBroker.rest-api/blob/master/src/lib/rest-api.js#L67

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    SKBS OliverIOO 2 Antworten Letzte Antwort
                                    1
                                    • OliverIOO OliverIO

                                      @skb sagte in Adapter mit Bilder-Upload:

                                      über den WebAdapter dann

                                      evtl kannst du die Extenstion Funktionalität des Web-Adapters nutzen.

                                      https://github.com/ioBroker/ioBroker.web/blob/master/WEB-EXTENSIONS-HOWTO.md

                                      allgemein zu writeFile und readFile.
                                      ich gehe mal davon aus, das du es im rahmen eines eigenen adapter einsetzt und nicht aus dem javascript-adapter

                                      wir gehen von folgendem adapter aus: demoadapter mit instanz 0
                                      wenn ich dort mit writeFile("abc.txt",dateiinhalt);
                                      schreibe, dann ist die datei im folgenden verzeichnis zu finden (wenn nicht redis eingesetzt, aber ist ja wie gesagt irrelevant.)

                                      iobroker/iobroker-data/files/demoadapter.0/abc.txt
                                      

                                      wenn du diese datei dann über den webadapter abrufen möchtest, dann müsste der pfad unter

                                      http://192.168.x.x:8082/demoadapter.0/abc.txt
                                      

                                      zu finden sein
                                      die extension für den web-adapter kannst du nutzen, wenn du beim ausliefern noch was machen willst.
                                      beispieladapter, die das einsetzen
                                      Cameras: https://github.com/ioBroker/ioBroker.cameras/blob/master/lib/web.js
                                      Simple-api: https://github.com/ioBroker/ioBroker.simple-api/blob/master/lib/simpleapi.js#L73
                                      Proxy: https://github.com/ioBroker/ioBroker.proxy/blob/master/lib/proxy.js#L20
                                      Eufy-Security: https://github.com/bropat/ioBroker.eufy-security/blob/master/src/lib/web.ts (Typescript-implementation)
                                      REST-API: https://github.com/ioBroker/ioBroker.rest-api/blob/master/src/lib/rest-api.js#L67

                                      SKBS Offline
                                      SKBS Offline
                                      SKB
                                      Developer Most Active
                                      schrieb am zuletzt editiert von SKB
                                      #42

                                      @oliverio Danke für deine Ausführungen. Soweit bin ich schon und das klappt auch alles so ;)

                                      Bild wird in den Adapter-Pfad geschrieben, Web-Extension per Instanz geht auch :)

                                      Nur war von deinen Vorrednern die Rede, das ich doch meine Dateien mit Bordmitteln "in die Daten" des ioBroker schreiben soll. Das geht nur soweit, das ich die Datei als "base64" schreibe. Sie ist dann "irgendwo".

                                      Über den Admin Adapter Port 8081 komme ich dann an die Datei. Das ist auch gut - oder weniger, wenn ich das Bild doch gerne über den Web-Adapter haben möchte. Denn, wenn man relative Pfade nehmen wollen würde, würde die Datei ja per ioBroker extern nicht geladen werden können, da sie nur via Admin kommt.

                                      ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                                      Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                                      1 Antwort Letzte Antwort
                                      0
                                      • OliverIOO OliverIO

                                        @skb sagte in Adapter mit Bilder-Upload:

                                        über den WebAdapter dann

                                        evtl kannst du die Extenstion Funktionalität des Web-Adapters nutzen.

                                        https://github.com/ioBroker/ioBroker.web/blob/master/WEB-EXTENSIONS-HOWTO.md

                                        allgemein zu writeFile und readFile.
                                        ich gehe mal davon aus, das du es im rahmen eines eigenen adapter einsetzt und nicht aus dem javascript-adapter

                                        wir gehen von folgendem adapter aus: demoadapter mit instanz 0
                                        wenn ich dort mit writeFile("abc.txt",dateiinhalt);
                                        schreibe, dann ist die datei im folgenden verzeichnis zu finden (wenn nicht redis eingesetzt, aber ist ja wie gesagt irrelevant.)

                                        iobroker/iobroker-data/files/demoadapter.0/abc.txt
                                        

                                        wenn du diese datei dann über den webadapter abrufen möchtest, dann müsste der pfad unter

                                        http://192.168.x.x:8082/demoadapter.0/abc.txt
                                        

                                        zu finden sein
                                        die extension für den web-adapter kannst du nutzen, wenn du beim ausliefern noch was machen willst.
                                        beispieladapter, die das einsetzen
                                        Cameras: https://github.com/ioBroker/ioBroker.cameras/blob/master/lib/web.js
                                        Simple-api: https://github.com/ioBroker/ioBroker.simple-api/blob/master/lib/simpleapi.js#L73
                                        Proxy: https://github.com/ioBroker/ioBroker.proxy/blob/master/lib/proxy.js#L20
                                        Eufy-Security: https://github.com/bropat/ioBroker.eufy-security/blob/master/src/lib/web.ts (Typescript-implementation)
                                        REST-API: https://github.com/ioBroker/ioBroker.rest-api/blob/master/src/lib/rest-api.js#L67

                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von OliverIO
                                        #43

                                        @oliverio sagte in Adapter mit Bilder-Upload:

                                        wenn du diese datei dann über den webadapter abrufen möchtest, dann müsste der pfad unter

                                        http://192.168.x.x:8082/demoadapter.0/abc.txt
                                        

                                        der port des web-adapters ist 8082

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        SKBS 1 Antwort Letzte Antwort
                                        0
                                        • OliverIOO OliverIO

                                          @oliverio sagte in Adapter mit Bilder-Upload:

                                          wenn du diese datei dann über den webadapter abrufen möchtest, dann müsste der pfad unter

                                          http://192.168.x.x:8082/demoadapter.0/abc.txt
                                          

                                          der port des web-adapters ist 8082

                                          SKBS Offline
                                          SKBS Offline
                                          SKB
                                          Developer Most Active
                                          schrieb am zuletzt editiert von
                                          #44

                                          @oliverio ja, ist richtig.

                                          Sind aber jetzt 2 Dinge von denen wir sprechen.

                                          Mache ich den Upload über meinen Adapter per WriteFile via sendTo ist er im WebAdapter über die Extensions verfügbar.

                                          Mache ich den Upload über socket.emit('writeFile64', ...) landet er in den Objekten von ioBroker und kommt nur über den Admin http://x.x.x.:8081/files/...

                                          Zu 2. Kommt man an die Datei auch per WebAdapter?

                                          ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                                          Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                                          OliverIOO 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          956

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe