Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Einsteigerfragen
  4. [gelöst] Datenpunkt mit base64 in Bilddatei schreiben

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    1.5k

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.3k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    1.1k

[gelöst] Datenpunkt mit base64 in Bilddatei schreiben

Geplant Angeheftet Gesperrt Verschoben Einsteigerfragen
15 Beiträge 3 Kommentatoren 913 Aufrufe 3 Beobachtet
  • Ä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.
  • OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von OliverIO
    #6

    @accessburn

    https://stackoverflow.com/questions/6926016/how-can-i-save-a-base64-encoded-image-to-disk

    let imgstr = getState("datepunktidmitbild");
    var base64Data = imgstr.rawBody.replace(/^data:image\/png;base64,/, "");
    require("fs").writeFile("out.png", base64Data, 'base64', function(err) {
      console.log(err);
    });
    

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

    A 1 Antwort Letzte Antwort
    0
    • OliverIOO OliverIO

      @accessburn

      https://stackoverflow.com/questions/6926016/how-can-i-save-a-base64-encoded-image-to-disk

      let imgstr = getState("datepunktidmitbild");
      var base64Data = imgstr.rawBody.replace(/^data:image\/png;base64,/, "");
      require("fs").writeFile("out.png", base64Data, 'base64', function(err) {
        console.log(err);
      });
      
      A Offline
      A Offline
      accessburn
      schrieb am zuletzt editiert von
      #7

      Danke @oliverio , habe ich einfach mal kopiert und die werte angepasst.
      76938d8c-b342-4f18-97dc-7499596aea69-image.png

      haus-automatisierungH OliverIOO 2 Antworten Letzte Antwort
      0
      • A accessburn

        Danke @oliverio , habe ich einfach mal kopiert und die werte angepasst.
        76938d8c-b342-4f18-97dc-7499596aea69-image.png

        haus-automatisierungH Offline
        haus-automatisierungH Offline
        haus-automatisierung
        Developer Most Active
        schrieb am zuletzt editiert von haus-automatisierung
        #8

        @accessburn

        const value = getState('mihome-vacuum.0.cleanmap.map64').val;
        const base64str = value.replace(/^data:image\/png;base64,/, '');
        const base64data = Buffer.from(base64str, 'base64');
        
        writeFile('0_userdata.0', '/cleanmap.png', base64data, (err) => {
            if (!err) {
                console.info('File written');
            } else {
                console.error(err);
            }
        });
        

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

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

          @accessburn

          const value = getState('mihome-vacuum.0.cleanmap.map64').val;
          const base64str = value.replace(/^data:image\/png;base64,/, '');
          const base64data = Buffer.from(base64str, 'base64');
          
          writeFile('0_userdata.0', '/cleanmap.png', base64data, (err) => {
              if (!err) {
                  console.info('File written');
              } else {
                  console.error(err);
              }
          });
          
          A Offline
          A Offline
          accessburn
          schrieb am zuletzt editiert von
          #9

          @haus-automatisierung

          on({ id: [].concat(['mihome-vacuum.0.cleanmap.map64']), change: 'ne' }, async (obj) => {
          
              const value = getState('mihome-vacuum.0.cleanmap.map64').val;
              const base64str = value.replace(/^data:image\/png;base64,/, '');
              const base64data = Buffer.from(base64str, 'base64');
              
              writeFile('0_userdata.0', '/cleanmap.png', base64data, (err) => {
                  if (!err) {
                      console.info('File written');
                  } else {
                      console.error(err);
                  }
              });
          
            // console.error(getState('mihome-vacuum.0.cleanmap.map64').val);
          });
          

          Vielen Dank, das klappte schon mal auf anhieb.
          Macht das so Sinn mit dem "change"?

          haus-automatisierungH 1 Antwort Letzte Antwort
          0
          • A accessburn

            @haus-automatisierung

            on({ id: [].concat(['mihome-vacuum.0.cleanmap.map64']), change: 'ne' }, async (obj) => {
            
                const value = getState('mihome-vacuum.0.cleanmap.map64').val;
                const base64str = value.replace(/^data:image\/png;base64,/, '');
                const base64data = Buffer.from(base64str, 'base64');
                
                writeFile('0_userdata.0', '/cleanmap.png', base64data, (err) => {
                    if (!err) {
                        console.info('File written');
                    } else {
                        console.error(err);
                    }
                });
            
              // console.error(getState('mihome-vacuum.0.cleanmap.map64').val);
            });
            

            Vielen Dank, das klappte schon mal auf anhieb.
            Macht das so Sinn mit dem "change"?

            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von haus-automatisierung
            #10

            @accessburn sagte in Datenpunkt mit base64 in Bilddatei schreiben:

            Macht das so Sinn mit dem "change"?

            Ja, wenn es nur eine ID ist, würde ich mir aber das Array sparen:

            on({ id: 'mihome-vacuum.0.cleanmap.map64', change: 'ne' }, async (obj) => {
            

            Und Du kannst direkt mit dem Wert arbeiten (ohne den nochmal zu holen):

            on({ id: 'mihome-vacuum.0.cleanmap.map64', change: 'ne' }, async (obj) => {
                const value = obj.state.val;
                const base64str = value.replace(/^data:image\/png;base64,/, '');
                const base64data = Buffer.from(base64str, 'base64');
                
                writeFile('0_userdata.0', '/cleanmap.png', base64data, (err) => {
                    if (!err) {
                        console.info('File written');
                    } else {
                        console.error(err);
                    }
                });
            });
            

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

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

              @accessburn sagte in Datenpunkt mit base64 in Bilddatei schreiben:

              Macht das so Sinn mit dem "change"?

              Ja, wenn es nur eine ID ist, würde ich mir aber das Array sparen:

              on({ id: 'mihome-vacuum.0.cleanmap.map64', change: 'ne' }, async (obj) => {
              

              Und Du kannst direkt mit dem Wert arbeiten (ohne den nochmal zu holen):

              on({ id: 'mihome-vacuum.0.cleanmap.map64', change: 'ne' }, async (obj) => {
                  const value = obj.state.val;
                  const base64str = value.replace(/^data:image\/png;base64,/, '');
                  const base64data = Buffer.from(base64str, 'base64');
                  
                  writeFile('0_userdata.0', '/cleanmap.png', base64data, (err) => {
                      if (!err) {
                          console.info('File written');
                      } else {
                          console.error(err);
                      }
                  });
              });
              
              A Offline
              A Offline
              accessburn
              schrieb am zuletzt editiert von
              #11

              @haus-automatisierung sagte in Datenpunkt mit base64 in Bilddatei schreiben:

              n({ id: 'mihome-vacuum.0.cleanmap.map64', change: 'ne' }, async (obj) => {

              Sehr cool. Danke! ♥
              Diese Sprache beherrsche ich einfach nicht. Bin in PHP groß geworden ;-)

              haus-automatisierungH 1 Antwort Letzte Antwort
              0
              • A accessburn

                @haus-automatisierung sagte in Datenpunkt mit base64 in Bilddatei schreiben:

                n({ id: 'mihome-vacuum.0.cleanmap.map64', change: 'ne' }, async (obj) => {

                Sehr cool. Danke! ♥
                Diese Sprache beherrsche ich einfach nicht. Bin in PHP groß geworden ;-)

                haus-automatisierungH Offline
                haus-automatisierungH Offline
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von
                #12

                @accessburn sagte in Datenpunkt mit base64 in Bilddatei schreiben:

                Bin in PHP groß geworden

                Ja, ich auch.

                Gerade 2 Tage lang alle PHP-Klassen des Online-Shops auf PHP 8.3 und strict types umgestellt...

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

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

                  @accessburn sagte in Datenpunkt mit base64 in Bilddatei schreiben:

                  Bin in PHP groß geworden

                  Ja, ich auch.

                  Gerade 2 Tage lang alle PHP-Klassen des Online-Shops auf PHP 8.3 und strict types umgestellt...

                  A Offline
                  A Offline
                  accessburn
                  schrieb am zuletzt editiert von
                  #13

                  @haus-automatisierung
                  Na das passt ja. :-)

                  Aber Frage, würde sich das mit Blockly umsetzen lassen?

                  haus-automatisierungH 1 Antwort Letzte Antwort
                  0
                  • A accessburn

                    @haus-automatisierung
                    Na das passt ja. :-)

                    Aber Frage, würde sich das mit Blockly umsetzen lassen?

                    haus-automatisierungH Offline
                    haus-automatisierungH Offline
                    haus-automatisierung
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #14

                    @accessburn sagte in Datenpunkt mit base64 in Bilddatei schreiben:

                    würde sich das mit Blockly umsetzen lassen?

                    Zu 90%, ja.

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

                    1 Antwort Letzte Antwort
                    0
                    • A accessburn

                      Danke @oliverio , habe ich einfach mal kopiert und die werte angepasst.
                      76938d8c-b342-4f18-97dc-7499596aea69-image.png

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

                      @accessburn

                      ahja das rawbody hatte ich nicht entfernt

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

                      1 Antwort Letzte Antwort
                      0

                      Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                      Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                      Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                      Registrieren Anmelden
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      579

                      Online

                      32.9k

                      Benutzer

                      83.2k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2026
                      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