Get the FREE Ultimate OpenClaw Setup Guide →
p

Synology Surveillance

Use Caution

@photonixlaser-ux

npx machina-cli add skill @photonixlaser-ux/synology-surveillance-skill --openclaw
Files (1)
SKILL.md
3.5 KB

Synology Surveillance Station Skill

Steuere deine Überwachungskameras über die Synology Surveillance Station API.

Voraussetzungen

  1. Synology NAS mit installierter Surveillance Station
  2. Benutzer mit Surveillance Station-Rechten
  3. 2FA deaktiviert für den API-Benutzer
  4. jq installiert (apt install jq)

Schnellstart

1. Konfiguration in TOOLS.md

Füge die Verbindungsdaten zu TOOLS.md hinzu:

### Synology Surveillance
- **Host:** 192.168.1.100 (deine NAS IP)
- **Port:** 5000 (HTTP) oder 5001 (HTTPS)
- **User:** surveillance_user
- **Pass:** dein_passwort
- **HTTPS:** false (true falls HTTPS aktiviert)

2. Login testen

./scripts/syno-surveillance.sh login

3. Kameras anzeigen

./scripts/syno-surveillance.sh cameras

Output:

ID: 1, Name: Eingang, Status: 1
ID: 2, Name: Garten, Status: 1
ID: 3, Name: Garage, Status: 0

4. Snapshot erstellen

./scripts/syno-surveillance.sh snapshot 1

Speichert: syno_snapshot_1_1738972800.jpg

5. Ereignisse anzeigen

# Letzte 10 Ereignisse
./scripts/syno-surveillance.sh events

# Letzte 50 Ereignisse
./scripts/syno-surveillance.sh events 50

Verfügbare Befehle

BefehlBeschreibung
loginSession erstellen (wird automatisch bei anderen Befehlen ausgeführt)
logoutSession beenden
camerasAlle Kameras mit ID und Status auflisten
snapshot <id>Snapshot einer Kamera erstellen
record <id> start|stopAufnahme starten/stoppen
events [limit]Ereignis-Log anzeigen
stream <id>Live-Stream URL generieren
ptz <id> <direction>PTZ-Kamera bewegen (left/right/up/down/zoomin/zoomout)
preset <id> <num>PTZ-Voreinstellung anfahren

Umgebungsvariablen

VariableStandardBeschreibung
SYNOLOGY_HOST192.168.1.100NAS IP/Hostname
SYNOLOGY_PORT5000NAS Port
SYNOLOGY_USERadminUsername
SYNOLOGY_PASS(leer)Passwort
SYNOLOGY_HTTPSfalseHTTPS verwenden

Direkte API-Calls

Falls das Script nicht passt, direkt mit curl:

# Login
curl -c cookies.txt "http://192.168.1.100:5000/webapi/auth.cgi?api=SYNO.API.Auth&method=login&version=3&account=USER&passwd=PASS&session=SurveillanceStation&format=cookie"

# Snapshot
curl -b cookies.txt "http://192.168.1.100:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&method=GetSnapshot&version=1&cameraId=1" -o snapshot.jpg

API Details

Für komplexere Operationen: references/api.md

Home Assistant Integration

Für Home Assistant Nutzer: Der Skill kann auch für HA Automatisierungen genutzt werden:

shell_command:
  syno_snapshot: "/pfad/zu/syno-surveillance.sh snapshot {{ camera_id }}"

Troubleshooting

  • Login failed: Passwort prüfen, 2FA deaktivieren
  • Permission denied: Benutzer braucht Surveillance Station-Rechte
  • Camera not found: Kamera-ID prüfen mit cameras Befehl
  • Empty snapshot: Kamera offline oder keine Lizenz verfügbar

Lizenz-Hinweis

Surveillance Station benötigt pro Kamera eine Lizenz (2 kostenlose inklusive bei den meisten NAS-Modellen).

Source

git clone https://clawhub.ai/photonixlaser-ux/synology-surveillance-skillView on GitHub

Overview

Dieser Skill steuert Kameras über die Synology Surveillance Station API. Nutze Snapshots, Live-Streams, Aufnahmen, PTZ-Steuerung und Ereignis-Überwachung direkt aus Automatisierungen. Voraussetzung ist eine Synology NAS mit Surveillance Station.

How This Skill Works

Der Skill authentifiziert sich gegenüber der Surveillance Station API und führt API-Calls über Shell-Skripte oder curl aus (z. B. login, cameras, snapshot, record, events, stream, ptz). Du kannst das bereitgestellte Skript syno-surveillance.sh verwenden oder direkte API-Endpunkte wie SYNO.API.Auth und SYNO.SurveillanceStation.* ansprechen. Die Ergebnisse werden über JSON oder API-Antworten zurückgegeben, ideal für Integrationen.

When to Use It

  • Wenn du Live-Streams oder Streams-URLs deiner Kameras in Automatisierungen integrieren möchtest.
  • Wenn du automatisiert Snapshots zur Beweissicherung oder Dokumentation erstellen willst.
  • Wenn du Aufnahmen per Befehl starten oder stoppen musst (z. B. zeitgesteuerte Aufnahmen).
  • Wenn du PTZ-Befehle oder Presets in eine Automatisierung einbinden willst.
  • Wenn du zuletzt Ereignisse aus der Surveillance Station überwachen und protokollieren musst.

Quick Start

  1. Step 1: Trage Host, Port, User, Pass und HTTPS-Einstellung in TOOLS.md oder als SYNOLOGY_*-Umgebungsvariablen ein.
  2. Step 2: Teste den Login: ./scripts/syno-surveillance.sh login
  3. Step 3: Zeige Kameras oder erstelle einen Snapshot, z. B. ./scripts/syno-surveillance.sh cameras oder ./scripts/syno-surveillance.sh snapshot 1

Best Practices

  • Verwende einen dedizierten Surveillance Station API-Benutzer mit eingeschränkten Rechten.
  • Deaktiviere 2FA für den API-Benutzer gemäß den Vorgaben, damit API-Benutzerlogin funktioniert.
  • Nutze HTTPS (SYNOLOGY_HTTPS) und sichere Passwörter; verschiebe sensible Daten in sichere Umgebungen.
  • Installiere jq und halte Skripte sowie Abhängigkeiten aktuell.
  • Speichere Anmeldedaten außerhalb des Codes (Environment Variables oder Tools.md) und verwende klare Rechte- und Zugriffskontrollen.

Example Use Cases

  • Kamerasliste abrufen: ./scripts/syno-surveillance.sh cameras
  • Snapshot einer Kamera erstellen: ./scripts/syno-surveillance.sh snapshot 1
  • Live-Stream-URL generieren: ./scripts/syno-surveillance.sh stream 2
  • Aufnahme starten/stoppen: ./scripts/syno-surveillance.sh record 2 start
  • Letzte 50 Ereignisse anzeigen: ./scripts/syno-surveillance.sh events 50

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers