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. ioBroker Allgemein
  4. Action URL - Info an ioBroker per http senden

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    491

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Action URL - Info an ioBroker per http senden

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
26 Beiträge 8 Kommentatoren 4.0k Aufrufe 7 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.
  • AsgothianA Asgothian

    @flixer sagte in Action URL - Info an ioBroker per http senden:

    @johgre
    Super, hat geklappt. Nur mal so als Nachfrage: Ich überprüfe im Blockly erst ob sich der Wert geändert hat, dann ob dieser "true" ist und sende dann (wenn "true") die Nachricht per Telegram. Um dann auch wieder alles im Script nutzen zu können wird abschließend der Wert wieder auf "false" gesetzt (mit Verzögerung). Könnte es da Probleme geben? Hier das Blockly:
    2b4ce877-0654-4854-b99e-78084048836f-grafik.png

    Was ich jetzt noch hinbekommen muss, ist die Erfassung von der Kamera (Snapshot) und die Speicherung auf meinem NAS. Gibt es dazu auch eine Möglichkeit? Könnte auch der Snapshot per Telegram verschickt werden?

    Das aktuelle bild der Camera kann ich über http://192.168.XXX.XXX:8080/picture.jpg einsehen. In der Türsprechanlage kann ich leider nicht einstellen, dass ein Foto auf dem NAS abgelegt wird. Es müsste also über den ioBroker laufen.

    Deine Beschreibung und das Blockly passen nicht zusammen.

    Du schreibst ‘ich prüfe erst ob sich der Wert geändert hat und dann ob der Wert wahr ist,’
    Du machst ‘trage in die triggerliste ein; jedes Mal wenn der Wert geändert wurde trage in die Triggerliste ein: jedes Mal wenn der Wert wahr ist mache’

    Das ist nicht das gleiche.

    Die Lösung;

    • schmeiß den “inneren” trigger raus
    • andere den “äußeren” trigger auf ‘ist größer als vorher’ an Stelle von ‘wurde geändert’

    Alternativ: ersetze den inneren Trigger durch einen falls … Baustein. In dem dockst du dann den Baustein Objekt ID Aus dem Trigger Bereich als Bedingung an und stellst den auf Wert Um.

    A.

    F Offline
    F Offline
    Flixer
    schrieb am zuletzt editiert von Flixer
    #10

    @asgothian
    Guten Morgen, schön und gut für die Verbesserung, aber das von mir "gebastelte" funktioniert. Ich werde trotzdem deine verbesserung aufnehmen und einen Test starten.

    @david G.
    Ich habe dein Blockly angesehen und die Befehle nachgebaut. Den Befehlt für den Snapshot mit IP habe ich natürlich angepasst. Leider funktioniert das irgendwie nicht. Ich bekomme nur den Text und nicht das Bild geschickt. die beiden XXX stehen bei mir natülich mit der passenden IP.

    e3043531-c213-45ab-90e5-2c3c82586d26-grafik.png

    var GONG, timeout, timeout2;
    
    
    on({id: "0_userdata.0.Tuerklingel"/*Tuerklingel*/, change: "any"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      GONG = getState("0_userdata.0.Tuerklingel").val;
      if (GONG == true) {
        exec('wget -O /opt/iobroker/snapshot/bild.jpg \'http://192.168.XXX.XXX:8080/picture.jpg\'');
        timeout = setTimeout(async function () {
          sendTo("telegram", "send", {
              text: '/opt/iobroker/snapshot/bild.jpg'
          });
        }, 2000);
        timeout2 = setTimeout(async function () {
          sendTo("telegram", "send", {
              text: 'Türklingel!'
          });
        }, 2000);
      }
      setStateDelayed("0_userdata.0.Tuerklingel"/*Tuerklingel*/, false, 2000, false);
    });
    

    Oben in der Ecke kann ich ja auch zwischen Blockly und JS umschalten. Will ich da was schreiben wird immer gesagt: "Ein Bearbeiten im schreibgeschützen editor ist nicht möglich." Wie bekomme ich denn den Schreibschutz raus? Sktip läuft jedenfalls nicht wenn ich etwas verändern will...

    Ich vermute, die Bildaufnahme funktioniert bei mir nicht. Wo kann ich denn kontrollieren, ob das Bild aufgenommen wurde? Es soll unter opt/iobroker/snapsht/bild.jpg abgelegt werden.

    David G.D 1 Antwort Letzte Antwort
    0
    • F Flixer

      @asgothian
      Guten Morgen, schön und gut für die Verbesserung, aber das von mir "gebastelte" funktioniert. Ich werde trotzdem deine verbesserung aufnehmen und einen Test starten.

      @david G.
      Ich habe dein Blockly angesehen und die Befehle nachgebaut. Den Befehlt für den Snapshot mit IP habe ich natürlich angepasst. Leider funktioniert das irgendwie nicht. Ich bekomme nur den Text und nicht das Bild geschickt. die beiden XXX stehen bei mir natülich mit der passenden IP.

      e3043531-c213-45ab-90e5-2c3c82586d26-grafik.png

      var GONG, timeout, timeout2;
      
      
      on({id: "0_userdata.0.Tuerklingel"/*Tuerklingel*/, change: "any"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        GONG = getState("0_userdata.0.Tuerklingel").val;
        if (GONG == true) {
          exec('wget -O /opt/iobroker/snapshot/bild.jpg \'http://192.168.XXX.XXX:8080/picture.jpg\'');
          timeout = setTimeout(async function () {
            sendTo("telegram", "send", {
                text: '/opt/iobroker/snapshot/bild.jpg'
            });
          }, 2000);
          timeout2 = setTimeout(async function () {
            sendTo("telegram", "send", {
                text: 'Türklingel!'
            });
          }, 2000);
        }
        setStateDelayed("0_userdata.0.Tuerklingel"/*Tuerklingel*/, false, 2000, false);
      });
      

      Oben in der Ecke kann ich ja auch zwischen Blockly und JS umschalten. Will ich da was schreiben wird immer gesagt: "Ein Bearbeiten im schreibgeschützen editor ist nicht möglich." Wie bekomme ich denn den Schreibschutz raus? Sktip läuft jedenfalls nicht wenn ich etwas verändern will...

      Ich vermute, die Bildaufnahme funktioniert bei mir nicht. Wo kann ich denn kontrollieren, ob das Bild aufgenommen wurde? Es soll unter opt/iobroker/snapsht/bild.jpg abgelegt werden.

      David G.D Online
      David G.D Online
      David G.
      schrieb am zuletzt editiert von David G.
      #11

      @flixer

      JS ist nur zum anzeigen woe der JS Code ist.
      Bearbeiten musst du alles in Blockly.

      Kontrollieren ob das Bild gemacht wurde musst du über putty (etc) oder einen File Explorer mit dem du auf das Dateisystem von deinen iobroker kommst.

      Mögliche Fehlerquellen:

      • Ordner nicht angelegt
      • Ordner fehlen Zugriffsrechte
      • Deine Kamera benötigt einen anderen Pfad für die URL

      EDIT:
      Der Bereich sieht bei wget sieht in meinem Blockly anders aus:

      bild.jpg \'http://
      

      Bei mir steht da:

      bild.jpg 'http://
      

      Das Ende der Zeile hast du auch anders.

      EDIT 2:
      Scheint an der JS Ansicht zu liegen. Im Blockly Bild sieht es ja scheinbar richtig aus. Dann die anderen Punkte prüfen.

      Bei blocklys am besten immer den blockly Export anstatt JS senden.

      Zeigt eure Lovelace-Visualisierung klick
      (Auch ideal um sich Anregungen zu holen)

      Meine Tabellen für eure Visualisierung klick

      F 1 Antwort Letzte Antwort
      0
      • David G.D David G.

        @flixer

        JS ist nur zum anzeigen woe der JS Code ist.
        Bearbeiten musst du alles in Blockly.

        Kontrollieren ob das Bild gemacht wurde musst du über putty (etc) oder einen File Explorer mit dem du auf das Dateisystem von deinen iobroker kommst.

        Mögliche Fehlerquellen:

        • Ordner nicht angelegt
        • Ordner fehlen Zugriffsrechte
        • Deine Kamera benötigt einen anderen Pfad für die URL

        EDIT:
        Der Bereich sieht bei wget sieht in meinem Blockly anders aus:

        bild.jpg \'http://
        

        Bei mir steht da:

        bild.jpg 'http://
        

        Das Ende der Zeile hast du auch anders.

        EDIT 2:
        Scheint an der JS Ansicht zu liegen. Im Blockly Bild sieht es ja scheinbar richtig aus. Dann die anderen Punkte prüfen.

        Bei blocklys am besten immer den blockly Export anstatt JS senden.

        F Offline
        F Offline
        Flixer
        schrieb am zuletzt editiert von Flixer
        #12

        @david-g
        Habe mich jetzt durch den ganzen Haufen Befehle für Putty gearbeitet und nun ist das Bild da. Der Hauptordner iobroker ging nicht und mit dem neuen snapshot order hat es dann geklappt. Bilddatei ist vorhanden, Bild kommt auch in Telegram. Ob tatsächlich auch ein Inhalt "im Bild" ist kann ich nicht sagen. In Telegram ist alles OK.

        Jetzt müsste das Bild irgendwie auf den Server übertragen werden. Das wird sicherlich auch mit exec laufen, aber wie? :)

        David G.D 1 Antwort Letzte Antwort
        0
        • F Flixer

          @david-g
          Habe mich jetzt durch den ganzen Haufen Befehle für Putty gearbeitet und nun ist das Bild da. Der Hauptordner iobroker ging nicht und mit dem neuen snapshot order hat es dann geklappt. Bilddatei ist vorhanden, Bild kommt auch in Telegram. Ob tatsächlich auch ein Inhalt "im Bild" ist kann ich nicht sagen. In Telegram ist alles OK.

          Jetzt müsste das Bild irgendwie auf den Server übertragen werden. Das wird sicherlich auch mit exec laufen, aber wie? :)

          David G.D Online
          David G.D Online
          David G.
          schrieb am zuletzt editiert von
          #13

          @flixer

          Das hört sich doch gut an.

          Mit dem übertragen müssen die leider andere helfen. In Linux bin ich auch nicht so fit....

          Zeigt eure Lovelace-Visualisierung klick
          (Auch ideal um sich Anregungen zu holen)

          Meine Tabellen für eure Visualisierung klick

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            marsmännchen
            schrieb am zuletzt editiert von
            #14

            @david-g
            Hallo zusammen.
            Vielleicht kann mir jemand helfen.
            Ich habe scheinbar ein ähnliches Problem wie @Flixer .
            Ich will von motioneyeos ein Bild per Telegram schicken.
            Wenn ich folgendes mache:

            var request = require('request');
            var fs      = require('fs');
             
            function sendImage() {
                request.get({url: 'http://192.168.1.191:8765/picture/2/current/', encoding: 'binary'}, function (err, response, body) {
                    fs.writeFile("/tmp/snap-pi.jpg", body, 'binary', function(err) {
             
                    if (err) {
                        console.error(err);
                    } else {
                        console.log('Snapshot sent');
                        sendTo('telegram',"/tmp/snap-pi.jpg");
                        //sendTo('telegram', {text: '/tmp/snap.jpg', caption: 'Snapshot'});
                    }
                  });
                });
            }
            on("0_userdata.0.example_state"/*Variablen.Pi1-detection*/, function (obj) {
                if (obj.state.val) {
                    // send 4 images: immediately, in 5, 15 and 30 seconds
                    sendImage();
                    setTimeout(sendImage, 2000);
                   // setTimeout(sendImage, 10000);
                   // setTimeout(sendImage, 15000);
                }
            });
            

            Und bekomme aber nur den Text "/tmp/snap-pi.jpg" zugesendet.
            Wenn ich mit Filezilla nach dem Bild stöbere ist alles da wo es sein soll.
            Ich habe schon hundert mal den Pfad begutachtet, es mit

            sendTo('telegram',"/tmp/snap-pi.jpg");
            

            oder

            sendTo('telegram.0','/tmp/snap-pi.jpg');
            

            versucht. Ohne Erfolg.
            Findet jemand den Fehler??
            MfG
            Patrick

            Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
            Wago PFC200 mit Dali Lichtsteuerung.

            bahnuhrB AsgothianA BananaJoeB 3 Antworten Letzte Antwort
            0
            • M marsmännchen

              @david-g
              Hallo zusammen.
              Vielleicht kann mir jemand helfen.
              Ich habe scheinbar ein ähnliches Problem wie @Flixer .
              Ich will von motioneyeos ein Bild per Telegram schicken.
              Wenn ich folgendes mache:

              var request = require('request');
              var fs      = require('fs');
               
              function sendImage() {
                  request.get({url: 'http://192.168.1.191:8765/picture/2/current/', encoding: 'binary'}, function (err, response, body) {
                      fs.writeFile("/tmp/snap-pi.jpg", body, 'binary', function(err) {
               
                      if (err) {
                          console.error(err);
                      } else {
                          console.log('Snapshot sent');
                          sendTo('telegram',"/tmp/snap-pi.jpg");
                          //sendTo('telegram', {text: '/tmp/snap.jpg', caption: 'Snapshot'});
                      }
                    });
                  });
              }
              on("0_userdata.0.example_state"/*Variablen.Pi1-detection*/, function (obj) {
                  if (obj.state.val) {
                      // send 4 images: immediately, in 5, 15 and 30 seconds
                      sendImage();
                      setTimeout(sendImage, 2000);
                     // setTimeout(sendImage, 10000);
                     // setTimeout(sendImage, 15000);
                  }
              });
              

              Und bekomme aber nur den Text "/tmp/snap-pi.jpg" zugesendet.
              Wenn ich mit Filezilla nach dem Bild stöbere ist alles da wo es sein soll.
              Ich habe schon hundert mal den Pfad begutachtet, es mit

              sendTo('telegram',"/tmp/snap-pi.jpg");
              

              oder

              sendTo('telegram.0','/tmp/snap-pi.jpg');
              

              versucht. Ohne Erfolg.
              Findet jemand den Fehler??
              MfG
              Patrick

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #15

              @marsmännchen

              anbei mein Scriptbaustein:

                      fs.writeFile('/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', body, 'binary', function(err) {
                      if (err) {
                          console.error(err);
                      } else {
                          log('Snapshot sent '+ ip);
                          sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', caption: cam});
                      }
                    }); 
              

              Bitte vergleichen.


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              1 Antwort Letzte Antwort
              0
              • M marsmännchen

                @david-g
                Hallo zusammen.
                Vielleicht kann mir jemand helfen.
                Ich habe scheinbar ein ähnliches Problem wie @Flixer .
                Ich will von motioneyeos ein Bild per Telegram schicken.
                Wenn ich folgendes mache:

                var request = require('request');
                var fs      = require('fs');
                 
                function sendImage() {
                    request.get({url: 'http://192.168.1.191:8765/picture/2/current/', encoding: 'binary'}, function (err, response, body) {
                        fs.writeFile("/tmp/snap-pi.jpg", body, 'binary', function(err) {
                 
                        if (err) {
                            console.error(err);
                        } else {
                            console.log('Snapshot sent');
                            sendTo('telegram',"/tmp/snap-pi.jpg");
                            //sendTo('telegram', {text: '/tmp/snap.jpg', caption: 'Snapshot'});
                        }
                      });
                    });
                }
                on("0_userdata.0.example_state"/*Variablen.Pi1-detection*/, function (obj) {
                    if (obj.state.val) {
                        // send 4 images: immediately, in 5, 15 and 30 seconds
                        sendImage();
                        setTimeout(sendImage, 2000);
                       // setTimeout(sendImage, 10000);
                       // setTimeout(sendImage, 15000);
                    }
                });
                

                Und bekomme aber nur den Text "/tmp/snap-pi.jpg" zugesendet.
                Wenn ich mit Filezilla nach dem Bild stöbere ist alles da wo es sein soll.
                Ich habe schon hundert mal den Pfad begutachtet, es mit

                sendTo('telegram',"/tmp/snap-pi.jpg");
                

                oder

                sendTo('telegram.0','/tmp/snap-pi.jpg');
                

                versucht. Ohne Erfolg.
                Findet jemand den Fehler??
                MfG
                Patrick

                AsgothianA Offline
                AsgothianA Offline
                Asgothian
                Developer
                schrieb am zuletzt editiert von Asgothian
                #16

                @marsmännchen sagte in Action URL - Info an ioBroker per http senden:

                Findet jemand den Fehler??

                telegram macht genau das was du ihm sagst. Per SendTo schickst du einen Text, nämlich '/tmp/snap-pi.jpg'. Genau das wird angezeigt.

                Du musst im SendTo schon irgendwie (wie weiss ich nicht, Telegram gibts bei mir nicht) sagen das das was du da übergibst eine Pfad ist und das du senden willst was sich an der Stelle befindet, nicht den Text selber.

                War Blödsinn - sorry :)

                A.

                ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                bahnuhrB 1 Antwort Letzte Antwort
                1
                • AsgothianA Asgothian

                  @marsmännchen sagte in Action URL - Info an ioBroker per http senden:

                  Findet jemand den Fehler??

                  telegram macht genau das was du ihm sagst. Per SendTo schickst du einen Text, nämlich '/tmp/snap-pi.jpg'. Genau das wird angezeigt.

                  Du musst im SendTo schon irgendwie (wie weiss ich nicht, Telegram gibts bei mir nicht) sagen das das was du da übergibst eine Pfad ist und das du senden willst was sich an der Stelle befindet, nicht den Text selber.

                  War Blödsinn - sorry :)

                  A.

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von bahnuhr
                  #17

                  @asgothian sagte in Action URL - Info an ioBroker per http senden:

                  Per SendTo schickst du einen Text

                  siehe mein Script.
                  Es steht zwar Text; aber es wird das Bild gesendet.

                  Auszug aus Hilfeseite:
                  8268358d-339e-4233-ae59-09e60af1b97e-image.png

                  Vielleicht stimmt auch einfach dein Pfad nicht !


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  JohGreJ 1 Antwort Letzte Antwort
                  1
                  • bahnuhrB bahnuhr

                    @asgothian sagte in Action URL - Info an ioBroker per http senden:

                    Per SendTo schickst du einen Text

                    siehe mein Script.
                    Es steht zwar Text; aber es wird das Bild gesendet.

                    Auszug aus Hilfeseite:
                    8268358d-339e-4233-ae59-09e60af1b97e-image.png

                    Vielleicht stimmt auch einfach dein Pfad nicht !

                    JohGreJ Offline
                    JohGreJ Offline
                    JohGre
                    schrieb am zuletzt editiert von
                    #18

                    @marsmännchen Ich hatte das selbe Verhalten weil der User ioBroker keinen Zugriff auf das Verzeichnis hatte. Kontrolliere das doch mal

                    nuc i5: RaspberryMatic, ioBroker, pi-hole, SQL-Server, OMV-NAS, Influx-DB & Grafana, OpenHab, tasmoadmin

                    1 Antwort Letzte Antwort
                    0
                    • F Offline
                      F Offline
                      Flixer
                      schrieb am zuletzt editiert von
                      #19

                      Hallo in die Runde,

                      mal als Gedankengang und Hilfestellung unter diesem Link schauen:

                      https://forum.iobroker.net/topic/51648/dateien-auf-ftp-nas-kopieren-und-anschließend-umbenennen/6

                      Im letzten Post habe ich das fertige und funktionstüchtige Blockly als Bild beigefügt. Das funktioniert und ich finde es "elegant" den Text mit Bausteinen zu erstellen. Wenn man mehrere Kameras hat, dann lässt es sich gut vervielfältigen.

                      MfG Flixer

                      1 Antwort Letzte Antwort
                      1
                      • M marsmännchen

                        @david-g
                        Hallo zusammen.
                        Vielleicht kann mir jemand helfen.
                        Ich habe scheinbar ein ähnliches Problem wie @Flixer .
                        Ich will von motioneyeos ein Bild per Telegram schicken.
                        Wenn ich folgendes mache:

                        var request = require('request');
                        var fs      = require('fs');
                         
                        function sendImage() {
                            request.get({url: 'http://192.168.1.191:8765/picture/2/current/', encoding: 'binary'}, function (err, response, body) {
                                fs.writeFile("/tmp/snap-pi.jpg", body, 'binary', function(err) {
                         
                                if (err) {
                                    console.error(err);
                                } else {
                                    console.log('Snapshot sent');
                                    sendTo('telegram',"/tmp/snap-pi.jpg");
                                    //sendTo('telegram', {text: '/tmp/snap.jpg', caption: 'Snapshot'});
                                }
                              });
                            });
                        }
                        on("0_userdata.0.example_state"/*Variablen.Pi1-detection*/, function (obj) {
                            if (obj.state.val) {
                                // send 4 images: immediately, in 5, 15 and 30 seconds
                                sendImage();
                                setTimeout(sendImage, 2000);
                               // setTimeout(sendImage, 10000);
                               // setTimeout(sendImage, 15000);
                            }
                        });
                        

                        Und bekomme aber nur den Text "/tmp/snap-pi.jpg" zugesendet.
                        Wenn ich mit Filezilla nach dem Bild stöbere ist alles da wo es sein soll.
                        Ich habe schon hundert mal den Pfad begutachtet, es mit

                        sendTo('telegram',"/tmp/snap-pi.jpg");
                        

                        oder

                        sendTo('telegram.0','/tmp/snap-pi.jpg');
                        

                        versucht. Ohne Erfolg.
                        Findet jemand den Fehler??
                        MfG
                        Patrick

                        BananaJoeB Offline
                        BananaJoeB Offline
                        BananaJoe
                        Most Active
                        schrieb am zuletzt editiert von
                        #20

                        @marsmännchen hier mein Blockly als JavaScript:

                        on({id: 'zigbee.0.00158d00049fe012.opened', change: "ne"}, async function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          if (Entpreller1 == 0) {
                            (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                            Entpreller1 = 1;
                            Zeitstempel = (obj.state ? obj.state.ts : "");
                            setState("javascript.0.vis.0.main.Briefkasten.KlappeBewegt"/*KlappeBewegt*/, true);
                            setState("javascript.0.vis.0.main.Briefkasten.Zeitstempel"/*javascript.0.vis.0.main.Briefkasten.Zeitstempel*/, formatDate(getDateObject(Zeitstempel), "WW SS:mm:ss"));
                            exec((['wget --output-document /tmp/Cam215Briefkasten.jpg \'','http://192.168.1.215/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=IchbineingeilerTypp&user=admin&password=znil2001','\''].join('')), async function (error, result, stderr) {
                                sendTo("telegram", "send", {
                                  text: ('Briefkasten um: ' + String(formatDate(new Date(), "hh:mm:ss"))),
                                  disable_notification: true
                              });
                              sendTo("telegram", "send", {
                                  text: '/tmp/Cam215Briefkasten.jpg'
                              });
                            });
                            console.log("exec: " + (['wget --output-document /tmp/Cam215Briefkasten.jpg \'','http://192.168.1.215/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=IchbineingeilerTypp&user=admin&password=znil2001','\''].join('')));
                            setStateDelayed('javascript.0.vis.0.main.STATUS-View-in-Widget.01_Briefkasten', true, false, parseInt(((500) || "").toString(), 10), false);
                            setStateDelayed('javascript.0.vis.0.main.STATUS-View-in-Widget.Statusnummer', 1, false, parseInt(((20000) || "").toString(), 10), false);
                            timeout = setTimeout(async function () {
                              Entpreller1 = 0;
                            }, 8000);
                          }
                        });
                        

                        Der Knackpunkt scheint zu sein wie du den Text übergibst (das text: { })

                        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                        1 Antwort Letzte Antwort
                        1
                        • M Offline
                          M Offline
                          marsmännchen
                          schrieb am zuletzt editiert von
                          #21

                          @bananajoe nein, hab ich dann das selbe problem, danke trotzdem

                          zur Thorie des falschen pfades:
                          capture2.JPG
                          capture1.JPG

                          pi@achbotslave:/tmp $ ls
                          snap-pi1.jpg //nur zu testzwecke, ich weiss das ich snap-pi.jpg im skript stehen hab
                          snap-pi.jpg
                          

                          das ist sicher nicht der Fall traue ich mich zu behaupten.

                          Wenn ich dein Script als Vorlage nehme @bahnuhr

                          var request = require('request');
                          var fs      = require('fs');
                           
                          function sendImage() {
                              request.get({url: 'http://192.168.1.191:8765/picture/2/current/', encoding: 'binary'}, function (err, response, body) {
                                  fs.writeFile('/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', body, 'binary', function(err) {
                           
                                 if (err) {
                                      console.error(err);
                                  } else {
                                      log('Snapshot sent '+ ip);
                                      sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', caption: cam});
                                  }
                                }); 
                              });
                          }
                          on("0_userdata.0.example_state"/*Variablen.Pi1-detection*/, function (obj) {
                              if (obj.state.val) {
                                  // send 4 images: immediately, in 5, 15 and 30 seconds
                                  sendImage();
                                  setTimeout(sendImage, 2000);
                                 // setTimeout(sendImage, 10000);
                                 // setTimeout(sendImage, 15000);
                              }
                          });
                           fs.writeFile('/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', body, 'binary', function(err) {
                                  if (err) {
                                      console.error(err);
                                  } else {
                                      log('Snapshot sent '+ ip);
                                      sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', caption: cam});
                                  }
                                }); 
                          

                          dann sagt er:

                          12:57:16.635	error	javascript.1 (27902) script.js.common.test01: ReferenceError: ip is not defined
                          12:57:16.636	error	javascript.1 (27902) at script.js.common.test01:26:56
                          12:57:16.637	error	javascript.1 (27902) at script.js.common.test01:34:3
                          

                          Also für mich kein wirklicher Vergleich, muss ich versuchen es zu verändern und da ist die Fehleranfälligkeit als Anfänger wieder sehr hoch.
                          Will sagen, es dauert wohl ein bisschen.
                          Vorher will ich die Theorie von @JohGre überprüfen, da ich ja das Bild mit Filezilla dort finde wo ich es gespeichert habe, und ich nach
                          dem "Auszug aus der Hilfeseite " vorgegangen bin.
                          @JohGre weisst du vielleicht wie ich das überprüfe auf die schnelle? irgendwas mit chmod?

                          Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                          Wago PFC200 mit Dali Lichtsteuerung.

                          JohGreJ 1 Antwort Letzte Antwort
                          0
                          • M marsmännchen

                            @bananajoe nein, hab ich dann das selbe problem, danke trotzdem

                            zur Thorie des falschen pfades:
                            capture2.JPG
                            capture1.JPG

                            pi@achbotslave:/tmp $ ls
                            snap-pi1.jpg //nur zu testzwecke, ich weiss das ich snap-pi.jpg im skript stehen hab
                            snap-pi.jpg
                            

                            das ist sicher nicht der Fall traue ich mich zu behaupten.

                            Wenn ich dein Script als Vorlage nehme @bahnuhr

                            var request = require('request');
                            var fs      = require('fs');
                             
                            function sendImage() {
                                request.get({url: 'http://192.168.1.191:8765/picture/2/current/', encoding: 'binary'}, function (err, response, body) {
                                    fs.writeFile('/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', body, 'binary', function(err) {
                             
                                   if (err) {
                                        console.error(err);
                                    } else {
                                        log('Snapshot sent '+ ip);
                                        sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', caption: cam});
                                    }
                                  }); 
                                });
                            }
                            on("0_userdata.0.example_state"/*Variablen.Pi1-detection*/, function (obj) {
                                if (obj.state.val) {
                                    // send 4 images: immediately, in 5, 15 and 30 seconds
                                    sendImage();
                                    setTimeout(sendImage, 2000);
                                   // setTimeout(sendImage, 10000);
                                   // setTimeout(sendImage, 15000);
                                }
                            });
                             fs.writeFile('/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', body, 'binary', function(err) {
                                    if (err) {
                                        console.error(err);
                                    } else {
                                        log('Snapshot sent '+ ip);
                                        sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/tmp/snap' + ip + '.jpg', caption: cam});
                                    }
                                  }); 
                            

                            dann sagt er:

                            12:57:16.635	error	javascript.1 (27902) script.js.common.test01: ReferenceError: ip is not defined
                            12:57:16.636	error	javascript.1 (27902) at script.js.common.test01:26:56
                            12:57:16.637	error	javascript.1 (27902) at script.js.common.test01:34:3
                            

                            Also für mich kein wirklicher Vergleich, muss ich versuchen es zu verändern und da ist die Fehleranfälligkeit als Anfänger wieder sehr hoch.
                            Will sagen, es dauert wohl ein bisschen.
                            Vorher will ich die Theorie von @JohGre überprüfen, da ich ja das Bild mit Filezilla dort finde wo ich es gespeichert habe, und ich nach
                            dem "Auszug aus der Hilfeseite " vorgegangen bin.
                            @JohGre weisst du vielleicht wie ich das überprüfe auf die schnelle? irgendwas mit chmod?

                            JohGreJ Offline
                            JohGreJ Offline
                            JohGre
                            schrieb am zuletzt editiert von
                            #22

                            @marsmännchen sagte in Action URL - Info an ioBroker per http senden:

                            irgendwas mit chmod?

                            sudo chown iobroker:iobroker bild.jpg mittels ls - l siehst du die aktuelle Berechtigung

                            nuc i5: RaspberryMatic, ioBroker, pi-hole, SQL-Server, OMV-NAS, Influx-DB & Grafana, OpenHab, tasmoadmin

                            M 1 Antwort Letzte Antwort
                            0
                            • JohGreJ JohGre

                              @marsmännchen sagte in Action URL - Info an ioBroker per http senden:

                              irgendwas mit chmod?

                              sudo chown iobroker:iobroker bild.jpg mittels ls - l siehst du die aktuelle Berechtigung

                              M Offline
                              M Offline
                              marsmännchen
                              schrieb am zuletzt editiert von
                              #23

                              @johgre

                              pi@achbotslave:/tmp $ ls -l
                              insgesamt 580
                              drwx------ 3 squeezeboxserver nogroup    4096 18. Jän 18:52 par-73717565657a65626f78736572766572
                              -rw-r--r-- 1 iobroker         iobroker 298222 26. Jän 09:18 snap-pi1.jpg
                              -rw-r--r-- 1 iobroker         iobroker 276558 26. Jän 13:33 snap-pi.jpg
                              drwx------ 3 root             root       4096 18. Jän 18:52 systemd-private-dfd1a3af5eb24b8c899f4cc4142c9656-grafana-server.service-LFsQ0e
                              drwx------ 3 root             root       4096 18. Jän 18:51 systemd-private-dfd1a3af5eb24b8c899f4cc4142c9656-systemd-logind.service-K0IgHi
                              drwx------ 3 root             root       4096 26. Jän 03:37 systemd-private-dfd1a3af5eb24b8c899f4cc4142c9656-systemd-timesyncd.service-UlRPtg
                              
                              

                              rw sieht nach berechtigt aus wenn ich nicht irre...

                              Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                              Wago PFC200 mit Dali Lichtsteuerung.

                              JohGreJ 1 Antwort Letzte Antwort
                              0
                              • M marsmännchen

                                @johgre

                                pi@achbotslave:/tmp $ ls -l
                                insgesamt 580
                                drwx------ 3 squeezeboxserver nogroup    4096 18. Jän 18:52 par-73717565657a65626f78736572766572
                                -rw-r--r-- 1 iobroker         iobroker 298222 26. Jän 09:18 snap-pi1.jpg
                                -rw-r--r-- 1 iobroker         iobroker 276558 26. Jän 13:33 snap-pi.jpg
                                drwx------ 3 root             root       4096 18. Jän 18:52 systemd-private-dfd1a3af5eb24b8c899f4cc4142c9656-grafana-server.service-LFsQ0e
                                drwx------ 3 root             root       4096 18. Jän 18:51 systemd-private-dfd1a3af5eb24b8c899f4cc4142c9656-systemd-logind.service-K0IgHi
                                drwx------ 3 root             root       4096 26. Jän 03:37 systemd-private-dfd1a3af5eb24b8c899f4cc4142c9656-systemd-timesyncd.service-UlRPtg
                                
                                

                                rw sieht nach berechtigt aus wenn ich nicht irre...

                                JohGreJ Offline
                                JohGreJ Offline
                                JohGre
                                schrieb am zuletzt editiert von
                                #24

                                @marsmännchen sieht genauso aus wie bei mir, sollte passen

                                nuc i5: RaspberryMatic, ioBroker, pi-hole, SQL-Server, OMV-NAS, Influx-DB & Grafana, OpenHab, tasmoadmin

                                1 Antwort Letzte Antwort
                                1
                                • M Offline
                                  M Offline
                                  marsmännchen
                                  schrieb am zuletzt editiert von
                                  #25

                                  @johgre
                                  ok,danke. keine Ahnung

                                  Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                                  Wago PFC200 mit Dali Lichtsteuerung.

                                  M 1 Antwort Letzte Antwort
                                  0
                                  • M marsmännchen

                                    @johgre
                                    ok,danke. keine Ahnung

                                    M Offline
                                    M Offline
                                    marsmännchen
                                    schrieb am zuletzt editiert von
                                    #26

                                    Endlich geschafft:
                                    Für die Nachwelt:

                                    Vielleicht für einen iobroker Profi eh klar.

                                    Folgendes habe ich geändert:

                                    Das Script vom Host weg in den Master-Raspberry, und das Script dort nicht im "Common" sondern "Root".
                                    Danke euch für die Hilfe!!
                                    MfG
                                    Patrick

                                    Raspberry Pi 4 8GB, Debian 11, js-controller: 5.0.12, Nodejs: v18.18.2, NPM: 9.8.1 (Multihost),
                                    Wago PFC200 mit Dali Lichtsteuerung.

                                    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
                                    FAQ Cloud / IOT
                                    HowTo: Node.js-Update
                                    HowTo: Backup/Restore
                                    Downloads
                                    BLOG

                                    538

                                    Online

                                    32.6k

                                    Benutzer

                                    81.9k

                                    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