staging.inyokaproject.org

Bash nutzen um Telegram auf dem Desktop auf neue Nachrichten zu prüfen.

Status: Gelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

stahlstngel

Anmeldungsdatum:
13. Juni 2013

Beiträge: Zähle...

Hallo, ich möchte via Bashskript detektieren ob eine neue Nachricht empfangen wurde.

Folgendes habe ich schon versucht:

sniff TCP: Port 443: HTTPS (verschlüsselt) ☹ Desktop Benachrichtigung: dbus-monitor: Bekommt keine Benachrichtigung wenn Telegram geöffnet ist. ☹

Ist es vielleicht möglich den System Tray Icon von Telegram auf dem Desktop auszulesen? Gibt es eine LOG File das man dafür nutzen könnte?

Wenn jemandem dazu etwas einfällt lasst es mich bitte wissen. Danke.

stahlstngel

(Themenstarter)

Anmeldungsdatum:
13. Juni 2013

Beiträge: Zähle...

Die Antwort kommt von mir selbst.

Wie schon beschrieben funktionieren die beiden genannten Möglichkeiten TCP & DBUS nicht.

Die einzige Lösung die zuverlässig funktioniert ist der Telegram Commandline Messanger. Einfach installieren via https://wiki.ubuntuusers.de/Telegram/#Telegram-CLI.

Anschließend kann wie folgt der Account auf ungelesene Nachrichten überprüft werden:

1
if [ $(./telegram-cli -R -D -e "dialog_list" | grep -v " 0 unread" | wc -l) -gt 2 ]; then echo "message"; else echo "nothing"; fi

Einzeiler sind doch was feines.

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4735

Das wc kann man sich eventuell noch sparen wenn man grep schon zählen lässt (-c/--count).

Antworten |