NEWS
Bilder senden
-
So steht es in der Anleitung zu telegram:
Und dies funktioniert seit Jahren einwandfrei.
Youtube Videos sind hier nicht gerne gesehen (weil sehr oft einfach falsch).
Und so sieht mein Script aus (wie gesagt, seit Jahren einwandfrei)
//Bild senden mit Telegram var request = require('request'); var fs = require('fs'); request.get({url: 'http://192.168.xxx.xx:88//cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=xxx&pwd=xxx', encoding: 'binary'}, function (err, response, body) { fs.writeFile('/opt/iobroker/iobroker-data/tmp/snap.jpg', body, 'binary', function(err) { if (err) { console.error(err); } else { log('Snapshot sent'); sendTo('telegram.0', {user: "xxx", text: '/opt/iobroker/iobroker-data/tmp/snap.jpg', caption: "Bild")); } }); });
Du musst klären:
Wird das Bild korrekt geholt und gespeichert ?
Hast du einen timeout eingebaut ?
Ist der Sendebefehl für telegram korrekt ?
Ist telegram korrekt eingerichtet ?Wenn das alles stimmt, dann funktioniert dies auch.
Ansonsten hat @Glasfaser oben schon alles beantwortet.mfg
-
@bahnuhr sagte in Bilder senden:
Youtube Videos sind hier nicht gerne gesehen (weil sehr oft einfach falsch).
Halte ich jetzt aber für ein Gerücht Sonst würde mein Beispiel ja auch seit Jahren nicht funktionieren. Aber jeder hier im Forum sucht nunmal seinen eigenen Weg um zum Ziel zu gelangen.Die Forensuche ist leider für viele keine Option anscheind. Ansonsten würden nicht die immer wiederkehrenden Fragen auftauchen. In diesem Sinne.. Schönen Sonntag gewünscht.
-
Bei mir klappt es auch seit Ewigkeiten wie bei den anderen..
@raspi1986
Hast du eigentlich mal geprüft, ob dein Bild auch abgespeichert wird?
Evtl. ist da ja schon ein Fehler drinnen. -
@raspi1986 sagte in Bilder senden:
aber es wird kein Bild geschickt,
Man kann in deinem Screenshot nichts erkennen !
Wie auch schon oben von mir geschrieben überprüfe den Pfad
hier nochmal bzw. nimm das und passe es an dein Kamera Link an .
wget --output-document /opt/iobroker/iobroker-data/files/vis.0/alarm.jpg "http://pass:username@192.168.178.51/streaming/channels/101/picture/"
und der Bildpfad:
/opt/iobroker/iobroker-data/files/vis.0/alarm.jpg
.
Ich vermute dein Snapshot-Pfad ist nicht richtig ,
denn diese Frage wundert mich .
@raspi1986 sagte in Bilder senden:
@homoran Der Speicherpfad ist der den die verwendete Kamera bietet. Kann ich auch über http auf die kamera zugreifen?Wir kennen deine Kamera nicht und wie auch schon oben geschrieben nimmst du rtsp
Du brauchst auch nicht das ganz Script/Blockly , du kannst auch mit einem Schipsel testen und es starten .
hier das Blockly zum importieren :
-
@glasfaser
Es wird kein Bild gespeichert. Der angegebene Pfad lautet wie folgt:
wget --output-document /opt/iobroker/temp/cam.jpg "rtsp://admin:passwort@192.168.0.120/H.265" da die Kamera keinen Zugriff über http ermöglicht. Wo liegt der Fehler? -
@raspi1986 sagte in Bilder senden:
@glasfaser
Es wird kein Bild gespeichert. Der angegebene Pfad lautet wie folgt:
wget --output-document /opt/iobroker/temp/cam.jpg "rtsp://admin:passwort@192.168.0.120/H.265" da die Kamera keinen Zugriff über http ermöglicht. Wo liegt der Fehler?Mit Infos bist du sehr spärlich.
Wie lautet die cam?
Wie ist der Befehl um ein Bild zu speichern ?Hast du das alles probiert.
Hab ich bisher nicht gelesen.
Und wie sehen die Antworten auf meine Fragen aus ?
Auch da bisher keine Antwort !
So kann man dir nicht helfen.
-
Hier findet man immer schön die entsprechenden URLs für verschiedenste Cams. Auch für JPG
-
@raspi1986 sagte in Bilder senden:
Es wird kein Bild gespeichert.
Nochmal .... das ist ein rtsp , das funktioniert mit den Befehl so nicht , das wird mit ffmpeg zuvor im Befehl gemacht .
Wo liegt der Fehler?
Sorry ...
aber mehr als Fragen können wir Dich nicht , um eine passende Auflösung zu deinem Problem zu finden .Es kommen immer gegenantworten / gegenfragen-
da die Kamera keinen Zugriff über http ermöglicht.
und ... wenn Du nicht weiterkommst , dann nenne uns doch den Cam Hersteller / Typ.
Vielleicht können wir da helfen . -
@glasfaser Sorry, ich versuch mal auf die Fragen zu antworten.
-
@glasfaser Die Kamera ist eine EZVIZ C8C.
-
@glasfaser Wie ist der Befehl um ein Bild zu speichern ?
Ich kann den Befehl in Blockly nicht finden. Ich dachte das ist wget. -
@glasfaser
Wird das Bild korrekt geholt und gespeichert ?
Ich kenne den Befehl dafür nicht
Hast du einen timeout eingebaut ?
Ja.
Ist der Sendebefehl für telegram korrekt ?
Ich glaube schon
Ist telegram korrekt eingerichtet ?
ja -
@glasfaser Ich verwende folgende Komponenten:
Raspberry Pi 4
M.2 SSD
Argon One M.2 Gehäuse
Switch 8 Port
ConBee II ZigBee Gateway
EZVIZ C8C Kamera
Philips Hue Outdoor Sensor Bewegungsmelder -
Die cam hat scheinbar wirklich nur rtsp.
ffmpeg installieren und dann:
ffmpeg -loglevel fatal -i rtsp://192.168.4.20//user=admin_password=_channel=1_stream=1.sdp -vframes 1 -r 1 /wo/auch/immer/snapshots/xxxxx.jpg
Nach meiner ersten schnellen Recherche.
-
@david-g Muss ich ffmpeg auf dem Pi oder auf dem Computer installieren? Ich weiß es ist eine dumme Frage, aber ich finde keinen Adapter für den Pi.
-
Dem Pi wo iobroker läuft.
-
Auf dem Pi, wenn der die Verarbeitung des Bilds übernehmen soll.
sudo apt update sudo apt install ffmpeg
-
@david-g wo muss ich das einfügen?
-
Anstatt die Zeile mit dem wget.
Kannst es aber auch erstmal in der Konsole testen. Ist erstmal eine Fehlerquelle weniger.Den Pfad kannst du ja wie bei der wget Variante wählen.
Wenn das Bild dann generiert wurde, kann man sich weiter um das Blockly kümmern. -
@david-g ich habe ffmpeg installiert und den Pfad in das blockly eingefügt. Trotzdem wird noch kein bild gesendet.