Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Telegram Bild direkt schicken, ohne Zwischenspeichern

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    797

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

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

Telegram Bild direkt schicken, ohne Zwischenspeichern

Scheduled Pinned Locked Moved JavaScript
javascript
29 Posts 3 Posters 4.2k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • coyoteC Offline
    coyoteC Offline
    coyote
    Most Active
    wrote on last edited by
    #1

    Hey,

    ich würde gerne ein Bild direkt von einer Webserver URL mit Telegram verschicken, folgende Befehle habe ich gefunden, geht aber nicht:

    sendTo('telegram.0', {
        text: fs.readFileSync('http://192.168.XX.XX:5000/garage/car/best.jpg'),
        type: 'photo'
    });
    

    oder auch:

    sendTo('telegram.0', "http://192.168.XX.XX:5000/garage/car/best.jpg");
    

    Folgender Fehler im Log:

    javascript.0	2020-12-07 11:32:09.301	error	(26946) at Script.runInContext (vm.js:133:20)
    javascript.0	2020-12-07 11:32:09.301	error	(26946) at script.js.Skript_1:23:3
    javascript.0	2020-12-07 11:32:09.301	error	(26946) at script.js.Skript_1:19:1
    javascript.0	2020-12-07 11:32:09.301	error	(26946) at test (script.js.Skript_1:14:14)
    javascript.0	2020-12-07 11:32:09.301	error	(26946) at ProtectFs.readFileSync (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:23:36)
    javascript.0	2020-12-07 11:32:09.301	error	(26946) at readFileSync (fs.js:343:35)
    javascript.0	2020-12-07 11:32:09.301	error	(26946) at Object.openSync (fs.js:443:3)
    javascript.0	2020-12-07 11:32:09.300	error	(26946) script.js.Skript_1: Error: ENOENT: no such file or directory, open '192.168.XX.XX:5000/garage/car/best.jpg'
    

    zu 2.:

    telegram.0	2020-12-07 11:38:25.563	error	(1425) Cannot send photo [chatId - 182393659]: Error: ETELEGRAM: 400 Bad Request: wrong file identifier/HTTP URL specified
    

    Die Datei ist aber vorhanden, wenn ich die Adresse direkt im Browser eingebe und auch wenn ich das Bild vorher speichere, geht es auch:

    // Bild speichern
    function saveImage() {
        var source_url = 'http://192.168.XX.XX:PORT/cgi-bin/api.cgi?cmd=Snap&channel=0&user=XXXX&password=XXXX'; 
        request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
            fs.writeFile(dest_path + 'cambild.jpeg', body, 'binary', function(err) {
    
            if (err) {
                log('Fehler beim Bild speichern: ' + err, 'warn');
            } else {
                log('Webcam Bild gespeichert');
                sendImage(dest_path + 'cambild.jpeg');
            }
          }); 
        });
    }
    
    // Bild an telegram schicken 
    function sendImage (pfad) {
            sendTo('telegram', {text: pfad, caption: 'Garage Car'});  //Bild mit Text
    }
    

    Dachte eigentlich, dass ich das Bild direkt von der URL über Telegram schicken kann. Jemand ne Idee?

    coyoteC 1 Reply Last reply
    0
    • coyoteC coyote

      Hey,

      ich würde gerne ein Bild direkt von einer Webserver URL mit Telegram verschicken, folgende Befehle habe ich gefunden, geht aber nicht:

      sendTo('telegram.0', {
          text: fs.readFileSync('http://192.168.XX.XX:5000/garage/car/best.jpg'),
          type: 'photo'
      });
      

      oder auch:

      sendTo('telegram.0', "http://192.168.XX.XX:5000/garage/car/best.jpg");
      

      Folgender Fehler im Log:

      javascript.0	2020-12-07 11:32:09.301	error	(26946) at Script.runInContext (vm.js:133:20)
      javascript.0	2020-12-07 11:32:09.301	error	(26946) at script.js.Skript_1:23:3
      javascript.0	2020-12-07 11:32:09.301	error	(26946) at script.js.Skript_1:19:1
      javascript.0	2020-12-07 11:32:09.301	error	(26946) at test (script.js.Skript_1:14:14)
      javascript.0	2020-12-07 11:32:09.301	error	(26946) at ProtectFs.readFileSync (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:23:36)
      javascript.0	2020-12-07 11:32:09.301	error	(26946) at readFileSync (fs.js:343:35)
      javascript.0	2020-12-07 11:32:09.301	error	(26946) at Object.openSync (fs.js:443:3)
      javascript.0	2020-12-07 11:32:09.300	error	(26946) script.js.Skript_1: Error: ENOENT: no such file or directory, open '192.168.XX.XX:5000/garage/car/best.jpg'
      

      zu 2.:

      telegram.0	2020-12-07 11:38:25.563	error	(1425) Cannot send photo [chatId - 182393659]: Error: ETELEGRAM: 400 Bad Request: wrong file identifier/HTTP URL specified
      

      Die Datei ist aber vorhanden, wenn ich die Adresse direkt im Browser eingebe und auch wenn ich das Bild vorher speichere, geht es auch:

      // Bild speichern
      function saveImage() {
          var source_url = 'http://192.168.XX.XX:PORT/cgi-bin/api.cgi?cmd=Snap&channel=0&user=XXXX&password=XXXX'; 
          request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
              fs.writeFile(dest_path + 'cambild.jpeg', body, 'binary', function(err) {
      
              if (err) {
                  log('Fehler beim Bild speichern: ' + err, 'warn');
              } else {
                  log('Webcam Bild gespeichert');
                  sendImage(dest_path + 'cambild.jpeg');
              }
            }); 
          });
      }
      
      // Bild an telegram schicken 
      function sendImage (pfad) {
              sendTo('telegram', {text: pfad, caption: 'Garage Car'});  //Bild mit Text
      }
      

      Dachte eigentlich, dass ich das Bild direkt von der URL über Telegram schicken kann. Jemand ne Idee?

      coyoteC Offline
      coyoteC Offline
      coyote
      Most Active
      wrote on last edited by
      #2

      Keiner ne Idee woran das liegt?

      Ralla66R 1 Reply Last reply
      0
      • coyoteC coyote

        Keiner ne Idee woran das liegt?

        Ralla66R Offline
        Ralla66R Offline
        Ralla66
        Most Active
        wrote on last edited by
        #3

        @coyote

        Idee schon, mache das aber per E Mail nicht Telegramm,
        Bin gerade im Backup, mache später Bilder.
        Warum sendest du nicht direkt das Bild von der Cam mit
        http://192.168.XX.XX:PORT/cgi-bin/api.cgi?cmd=Snap&channel=0&user=XXXX&password=XXXX

        coyoteC 1 Reply Last reply
        0
        • Ralla66R Ralla66

          @coyote

          Idee schon, mache das aber per E Mail nicht Telegramm,
          Bin gerade im Backup, mache später Bilder.
          Warum sendest du nicht direkt das Bild von der Cam mit
          http://192.168.XX.XX:PORT/cgi-bin/api.cgi?cmd=Snap&channel=0&user=XXXX&password=XXXX

          coyoteC Offline
          coyoteC Offline
          coyote
          Most Active
          wrote on last edited by
          #4

          @Ralla66 ja, natürlich würde das gehen, direkt das Bild der Cam zu holen. Aber hier geht es um Objekterkennung, heißt, wird ein Objekt erkannt, wird davon ein Snapshot erstellt und zwar mit dem Frame, der die höchste Objekt Bewertung hat.

          Ich habe es ja die ganze Zeit so gelöst, wie du es sagst. Wenn über den MQTT die Objekterkennung rein kam, habe ich einfach einen Snapshot der Cam per Telegram verschickt, dachte nur, da es ja eh auf dem anderen Rechner hinterlegt ist, könnte ich ja auch direkt dieses Bild nutzen ohne es nochmal auf dem ioBroker zu speichern und dann zu verschicken.

          Laut Telegram Adapter Beschreibung sollte es ja auch gehen, aber ich weiß nicht, warum es so nicht geht

          Ralla66R 1 Reply Last reply
          0
          • coyoteC coyote

            @Ralla66 ja, natürlich würde das gehen, direkt das Bild der Cam zu holen. Aber hier geht es um Objekterkennung, heißt, wird ein Objekt erkannt, wird davon ein Snapshot erstellt und zwar mit dem Frame, der die höchste Objekt Bewertung hat.

            Ich habe es ja die ganze Zeit so gelöst, wie du es sagst. Wenn über den MQTT die Objekterkennung rein kam, habe ich einfach einen Snapshot der Cam per Telegram verschickt, dachte nur, da es ja eh auf dem anderen Rechner hinterlegt ist, könnte ich ja auch direkt dieses Bild nutzen ohne es nochmal auf dem ioBroker zu speichern und dann zu verschicken.

            Laut Telegram Adapter Beschreibung sollte es ja auch gehen, aber ich weiß nicht, warum es so nicht geht

            Ralla66R Offline
            Ralla66R Offline
            Ralla66
            Most Active
            wrote on last edited by Ralla66
            #5

            @coyote
            Bei mir bei Alarm werden Bilder und Videos vor Ort gespeichert.
            Hier so das Thema Beweissicherung.
            Zur Info bekomme ich 3 Fotos bei Alarm über den auslösenden Melder per E-Mail zugesandt.
            Hier wird nichts gespeichert, die Fotos werden von der Cam direkt über IO versand.
            Wenn nötig kann ich dann über VPN auf meine Kameras schalten.
            Wobei diese direkt auf die auslösende Alarmcam schaltet.

            coyoteC 1 Reply Last reply
            0
            • Ralla66R Ralla66

              @coyote
              Bei mir bei Alarm werden Bilder und Videos vor Ort gespeichert.
              Hier so das Thema Beweissicherung.
              Zur Info bekomme ich 3 Fotos bei Alarm über den auslösenden Melder per E-Mail zugesandt.
              Hier wird nichts gespeichert, die Fotos werden von der Cam direkt über IO versand.
              Wenn nötig kann ich dann über VPN auf meine Kameras schalten.
              Wobei diese direkt auf die auslösende Alarmcam schaltet.

              coyoteC Offline
              coyoteC Offline
              coyote
              Most Active
              wrote on last edited by
              #6

              @Ralla66 OK, kannst mir ja nachher mal zeigen wie, vllt kann ich es bei Telegram so auch anwenden

              Ralla66R 1 Reply Last reply
              0
              • coyoteC coyote

                @Ralla66 OK, kannst mir ja nachher mal zeigen wie, vllt kann ich es bei Telegram so auch anwenden

                Ralla66R Offline
                Ralla66R Offline
                Ralla66
                Most Active
                wrote on last edited by
                #7

                @coyote

                Bitte schön :

                Bild senden A_E.jpg

                coyoteC 1 Reply Last reply
                0
                • Ralla66R Ralla66

                  @coyote

                  Bitte schön :

                  Bild senden A_E.jpg

                  coyoteC Offline
                  coyoteC Offline
                  coyote
                  Most Active
                  wrote on last edited by
                  #8

                  @Ralla66 ok, danke. Aber dann scheint es mit E-Mail zu funktionieren und mit Telegram nicht, mache ja eigentlich nichts anderes, siehe ersten Post.
                  Ich nehme einfach das vorhandene jpg File und will mir das per Telegram schicken, macht er aber nicht

                  Ralla66R 1 Reply Last reply
                  0
                  • coyoteC coyote

                    @Ralla66 ok, danke. Aber dann scheint es mit E-Mail zu funktionieren und mit Telegram nicht, mache ja eigentlich nichts anderes, siehe ersten Post.
                    Ich nehme einfach das vorhandene jpg File und will mir das per Telegram schicken, macht er aber nicht

                    Ralla66R Offline
                    Ralla66R Offline
                    Ralla66
                    Most Active
                    wrote on last edited by Ralla66
                    #9

                    @coyote
                    Dann mußt du erst einmal best.jpg immer überschreiben.
                    Timing auch ne Sache, erst speichern, 2 sec pause , dann senden.
                    Mach mal ein Timeout 2 Sek dazwischen.
                    Error: ENOENT: no such file or directory, open '192.168.XX.XX:5000/garage/car/best.jpg
                    Da ist wohl im Pfad kein Bild da.

                    N coyoteC 2 Replies Last reply
                    0
                    • Ralla66R Ralla66

                      @coyote
                      Dann mußt du erst einmal best.jpg immer überschreiben.
                      Timing auch ne Sache, erst speichern, 2 sec pause , dann senden.
                      Mach mal ein Timeout 2 Sek dazwischen.
                      Error: ENOENT: no such file or directory, open '192.168.XX.XX:5000/garage/car/best.jpg
                      Da ist wohl im Pfad kein Bild da.

                      N Offline
                      N Offline
                      Nahasapee
                      wrote on last edited by
                      #10

                      @coyote ich glaube du musst den link übergeben als text nicht das fs objekt
                      entsprechende code im adapter ist da:
                      https://github.com/iobroker-community-adapters/ioBroker.telegram/blob/b94deeea6c2afdb9f37c8f05eb9b4d88e01ca4f2/main.js#L602

                      bsp:

                      
                          sendTo('telegram.0', {
                              chatId : getState('telegram.0.communicate.requestChatId'/*User ID of last received request*/).val,
                              text : "https://cdn.prod.www.spiegel.de/images/371e5371-21a1-4e98-818d-fa44aa58bf7a_w872_r1.77_fpx50_fpy22.jpg",
                              type: 'photo'
                        });
                      
                      1 Reply Last reply
                      0
                      • Ralla66R Ralla66

                        @coyote
                        Dann mußt du erst einmal best.jpg immer überschreiben.
                        Timing auch ne Sache, erst speichern, 2 sec pause , dann senden.
                        Mach mal ein Timeout 2 Sek dazwischen.
                        Error: ENOENT: no such file or directory, open '192.168.XX.XX:5000/garage/car/best.jpg
                        Da ist wohl im Pfad kein Bild da.

                        coyoteC Offline
                        coyoteC Offline
                        coyote
                        Most Active
                        wrote on last edited by
                        #11

                        @Ralla66 best.jpg wird immer bei Objekterkennung überschrieben. Gebe ich diesen Pfad im Browser ein, ist ja das Bild da.
                        Daher verstehe ich nicht, warum er sagt "no such file or directory", das Bild ist definitv vorhanden

                        N Ralla66R 2 Replies Last reply
                        0
                        • coyoteC coyote

                          @Ralla66 best.jpg wird immer bei Objekterkennung überschrieben. Gebe ich diesen Pfad im Browser ein, ist ja das Bild da.
                          Daher verstehe ich nicht, warum er sagt "no such file or directory", das Bild ist definitv vorhanden

                          N Offline
                          N Offline
                          Nahasapee
                          wrote on last edited by
                          #12

                          @coyote vielleicht hat dein iobroker keine lese rechte?

                          coyoteC 1 Reply Last reply
                          0
                          • N Nahasapee

                            @coyote vielleicht hat dein iobroker keine lese rechte?

                            coyoteC Offline
                            coyoteC Offline
                            coyote
                            Most Active
                            wrote on last edited by
                            #13

                            @Nahasapee hm, ist ein Argument. Jetzt ist die Frage, wie gebe ich ioBroker lese Rechte, falls es daran liegt

                            N 1 Reply Last reply
                            0
                            • coyoteC coyote

                              @Ralla66 best.jpg wird immer bei Objekterkennung überschrieben. Gebe ich diesen Pfad im Browser ein, ist ja das Bild da.
                              Daher verstehe ich nicht, warum er sagt "no such file or directory", das Bild ist definitv vorhanden

                              Ralla66R Offline
                              Ralla66R Offline
                              Ralla66
                              Most Active
                              wrote on last edited by
                              #14

                              @coyote
                              das ist wohl eher das hier:
                              da es ja eh auf dem anderen Rechner hinterlegt ist
                              Direkt von der Cam geht ja.

                              1 Reply Last reply
                              0
                              • coyoteC coyote

                                @Nahasapee hm, ist ein Argument. Jetzt ist die Frage, wie gebe ich ioBroker lese Rechte, falls es daran liegt

                                N Offline
                                N Offline
                                Nahasapee
                                wrote on last edited by
                                #15

                                @coyote chmod o+r MyFile

                                coyoteC 1 Reply Last reply
                                0
                                • N Nahasapee

                                  @coyote chmod o+r MyFile

                                  coyoteC Offline
                                  coyoteC Offline
                                  coyote
                                  Most Active
                                  wrote on last edited by
                                  #16

                                  @Nahasapee @Ralla66 aber egal von welchem Gerät im Netzwerk ich diese URL aufrufe, bekomme ich das Bild angezeigt, zumindest im Browser

                                  Ralla66R N 2 Replies Last reply
                                  0
                                  • coyoteC coyote

                                    @Nahasapee @Ralla66 aber egal von welchem Gerät im Netzwerk ich diese URL aufrufe, bekomme ich das Bild angezeigt, zumindest im Browser

                                    Ralla66R Offline
                                    Ralla66R Offline
                                    Ralla66
                                    Most Active
                                    wrote on last edited by
                                    #17

                                    @coyote
                                    ja ok, dann teste Telegramm,
                                    leg das Bild ab wo Telgramm läuft und rufe das ab im Browser und mit Telegramm.

                                    coyoteC 1 Reply Last reply
                                    0
                                    • coyoteC coyote

                                      @Nahasapee @Ralla66 aber egal von welchem Gerät im Netzwerk ich diese URL aufrufe, bekomme ich das Bild angezeigt, zumindest im Browser

                                      N Offline
                                      N Offline
                                      Nahasapee
                                      wrote on last edited by
                                      #18

                                      @coyote hast du den code oben versucht von mir? ich kann das bild ohne zwischenspeichern verschicken!

                                      coyoteC 2 Replies Last reply
                                      0
                                      • Ralla66R Ralla66

                                        @coyote
                                        ja ok, dann teste Telegramm,
                                        leg das Bild ab wo Telgramm läuft und rufe das ab im Browser und mit Telegramm.

                                        coyoteC Offline
                                        coyoteC Offline
                                        coyote
                                        Most Active
                                        wrote on last edited by
                                        #19

                                        @Ralla66 wenn ich es so wie im ersten Post (letzter Code Tag) abrufe und zwar nicht direkt die URL der Cam, sondern die URL mit Endung /best.jpg, dann als "cambild.jpg" unter einem Verzeichnis in ioBroker speichere und das wiederum mit Telegram verschicke, geht es ohne Probleme

                                        1 Reply Last reply
                                        0
                                        • N Nahasapee

                                          @coyote hast du den code oben versucht von mir? ich kann das bild ohne zwischenspeichern verschicken!

                                          coyoteC Offline
                                          coyoteC Offline
                                          coyote
                                          Most Active
                                          wrote on last edited by
                                          #20

                                          @Nahasapee werde ich morgen mal testen, vllt geht das

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          360

                                          Online

                                          32.8k

                                          Users

                                          82.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe