Intelligente Bildüberwachung mit SnapShotter und upcam-client

Tools & Automation

So baust du dir eine smarte Bildüberwachung: Kamera-Snapshots landen automatisch in deiner WhatsApp-Gruppe –
mit Open-Source-Tools und ohne Cloud-Zwang.


Image licensed by Ingram Image/adpic

Aktualisiert: Dezember 2025 · SnapShotter & upcam-client unter MIT-Lizenz


Inhalt

  1. Warum intelligente Bildüberwachung?
  2. SnapShotter im Überblick: Bilder automatisch an WhatsApp schicken
  3. Installation & Konfiguration von SnapShotter
  4. upcam-client: Bilder von der IP-Kamera abholen
  5. So greifen SnapShotter und upcam-client ineinander
  6. Rechtliche & praktische Hinweise
  7. Ressourcen & Links

Warum intelligente Bildüberwachung?

Du willst wissen, was an Haustür, Garage oder im Büro passiert – aber nicht permanent auf einen Monitor starren?
Genau hier wird intelligente Bildüberwachung spannend: Kamera schießt ein Bild, ein Skript reagiert automatisch
und du bekommst nur dann eine Benachrichtigung, wenn es wirklich etwas Neues gibt.

Statt teurer Cloud-Abos oder proprietärer Apps setzt du mit SnapShotter und
upcam-client auf schlanke Open-Source-Tools. Sie laufen lokal bei dir und lassen sich
flexibel an deine Umgebung anpassen – vom einfachen Heim-Setup bis zur kleinen Firma.

SnapShotter im Überblick: Bilder automatisch an WhatsApp schicken

Kurz erklärt: Was macht SnapShotter?

SnapShotter ist ein Node.js-Skript, das einen Ordner überwacht. Sobald dort ein neues Bild
auftaucht, wird es automatisch an einen definierten WhatsApp-Chat oder eine Gruppe gesendet – anschließend
wandert die Datei in ein Archiv-Verzeichnis.

Funktionen auf einen Blick

  • Echtzeit-Überwachung: SnapShotter beobachtet kontinuierlich ein Verzeichnis auf neue Dateien.
  • Automatischer Versand: Neue Bilder werden direkt an einen konfigurierten WhatsApp-Chat gesendet.
  • Archivierung: Nach erfolgreichem Versand verschiebt das Skript die Datei in einen Archiv-Ordner.
  • Lokale Session-Speicherung: Die WhatsApp-Session wird lokal via LocalAuth gespeichert – QR-Code nur beim ersten Start.
  • Konfigurierbar: Ordnerpfade, Dateitypen und Ziel-Chat kannst du bequem in einer Konfigurationsdatei anpassen.

Technisch basiert SnapShotter auf der Bibliothek
whatsapp-web.js, die den Web-Client von WhatsApp
automatisiert – so, als würdest du im Browser angemeldet sein, nur eben skriptgesteuert.

Installation & Konfiguration von SnapShotter

Voraussetzungen

  • Node.js (empfohlen: aktuelle LTS-Version)
  • npm (wird mit Node.js mitgeliefert)
  • Git oder manueller Download des Repositories von GitHub

Projekt klonen & Abhängigkeiten installieren

Terminal · SnapShotter klonen

 
 
 
git clone https://github.com/gzeuner/SnapShotter.git
cd SnapShotter
npm install

Konfiguration anpassen

Die wichtigsten Einstellungen nimmst du in der Datei src/config.js (oder analoger Konfiguration)
vor. Typischerweise definierst du:

  • chatName – Name des WhatsApp-Chats bzw. der Gruppe
  • readDir – Ordner, den SnapShotter überwacht
  • saveDir – Archiv-Verzeichnis für versendete Dateien
  • fileExtension – Dateityp der zu verarbeitenden Bilder, z. B. .jpg
Beispiel · src/config.js

 
 
 
// Minimalbeispiel – Pfade und Namen an deine Umgebung anpassen
module.exports = {
  chatName: 'Kamera – Haustür',
  readDir: 'C:/Users/yourUser/Camera/incoming',
  saveDir: 'C:/Users/yourUser/Camera/archive',
  fileExtension: '.jpg'
};

SnapShotter starten

Zum Start genügt ein einfacher Node-Aufruf:

Terminal · SnapShotter starten

 
 
 
node src/SnapShotter.js

Beim ersten Start öffnet sich ein WhatsApp-Web-Fenster. Scanne den QR-Code mit deinem Smartphone, um die Session
zu koppeln. Danach kann das Skript im Hintergrund laufen – die Session bleibt lokal gespeichert.

upcam-client: Bilder von der IP-Kamera abholen

upcam-client ist ein Java-basiertes Tool, das Bilder von IP-Kameras (z. B. UpCam Tornado HD Pro
und kompatible Modelle) herunterlädt und in einem lokalen Verzeichnis ablegt. Dieses Verzeichnis kann wiederum
von SnapShotter überwacht werden.

Voraussetzungen

Build & Ausführung

Terminal · upcam-client bauen

 
 
 
git clone https://github.com/gzeuner/upcam-client.git
cd upcam-client
mvn clean package

Das erzeugte JAR findest du im Projektverzeichnis. Gesteuert wird upcam-client über eine Konfigurationsdatei
(upcamclient.properties), in der du Kamera-URL, Login-Daten, Download-Intervall und Zielordner
festlegst.

Beispiel-Aufruf

 
 
 
java -jar upcam-client-1.0-jar-with-dependencies.jar upcamclient.properties log4j2.xml

Der Zielordner aus der Konfiguration sollte mit dem readDir von SnapShotter übereinstimmen –
so greift alles nahtlos ineinander.

So greifen SnapShotter und upcam-client ineinander

Der typische Flow:
Kamera schießt ein Bild → upcam-client lädt es herunter → SnapShotter erkennt die neue Datei →
Bild geht an deine WhatsApp-Gruppe → Datei wandert ins Archiv.

In der Praxis sieht das z. B. so aus:

  1. Deine IP-Kamera legt regelmäßig oder ereignisgesteuert Bilder auf dem integrierten Webserver ab.
  2. upcam-client fragt die Kamera ab und speichert neue Bilder in einem lokalen Download-Ordner.
  3. SnapShotter überwacht genau diesen Ordner und verschickt jede neue Datei automatisch via WhatsApp.
  4. Nach erfolgreichem Versand verschiebt SnapShotter die Datei in einen Archiv-Ordner.

So erhältst du z. B. ein Bild, sobald sich jemand an der Haustür blicken lässt – ohne dass du eine komplexe
Cloud-Lösung buchen musst.

Rechtliche & praktische Hinweise

Rechtlicher Hinweis (keine Rechtsberatung)

Die folgenden Punkte sind eine praxisnahe Orientierung, ersetzen aber keine individuelle Rechtsberatung.
Im Zweifel gilt: Im Zweifel Fachleute fragen.

  • Private Nutzung: SnapShotter ist für den privaten bzw. internen Einsatz gedacht. Der Code selbst
    ist unkritisch – entscheidend ist, was du überwachst und an wen du Bilder verschickst.
  • Einverständnis der Empfänger:innen: Alle Personen in der WhatsApp-Gruppe sollten wissen,
    dass dort automatisch Kamera-Bilder landen und damit einverstanden sein.
  • Kein Spam, keine Werbung: WhatsApp untersagt Spam und massenhafte automatisierte Nachrichten.
    Einzelne Bilder an eine private Gruppe sind normalerweise unproblematisch – aber du solltest es nicht als
    Werbekanal missbrauchen.
  • DSGVO & Kamera-Standort: Achte darauf, dass deine Kamera keine öffentlichen Bereiche (z. B.
    Gehweg, Straße) dauerhaft überwacht und dass Personen nicht unnötig aufgezeichnet werden.
  • Lokale Speicherung: Sowohl upcam-client als auch SnapShotter arbeiten mit lokalen Ordnern.
    Prüfe trotzdem, wie lange du Bilder wirklich aufbewahren möchtest.

Ressourcen & Links

Projekte stehen unter der MIT bzw. Pubic Domain-Lizenz und lassen sich frei in deinem eigenen Setup
einsetzen.


🔎
Transparenzhinweis:
Die Inhalte auf tiny-tool.de werden sorgfältig recherchiert, redaktionell geprüft und regelmäßig aktualisiert. Quellen und Zitate werden nachvollziehbar angegeben. Dennoch übernehmen wir keine Garantie für Richtigkeit, Vollständigkeit oder Aktualität der bereitgestellten Informationen. Irrtümer sind nicht ausgeschlossen.

Urheber & redaktionelle Unterstützung: Texte auf tiny-tool.de sind geistige Werke der Redaktion (Endredaktion: Guido Zeuner). Digitale Werkzeuge – darunter auch KI-basierte Hilfsmittel – kommen lediglich als Assistenzsysteme bei Recherche, Struktur oder Sprachoptimierung zum Einsatz. Auswahl der Inhalte, Struktur, Argumentation und finale Textfassung stammen von uns als natürlichen Personen; KI-Systeme sind keine Urheber.

Reichweitenmessung (VG Wort / METIS): Zur Ermittlung der Textreichweite werden Zählmarken der VG Wort eingesetzt. Aus technischen Gründen werden diese beim Aufruf der Seite geladen und können derzeit nicht über das Cookie-Banner blockiert werden, da keine Cookies gesetzt werden. Die Messung dient ausschließlich der Reichweitenstatistik; personenbezogene Profile werden nicht erstellt. Mehr dazu in unseren Datenschutzhinweisen.

Bitte beachte: Die Inhalte dienen ausschließlich der allgemeinen Information und stellen keine fachliche Beratung (z. B. rechtlicher, steuerlicher oder finanzieller Art) dar. Die Nutzung der Inhalte erfolgt auf eigene Verantwortung. Eine Haftung für Schäden materieller oder immaterieller Art ist ausgeschlossen, sofern kein vorsätzliches oder grob fahrlässiges Verschulden vorliegt.

Werbung & Affiliate-Links: Einige Beiträge enthalten werbliche Hinweise oder sogenannte Affiliate-Links. Diese sind entsprechend gekennzeichnet. Beim Klick entstehen dir keine zusätzlichen Kosten – wir erhalten ggf. eine kleine Provision.

Markenrechtlicher Hinweis: Alle Markennamen, Logos und Produktbezeichnungen sind Eigentum der jeweiligen Rechteinhaber und werden nur zur identifizierenden Beschreibung verwendet. Es besteht keinerlei Verbindung zu den genannten Unternehmen.

Externe Links: Diese Website enthält Verweise auf externe Websites Dritter. Trotz sorgfältiger Prüfung übernehmen wir keine Verantwortung für deren Inhalte. Bei Bekanntwerden rechtswidriger Inhalte entfernen wir entsprechende Links umgehend.