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. Skripten / Logik
  4. JavaScript
  5. (Gelöst) Probleme mit Skript (Bild an Telegram senden)

NEWS

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

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    675

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

(Gelöst) Probleme mit Skript (Bild an Telegram senden)

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
5 Beiträge 3 Kommentatoren 368 Aufrufe 1 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.
  • amg_666A Offline
    amg_666A Offline
    amg_666
    schrieb am zuletzt editiert von amg_666
    #1

    Hallo, ich werte einen HM-Klingelsensor aus und wenn Klingel gedrückt wird, soll ein Bild einer Webcam an meinen Telegram account gesendet werden.
    Das läuft gefühlt seit Jahren stabil, ich habe jetzt aber gesehen, dass Fehler im Log sind und weiß da nicht wirklich weiter.
    Beta-Repository, alle Adapter aktuell, node-js 20.15.1, npm 10.7.0, js-controller 6.0.9.

    Das Skript:

    url_snapshot = 'http://192.168.1.30/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=XXXXX';
    
    on({id:"hm-rpc.0.MEQ0657107.1.PRESS_SHORT", val: true}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      await etwas_tun();
    });
    
    async function etwas_tun() {
        var fs = require('fs');
        request.get({url: url_snapshot, encoding: 'binary'}, function (err, response, body) {
                fs.writeFile('/tmp/snap.jpg', body, 'binary', function(err) {
                    if (err) {
                        console.error(err);
                         } else {
                        console.log('Snapshot sent');
                        sendTo('telegram.0', {text: '/tmp/snap.jpg',chatId: 'XXXXXXX', caption: 'Es hat geklingelt !'});
                        }
                    }); 
                });     
    }
    
    

    Wenn hm-rpc.0....PRESS_SHORT auslöst, kommt folgendes log:

    288
    
    Log-Größe: 195.1 KB
    Zeit
    	
    javascript.0
    	2024-07-23 16:52:29.295	error	at processImmediate (node:internal/timers:478:21)
    javascript.0
    	2024-07-23 16:52:29.295	error	at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11053:62)
    javascript.0
    	2024-07-23 16:52:29.295	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:644:29)
    javascript.0
    	2024-07-23 16:52:29.295	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1427:38)
    javascript.0
    	2024-07-23 16:52:29.295	error	at Object.<anonymous> (script.js.Telegram.Bild_an_Telegram:16:9)
    javascript.0
    	2024-07-23 16:52:29.295	error	at etwas_tun (script.js.Telegram.Bild_an_Telegram:21:5)
    javascript.0
    	2024-07-23 16:52:29.294	error	script.js.Telegram.Bild_an_Telegram: ReferenceError: request is not defined
    

    Wär toll, wenn mir hier jemand weiterhelfen könnte.

    iobroker auf proxmox container

    paul53P T 2 Antworten Letzte Antwort
    0
    • amg_666A amg_666

      Hallo, ich werte einen HM-Klingelsensor aus und wenn Klingel gedrückt wird, soll ein Bild einer Webcam an meinen Telegram account gesendet werden.
      Das läuft gefühlt seit Jahren stabil, ich habe jetzt aber gesehen, dass Fehler im Log sind und weiß da nicht wirklich weiter.
      Beta-Repository, alle Adapter aktuell, node-js 20.15.1, npm 10.7.0, js-controller 6.0.9.

      Das Skript:

      url_snapshot = 'http://192.168.1.30/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=XXXXX';
      
      on({id:"hm-rpc.0.MEQ0657107.1.PRESS_SHORT", val: true}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        await etwas_tun();
      });
      
      async function etwas_tun() {
          var fs = require('fs');
          request.get({url: url_snapshot, encoding: 'binary'}, function (err, response, body) {
                  fs.writeFile('/tmp/snap.jpg', body, 'binary', function(err) {
                      if (err) {
                          console.error(err);
                           } else {
                          console.log('Snapshot sent');
                          sendTo('telegram.0', {text: '/tmp/snap.jpg',chatId: 'XXXXXXX', caption: 'Es hat geklingelt !'});
                          }
                      }); 
                  });     
      }
      
      

      Wenn hm-rpc.0....PRESS_SHORT auslöst, kommt folgendes log:

      288
      
      Log-Größe: 195.1 KB
      Zeit
      	
      javascript.0
      	2024-07-23 16:52:29.295	error	at processImmediate (node:internal/timers:478:21)
      javascript.0
      	2024-07-23 16:52:29.295	error	at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11053:62)
      javascript.0
      	2024-07-23 16:52:29.295	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:644:29)
      javascript.0
      	2024-07-23 16:52:29.295	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1427:38)
      javascript.0
      	2024-07-23 16:52:29.295	error	at Object.<anonymous> (script.js.Telegram.Bild_an_Telegram:16:9)
      javascript.0
      	2024-07-23 16:52:29.295	error	at etwas_tun (script.js.Telegram.Bild_an_Telegram:21:5)
      javascript.0
      	2024-07-23 16:52:29.294	error	script.js.Telegram.Bild_an_Telegram: ReferenceError: request is not defined
      

      Wär toll, wenn mir hier jemand weiterhelfen könnte.

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @amg_666 sagte: ReferenceError: request is not defined

      Wenn du request() verwenden willst, muss oben im Skript ergänzt werden

      const request = require('request');
      

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

      amg_666A 1 Antwort Letzte Antwort
      1
      • amg_666A amg_666

        Hallo, ich werte einen HM-Klingelsensor aus und wenn Klingel gedrückt wird, soll ein Bild einer Webcam an meinen Telegram account gesendet werden.
        Das läuft gefühlt seit Jahren stabil, ich habe jetzt aber gesehen, dass Fehler im Log sind und weiß da nicht wirklich weiter.
        Beta-Repository, alle Adapter aktuell, node-js 20.15.1, npm 10.7.0, js-controller 6.0.9.

        Das Skript:

        url_snapshot = 'http://192.168.1.30/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=XXXXX';
        
        on({id:"hm-rpc.0.MEQ0657107.1.PRESS_SHORT", val: true}, async function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          await etwas_tun();
        });
        
        async function etwas_tun() {
            var fs = require('fs');
            request.get({url: url_snapshot, encoding: 'binary'}, function (err, response, body) {
                    fs.writeFile('/tmp/snap.jpg', body, 'binary', function(err) {
                        if (err) {
                            console.error(err);
                             } else {
                            console.log('Snapshot sent');
                            sendTo('telegram.0', {text: '/tmp/snap.jpg',chatId: 'XXXXXXX', caption: 'Es hat geklingelt !'});
                            }
                        }); 
                    });     
        }
        
        

        Wenn hm-rpc.0....PRESS_SHORT auslöst, kommt folgendes log:

        288
        
        Log-Größe: 195.1 KB
        Zeit
        	
        javascript.0
        	2024-07-23 16:52:29.295	error	at processImmediate (node:internal/timers:478:21)
        javascript.0
        	2024-07-23 16:52:29.295	error	at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11053:62)
        javascript.0
        	2024-07-23 16:52:29.295	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:644:29)
        javascript.0
        	2024-07-23 16:52:29.295	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1427:38)
        javascript.0
        	2024-07-23 16:52:29.295	error	at Object.<anonymous> (script.js.Telegram.Bild_an_Telegram:16:9)
        javascript.0
        	2024-07-23 16:52:29.295	error	at etwas_tun (script.js.Telegram.Bild_an_Telegram:21:5)
        javascript.0
        	2024-07-23 16:52:29.294	error	script.js.Telegram.Bild_an_Telegram: ReferenceError: request is not defined
        

        Wär toll, wenn mir hier jemand weiterhelfen könnte.

        T Offline
        T Offline
        TT-Tom
        schrieb am zuletzt editiert von TT-Tom
        #3

        @amg_666

        Welche JS Adapter Version hast du?
        Du solltest dein Script umstellen auf httpGet und createTempFile , siehe Doku hier.

        Gruß Tom
        https://github.com/tt-tom17
        Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

        NSPanel Script Wiki
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        NSPanel Adapter Wiki
        https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

        amg_666A 1 Antwort Letzte Antwort
        0
        • T TT-Tom

          @amg_666

          Welche JS Adapter Version hast du?
          Du solltest dein Script umstellen auf httpGet und createTempFile , siehe Doku hier.

          amg_666A Offline
          amg_666A Offline
          amg_666
          schrieb am zuletzt editiert von
          #4

          @tt-tom Die Doku schau ich mit an, js Adapter ist 8.7.1

          iobroker auf proxmox container

          1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @amg_666 sagte: ReferenceError: request is not defined

            Wenn du request() verwenden willst, muss oben im Skript ergänzt werden

            const request = require('request');
            
            amg_666A Offline
            amg_666A Offline
            amg_666
            schrieb am zuletzt editiert von
            #5

            @paul53 sagte in Probleme mit Skript (Bild an Telegram senden):

            const request = require('request');

            Danke, das hat erstmal funktioniert, aber er warnt jetzt, dass request "deprecated" ist, ich werd mal mit der Anleitung, die @TT-Tom verlinkt hat, auf httpGet umstellen.

            iobroker auf proxmox container

            1 Antwort Letzte Antwort
            1

            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

            240

            Online

            32.9k

            Benutzer

            83.0k

            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