[Modul] Synology

Das Modul nutzt die Synology API um die Systemparameter auszulesen.

Instanzen:

SynologyIO
Die IO-Instanz stellt die Verbindung zur Synology her und kümmert sich um den Anmeldevorgang.

SynologySystem

  • Anzeige von Verbindungszustand
  • Anzeige der CPU-Last (5 min)
  • Anzeige der Laufzeit in Stunden
  • Anzeige der Systemtemperatur
  • Anzeige der Speicherauslastung
  • Anzeige des eingehenden (gesamten) Netzwerkverkehrs
  • Anzeige des ausgehenden (gesamten) Netzwerkverkehrs
  • Anzeige des Zustands des NAS (Systemabsturz)
  • Anzeige der aktuellen Firmwareversion
  • Anzeige verfügbarer Aktualisierungen

SynologyStorage

  • Ausgabe des Zustands der Speicherpools
  • Ausgabe des Zustands der Volumes
  • Ausgabe der prozentualen Belegung der Volumes

SynologySurveillanceStation

  • Liefert den Zustand der Kameras der SurveillanceStation

Installation:

  • Über den Module Store das ‚Synology‘-Modul installieren. (BETA)
  • Alternativ über das Module Control folgende URL hinzufügen:
    GitHub - timo-u/Symcon_Synology

Getestet:
Getestet und entwickelt wurde das Modul mit DSM 6.2.4

Feedback:
Ich freue mich über Feedback zu dem Modul.
(hier oder über github Github Issues)

1 „Gefällt mir“

Moin,
viele Sachen mache ich zwar schon über SNMP aber das Modul ist trotzdem interessant danke. Aufpassen muss man ein wenig wenn man ein externes Zertifikat hat dann darf man nicht den HTTPS-Port sondern muss den HTTP-Port angeben und die Überprüfung des Zertifikates ausschalten.

Ralf

1 „Gefällt mir“

Hallo Ralf,

SNMP habe ich bislang auch genutzt. Ich bin aber darüber nicht an alle Daten gekommen, die für mich wichtig sind. Lieder ist die API-Dokumentation an einigen Stellen auch nicht vorhanden :roll_eyes:

Zum Thema SSL und Internes Zertifikat:
Hierfür gibt es die beiden Schalter „Server Überprüfen“ und „Zertifikat Prüfen“.

Bei „Server Überprüfen“ wird geprüft ob das Zertifikat zum Server passt.
Bei „Zertifikat Prüfen“ wird die Zertifikatskette geprüft.

Ich verwende (intern) eine eigene CA und habe damit Zertifikate für die Geräte ausgestellt. Somit kann ich mit den Einstellungen „Server Überprüfen“ an und „Zertifikat Prüfen“ aus auch mit SSL auf Port 5001 arbeiten. Scheinbar könnte man auch sein eigenes CA-Zertifikat dort einstellen. Das kann ich mal testen und ggf. noch einbauen. Somit wäre die Zertifizierungskette sogar valide :slight_smile:

Moin,
bei SNMP ist es noch schwieriger zu finden was man sucht. Die meisten OIDs habe ich mit einem SNMP-Walker und raten gefunden. Was brauchtest Du denn vielleicht kann ich da weiter helfen? Anbei mal ein Teil der Daten die ich bekomme.

Ralf

cool gleich mal probiert. Null Probleme. Good Job !
Schönheitssache: bei der SS Einstellung sind für die 60 min der Text 30 Min angegeben.

Was mir bei SNMP gefehlt hatte war der Freie Speicher vom Volume.
Aber jetzt nutze ich SNMP ohnehin nicht mehr :wink:

Danke :slight_smile:

bei der SS Einstellung sind für die 60 min der Text 30 Min angegeben

Danke ist gefixt :wink:

Moin,
Volume frei ist hier bei ID 15257. Ist auch einer der wichtigen Werte bei mir.

Ralf

1 „Gefällt mir“

Hi.

Cooles Modul. Scheint mit DSM7 auch zu funktionieren.

1 „Gefällt mir“

Scheint mit DSM7 auch zu funktionieren

Danke für die Info :slight_smile:
Sollte auch weiterhin aufwärts und abwärtskompatibel sein. Ich bin noch nicht auf DSM7 (will die erst noch mal bisschen abhängen lassen :wink: )
Sofern mehrere API-Versionen verfügbar sind, wird die höchste implementierte genommen. Bzw. sich auf das Höchste „geeinigt“. Scheinbar gibt es keine gravierenden Unterschiede für die Grundfunktionen.

Welchen Port muss man den angeben?
Ok habs kapiert: 5000

HTTP Port ist 5000
HTTPS Port ist 5001

Da die Anmeldedaten übertragen werden sollte man HTTPS mit 5001 nutzen.

Ja Danke. Ich brauche immer etwas länger :slight_smile:

Habe aber gleich ein Problem bei 2 NAS:
Beim Storage kann ich zwar das Gateway ändern, bei der 2. NAS DS920+ kommt aber immer ein Fehler:

Notice: Undefined property: stdClass::$dev_path in /var/lib/symcon/modules/.store/firebuster.synology/SynologyStorage/module.php on line 64

Notice: Undefined property: stdClass::$dev_path in /var/lib/symcon/modules/.store/firebuster.synology/SynologyStorage/module.php on line 65

Notice: Undefined property: stdClass::$dev_path in /var/lib/symcon/modules/.store/firebuster.synology/SynologyStorage/module.php on line 67

Notice: Undefined property: stdClass::$dev_path in /var/lib/symcon/modules/.store/firebuster.synology/SynologyStorage/module.php on line 68

Ich schaue es mir morgen mal genau an :wink:

1 „Gefällt mir“

Der Fehler sollte behoben sein. Scheinbar liefert die API bei dir dieses Feld „dev_path“ nicht.
Da dieses Feld nur für die Erstellung des Ident genommen wird, kann ich da aber ausweichen.
Ein Fix gibt es im Github und im Store in der Beta.

Moin.

Bei mir kommt folgender Fehler mit der aktuellen Beta:

14.10.2021, 09:37:54 | TimerPool | Synology Storage (Update):
Notice: Undefined property: stdClass::$desc in C:\ProgramData\Symcon\modules.store\firebuster.synology\SynologyStorage\module.php on line 76

Notice: Undefined property: stdClass::$desc in C:\ProgramData\Symcon\modules.store\firebuster.synology\SynologyStorage\module.php on line 79

Hast du eine Beschreibung des Volumes eingegeben?
Kannst du mir mal das Json-Objekt aus dem Debug schicken?

Habe Dir die Datei per Email geschickt…

Super das war sehr hilfreich :relaxed:
ggf. gibt es hier bei der DSM7 wirklich Unterschiede.
Ich habe jetzt die Keys auch mit rein genommen, so dass es jetzt auch funktionieren sollte.
Ein Fix gibt es im Github und im Store in der Beta :wink:
Damit sollte es jetzt funktionieren.

Sieht gut aus jetzt. :+1: Denke Du hast den Käfer erwischt.

1 „Gefällt mir“