NEWS
Screenshot Flot-Charts über Telegram verschicken
-
@uwe72 Ich konnte den vorherigen Kommentar nicht löschen. Aber funktioniert nun. Echt klasse Sache!!
-
Moin zusammen,
da ich auch einen Raspi 4 besitze bin ich auf die hier vorgestellte Möglichkeit, Screenshots zu erstellen, gekommen. Super, dass @Trident dieses ausgetüftelt hat.
Leider komme ich jedoch nicht ganz damit zurecht. Ich nutze kein Text2Command (mehr), daher habe ich dieses aus dem Script ausgebaut:
Scheint auch zu funktionieren, denn erste und zweite Nachricht kommen an. Die 2. Nachricht erscheint jedoch doppelt und zwar mit
/opt/iobroker/charts/chart.png
/opt/iobroker/charts/chart.pngEin Bild ist nicht angehängt und es ist auch keines im Ordner zu finden.
Installiert habe ich alles, den Link von FLOT in "" gepackt. -a nach run habe ich auch getestet, leider wird auch hierbei kein Bild geschickt, jedoch geht die Nachricht /opt/iobroker/charts/chart.png nur noch einmal ein.
Ich nutze IoBroker ohne https, daher habe ich sonst nichts angepasst.
Hat noch jemand eine Idee?
Nachtrag: 700 er Berechtigung ist auch gesetzt
-
Hi, hast du mal versucht den Befehl im Terminal auszuführen ? Danach sollte ein Bild in dem von dir gewählten Pfad liegen. Dann wüssten wir zumindest, dass dieser Teil funktioniert. Ich tippe hier ist noch was falsch.
Viele Grüße
-
@Trident Wenn ich die Erstellung über das Terminal auslöse, wie bestimme ich dann den Speicherort?
xvfb-run --server-args="-screen 0, 1280x1200x24" cutycapt --url=http://www.google.de --out=demo.png
dürfte ja nicht reichen, oder?
-
@PatrickFro
so zum Beispiel:xvfb-run --server-args="-screen 0, 1280x1200x24" cutycapt --url=http://www.google.de --out=/home/pi/screenshot/demo.png
-
@Malaus Danke, damit klappt zumindest Google schon. Ich baue mal mein Blockly nach, hatte es aus Frust gelöscht und berichte, ob es nun auch damit klappt
-
-
@PatrickFro
hast du dir das Bild mal angeschaut? Ist es ein richtiges Bild? Hab gesehen du nutzt kein Delay um die Seite aufzurufen.
Kann das sein, dass du kein Delay hast? Also das du dem ganzen keine Zeit gibst, ein Bild zu erstellen?So sieht das bei mir aus:
xvfb-run cutycapt --min-width=1300 --min-height=400 --delay=2500 --url=
Und dann brauchst du nochmal eine Verzögerung um das Bild abzuspeichern. Bei mir sind das 6 Sekunden.
-
-
So, es klappt nun. Ich musste einmal die Neuerstellung deaktivieren, den exec Befehl. Seit dem klappt es, auch mit dem gerade erstellten Bild. Warum weiß ich aber nicht
Danke Euch beiden!
-
hat einer von Euch schon versucht, ein Screenshot einer Seite der VIS zu erstellen und zuzusenden? Ich beiß mir daran die Zähne aus.
Delay ist bei 20000, trotzdem kommt als Bild nur der sich drehende Kreis beim Start der VIS.
Wähle ich die EDIT-Seite als Ziel aus, erscheint "No Connection".Hat jemand eine Ahnung, wie ich das beheben kann?
-
@PatrickFro
ersetze das hier mal bitte mit deinem command:xvfb-run cutycapt --width=1024 --height=768 --delay=2500 --url=
EDIT: Delay natürlich anpassen
-
@Malaus Mit der Änderung wird bei mir leider gar kein Screenshot mehr erstellt und der zuletzt erstellte somit zugeschickt.
EDIT: Hast Du eine Seite Deiner VIS über den Weg als Foto erstellen können? Ich habe das Gefühl dass IoBroker sich sträubt.
So sieht jeder Screenshot aus
-
@PatrickFro habe keine Vis. Ich erstelle damit einen Screenshot von Grafana. Das ist ja auch lokal, daher dachte ich, dass es vielleicht bei dir auch klappt.
-
@Malaus Ok, nachvollziehbar. Ich teste mal weiter... Danke soweit!
-
@PatrickFro hab mir grad eine erstellt und ausprobiert. In meinem Befehl fehlte noch
"--insecure", weil die Seite https hat. Aber leider das gleiche Ergebnis wie bei dir. Nur ein Ladebildschirm... -
@Malaus Oh, vielen Dank! Dann muss ich scheinbar andere Wege beschreiten...
Ich finde keine andere Lösung um eine JSON gut formatiert und lesbar als Telegram-Nachricht zu senden. Daher wollte ich den Umweg über Screenshot gehen.
-
Schon wieder ich... Habt ihr eine Lösung um ein Bild und Text in einer Nachricht gleichzeitig zu senden? Trage ich zusätzlich zum Bild Text ein, erscheint bei mir der Speicherort des Bildes ausgeschrieben, jedoch das Bild nicht mehr.
-
@PatrickFro bei mir sieht das so aus:
timeout = setTimeout(function () { sendTo("telegram", "send", { text: bild_pfad, reply_markup: { one_time_keyboard: false, inline_keyboard: [ [{ text: 'Menü', callback_data: '/Menü'}],] }}); }, 6000); }
Ist halt kein Blockly aber vielleicht bringt dich das ja weiter.
-
@Malaus Danke erneut. In Blockly finde ich leider gerade keinen Weg dahin und meine Javascript-Kenntnisse sind dafür zu schlecht. Dein Beispiel zeigt aber, dass es scheinbar gehen muss und das ist schon gut.