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. Skripten / Logik
  4. Blockly
  5. Datenpunkt als Datei speichern

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Datenpunkt als Datei speichern

Geplant Angeheftet Gesperrt Verschoben Blockly
12 Beiträge 5 Kommentatoren 1.1k Aufrufe 4 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.
  • C Offline
    C Offline
    ChrisBGL
    schrieb am zuletzt editiert von
    #1

    Wie kann ich den Inhalt eines Datenpunktes als Datei speichern?

    Ich bekomme in einen Datenpunkt über den MQTT-Adapter von Frigate einen Snapshot. Diesen möchte ich gerne über den Pushover-Adapter an mein Handy senden.

    Leider kann ich in Blockly den Datenpunkt nicht einfach als "Anhang" beim Pushover-Block angeben (funktioniert nicht). Was aber funktioniert ist, wenn ich eine Datei aus dem Linux-Dateisystem mit Pfad als "Anhang" angebe. Deshalb möchte ich den Snapshot aus dem Datenpunkt zuerst im Dateisystem (Debian) als Datei speichern und anschließend über Pushover versenden.

    Das speichern bekomme ich aber nicht hin und ich finde auch nirgends ein Beispiel.

    CinimodC 1 Antwort Letzte Antwort
    0
    • C ChrisBGL

      Wie kann ich den Inhalt eines Datenpunktes als Datei speichern?

      Ich bekomme in einen Datenpunkt über den MQTT-Adapter von Frigate einen Snapshot. Diesen möchte ich gerne über den Pushover-Adapter an mein Handy senden.

      Leider kann ich in Blockly den Datenpunkt nicht einfach als "Anhang" beim Pushover-Block angeben (funktioniert nicht). Was aber funktioniert ist, wenn ich eine Datei aus dem Linux-Dateisystem mit Pfad als "Anhang" angebe. Deshalb möchte ich den Snapshot aus dem Datenpunkt zuerst im Dateisystem (Debian) als Datei speichern und anschließend über Pushover versenden.

      Das speichern bekomme ich aber nicht hin und ich finde auch nirgends ein Beispiel.

      CinimodC Offline
      CinimodC Offline
      Cinimod
      Most Active
      schrieb am zuletzt editiert von Cinimod
      #2

      @chrisbgl

      Das senden einer Datei kann man über den Standart "senden block" lösen, den einfach auf pushover stellen und als parameter "file" angeben.

      Bildschirmfoto 2022-12-07 um 21.55.29.png

      Das Speichern funktioniert etwa so:

      Bildschirmfoto 2022-12-07 um 22.01.00.png

      wget --output-document /opt/iobroker/meinverzeichnis/meinbild.jpg 'hier_der_Link_zum_Schnappschuss'
      

      Synology DS918+, Fritzbox 6690 Cable, #Docker #Blockly #Vis2 #Deconz #Tasmota

      CinimodC 1 Antwort Letzte Antwort
      0
      • CinimodC Cinimod

        @chrisbgl

        Das senden einer Datei kann man über den Standart "senden block" lösen, den einfach auf pushover stellen und als parameter "file" angeben.

        Bildschirmfoto 2022-12-07 um 21.55.29.png

        Das Speichern funktioniert etwa so:

        Bildschirmfoto 2022-12-07 um 22.01.00.png

        wget --output-document /opt/iobroker/meinverzeichnis/meinbild.jpg 'hier_der_Link_zum_Schnappschuss'
        
        CinimodC Offline
        CinimodC Offline
        Cinimod
        Most Active
        schrieb am zuletzt editiert von
        #3

        wenn dein Schnappschuss Link in einem Datenpunkt steht kannst du es so machen:

        Bildschirmfoto 2022-12-07 um 22.16.24.png

        wget --output-document /opt/iobroker/meinverzeichnis/meinbild.jpg '
        

        Synology DS918+, Fritzbox 6690 Cable, #Docker #Blockly #Vis2 #Deconz #Tasmota

        HomoranH 1 Antwort Letzte Antwort
        0
        • CinimodC Cinimod

          wenn dein Schnappschuss Link in einem Datenpunkt steht kannst du es so machen:

          Bildschirmfoto 2022-12-07 um 22.16.24.png

          wget --output-document /opt/iobroker/meinverzeichnis/meinbild.jpg '
          
          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #4

          @cinimod sagte in Datenpunkt als Datei speichern:

          wenn dein Schnappschuss Link in einem Datenpunkt steht

          nee, da liegt der Schnappschuss selber.
          Er hat keine Datei.
          Die würde er gerne erzeugen un sie zu verschicken.

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          CinimodC 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @cinimod sagte in Datenpunkt als Datei speichern:

            wenn dein Schnappschuss Link in einem Datenpunkt steht

            nee, da liegt der Schnappschuss selber.
            Er hat keine Datei.
            Die würde er gerne erzeugen un sie zu verschicken.

            CinimodC Offline
            CinimodC Offline
            Cinimod
            Most Active
            schrieb am zuletzt editiert von Cinimod
            #5

            @homoran ja dann doch eher die erste Variante :man-tipping-hand:

            @ChrisBGL Stellt sich mir noch die Frage: Ist der SchnappschussName denn immer gleich ?

            Vielleicht zeigst mal was dann über Mqtt ankommt.

            Synology DS918+, Fritzbox 6690 Cable, #Docker #Blockly #Vis2 #Deconz #Tasmota

            C 1 Antwort Letzte Antwort
            0
            • CinimodC Cinimod

              @homoran ja dann doch eher die erste Variante :man-tipping-hand:

              @ChrisBGL Stellt sich mir noch die Frage: Ist der SchnappschussName denn immer gleich ?

              Vielleicht zeigst mal was dann über Mqtt ankommt.

              C Offline
              C Offline
              ChrisBGL
              schrieb am zuletzt editiert von ChrisBGL
              #6

              @cinimod Der Schnappschuss ist in dem Datenpunkt (nicht als Link). Deshalb möchte ich den Inhalt des Datenpunktes als Datei speichern.

              da5dc341-a413-4cab-bc29-59c1278870ed-image.png

              5c5a445a-f24c-451d-a681-cc01a39daecb-image.png

              C 1 Antwort Letzte Antwort
              0
              • C ChrisBGL

                @cinimod Der Schnappschuss ist in dem Datenpunkt (nicht als Link). Deshalb möchte ich den Inhalt des Datenpunktes als Datei speichern.

                da5dc341-a413-4cab-bc29-59c1278870ed-image.png

                5c5a445a-f24c-451d-a681-cc01a39daecb-image.png

                C Offline
                C Offline
                ChrisBGL
                schrieb am zuletzt editiert von
                #7

                Hat niemand eine Idee bzw. gibt es hier keine Möglichkeit? :confused:

                crunchipC 1 Antwort Letzte Antwort
                0
                • C ChrisBGL

                  Hat niemand eine Idee bzw. gibt es hier keine Möglichkeit? :confused:

                  crunchipC Abwesend
                  crunchipC Abwesend
                  crunchip
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von crunchip
                  #8

                  @chrisbgl vllt https://forum.iobroker.net/post/852618 oder https://forum.iobroker.net/post/652107

                  umgestiegen von Proxmox auf Unraid

                  C 1 Antwort Letzte Antwort
                  0
                  • crunchipC crunchip

                    @chrisbgl vllt https://forum.iobroker.net/post/852618 oder https://forum.iobroker.net/post/652107

                    C Offline
                    C Offline
                    ChrisBGL
                    schrieb am zuletzt editiert von
                    #9

                    @crunchip Danke, das hatte ich schon gelesen. Die anderen Nutzer haben es so gemacht, dass sie das Bild bei Auslösen des Events frisch von der Kamera oder Frigate ziehen. Das könnte ich auch machen, aber ist halt irgendwie unsinnig, wenn ich das Bild schon als Datenpunkt in iobroker drin habe. Ich kann es halt nur nicht speichern um es dann zu versenden.

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • C ChrisBGL

                      @crunchip Danke, das hatte ich schon gelesen. Die anderen Nutzer haben es so gemacht, dass sie das Bild bei Auslösen des Events frisch von der Kamera oder Frigate ziehen. Das könnte ich auch machen, aber ist halt irgendwie unsinnig, wenn ich das Bild schon als Datenpunkt in iobroker drin habe. Ich kann es halt nur nicht speichern um es dann zu versenden.

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #10

                      @chrisbgl

                      ich mache sowas mit einem png file - ob das miteinem jfif auch geht, weiß ich nicht

                      mein dp sieht so aus:

                      Image 128.png

                      das script sichert letztlich diesen code in ein bild im vis-folder zur anzeige in der vis - du müßtest es halt versenden

                      teil script:

                      const fs = require('fs');
                      let myArrFiles=[] 
                      let counter=0 ;
                      let myPather='/opt/iobroker/iobroker-data/files/vis.0/armin/img'
                       
                       log("schreibe file mit " + nameOfPic)
                       //log(Buffer.from(x))
                      
                      
                      var data = x.replace(/^data:image\/\w+;base64,/, "");
                      //var buf = new Buffer(data, 'base64');
                      
                      
                      
                      //writeFile('vis.0',"/PicFromBrowserUpload/"+nameOfPic,Buffer.from(x), function (){
                      writeFile('vis.0','/armin/img/'+nameOfPic,Buffer.from(data,'base64'), function (){    
                      
                      
                      //fs.readdir('/opt/iobroker/iobroker-data/files/vis.0/PicFromBrowserUpload', (err, files) => {
                      fs.readdir(myPather, (err, files) => {    
                        if (err)
                          console.log(err);
                        else {
                         // console.log("\nCurrent directory filenames:");
                          files.forEach(file => {
                            //console.log(fs.read());
                          counter++;
                          let sizer=fs.statSync(myPather+'/'+file).size;
                          myArrFiles.push({"Anzahl":counter,"Filename":file,"Größe":sizer})
                          })
                        }
                        
                        //log(JSON.stringify(files))
                        setState('0_userdata.0.UPLOADinVIS.VerzeichnisUploads',JSON.stringify(myArrFiles))
                      })
                      
                       } )
                      

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      C 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @chrisbgl

                        ich mache sowas mit einem png file - ob das miteinem jfif auch geht, weiß ich nicht

                        mein dp sieht so aus:

                        Image 128.png

                        das script sichert letztlich diesen code in ein bild im vis-folder zur anzeige in der vis - du müßtest es halt versenden

                        teil script:

                        const fs = require('fs');
                        let myArrFiles=[] 
                        let counter=0 ;
                        let myPather='/opt/iobroker/iobroker-data/files/vis.0/armin/img'
                         
                         log("schreibe file mit " + nameOfPic)
                         //log(Buffer.from(x))
                        
                        
                        var data = x.replace(/^data:image\/\w+;base64,/, "");
                        //var buf = new Buffer(data, 'base64');
                        
                        
                        
                        //writeFile('vis.0',"/PicFromBrowserUpload/"+nameOfPic,Buffer.from(x), function (){
                        writeFile('vis.0','/armin/img/'+nameOfPic,Buffer.from(data,'base64'), function (){    
                        
                        
                        //fs.readdir('/opt/iobroker/iobroker-data/files/vis.0/PicFromBrowserUpload', (err, files) => {
                        fs.readdir(myPather, (err, files) => {    
                          if (err)
                            console.log(err);
                          else {
                           // console.log("\nCurrent directory filenames:");
                            files.forEach(file => {
                              //console.log(fs.read());
                            counter++;
                            let sizer=fs.statSync(myPather+'/'+file).size;
                            myArrFiles.push({"Anzahl":counter,"Filename":file,"Größe":sizer})
                            })
                          }
                          
                          //log(JSON.stringify(files))
                          setState('0_userdata.0.UPLOADinVIS.VerzeichnisUploads',JSON.stringify(myArrFiles))
                        })
                        
                         } )
                        
                        C Offline
                        C Offline
                        ChrisBGL
                        schrieb am zuletzt editiert von
                        #11

                        @liv-in-sky Ich bekomme das einfach nicht ans laufen. Wo genau im Skript definiere ich denn den Datenpunkt, dessen Inhalt ich speichern möchte?

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • C ChrisBGL

                          @liv-in-sky Ich bekomme das einfach nicht ans laufen. Wo genau im Skript definiere ich denn den Datenpunkt, dessen Inhalt ich speichern möchte?

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #12

                          @chrisbgl das ist hier im script auch nicht drin - das ist kein laufendes script, sondern sollte nur ein paar befehle zeigen

                          in dieser zeile wird die datei, die im datenpunkt ist verändert - ohne ging es nicht - x wäre dann der inhalt des datenpunktes

                          var data = x.replace(/^data:image\/\w+;base64,/, "");
                          

                          diese zeile schreibt das file ins fiesystem, damit es von iobroker aus als file existiert

                          writeFile('vis.0','/armin/img/'+nameOfPic,Buffer.from(data,'base64'), function (){...
                          

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          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

                          813

                          Online

                          32.7k

                          Benutzer

                          82.4k

                          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