Gerätetyp anzeigen im Device Status / Log File per WebHooks + NAS PHP

Damit meinte ich eher eine eigene Dokumentation, welches Gerät ich in welchem Raum in welcher Dose und hinter welchem Schalter verbaut habe. Gleiches gilt für die entsprechenden Einstellungen die ich an den Geräten vorgenommen habe. Wenn das Gerät oder auch homee mal den Dienst quittiert nutzt mir das relativ wenig wenn ich es in den Geräteeinstellungen angezeigt bekommen würde.

Hi,

ich schreibe mir mein Parameteränderungen immer direkt in die PDF-Anleitungen, manchmal vergesse ich das aber oder habe so viel probiert, daß ich nicht mehr weiß welchen Wert ich wo eingegeben habe.
Da wäre es schon sinnvoll und smart, wenn man das aus Homee raus schreiben oder sogar in eine Datei speichern könnte…

Viele Grüße
JayJay

1 „Gefällt mir“

Hi @JayJayX

Damit hast du vollkommen recht. Womit wir wieder bei einem Logfile wären, in dem man nicht nur solche Änderungen einsehen kann, sondern auch wann und warum welches HG ausgelöst wurde oder eben auch nicht.

VG Sven

Hi,

dafür sende ich zu jeder wichtigen Aktion einen Webhook an meinen Server, der speichert dann mit Zeit und Datum wann was gemacht wurde. So konnte ich schon einige Fehler aufdecken.
Sicher wäre ein “echtes” Logfile eleganter. Vielleicht machen die Homees uns das ja mal zugänglich…

Viele Grüße
JayJay

Was brauche ich dazu auf meinem Server und wie kann ich das bei mir umsetzen. Habe da leider relativ wenig Ahnung. Vielleicht kannst du das kurz erklären wie ich das als Laie auch hinbekomme.

VG Sven

Ich bin auch noch ganz am Anfang, es geht bestimmt auch noch besser als so…

Jede Aktion beinhaltet einen Webhook:

http://ipadresse:port/log.php/?value1=eintragimlog

an meinen Server.
Dort habe ich ein kleines php-script (log.php) erstellt:

<?php $value1 = $_GET['value1']; $value2 = $_GET['value2']; exec("echo %date:~0% - %time:~0,8% Uhr $value1 $value2 >>Log_homee.txt"); exit(); ?>

Nun wird jede Aktion mit Zeit dokumentiert und ich kann sehen wo Verzögerungen sind oder etwas im Ablauf nicht stimmig ist…

Ich hoffe das hilft Dir weiter

Edit: Das sollte man aber nur mit Servern machen, die immer erreichbar sind, denn sind sie das nicht, wartet Homee leider bis zum Timeout, bevor weiter gemacht wird :frowning:

Viele Grüße
JayJay

2 „Gefällt mir“

Oh Danke, das werde ich dann mal testen. :+1:

Ich habe ein QNAP NAS permanent laufen, sollte also an der Verfügbarkeit nicht scheitern.

Viele Grüße

Sven

Edit: Was muss ich in den Webhookfeldern in homee noch eintragen? Oder bleiben die leer?

Du brauchst nur den Webhook und ersetzt “eintragimlog” mit dem Text den Du im Logfile haben möchtest, man kann ja leider keine Werte übergeben :frowning:

Hier mal ein kleiner Auszug wie das Logfile dann aussieht…

Die Farben macht Notepad++ mit Language-Einstellungen

2 „Gefällt mir“

Super, vielen Dank nochmal dafür. Damit lässt sich sicher schon der ein oder andere Fehler finden, wenn mal was nicht so läuft wie geplant.

1 „Gefällt mir“

Auf jeden Fall,
mir schwebt noch vor, damit die gemessenen Temperaturen von Homee an mein Wandtablet auszugeben. Leider muss man dann für jede Temperatur einen Webhook senden, da fehlte mir bisher noch die Lust und Zeit :smiley:

1 „Gefällt mir“

Soweit funktioniert der Eintrag im Logfile schon, ich bekomme aber den Zeitstempel nicht korrekt angezeigt, woran kann das liegen? Und wie bekomme ich im Eintragtext Leerzeichen angezeigt?
Bei mir sieht die Ausgabe im Notepad++ so aus:

%date:~0% - %time:~0,8% Uhr Logeintrag
%date:~0% - %time:~0,8% Uhr Logeintrag_erfolgreich

Edit:
Hab die Ausgabe des Zeitstempels inzwischen hinbekommen :relaxed:

<?php // Datum und Uhrzeitzeit schreiben $timestamp = time(); $datum = date("d.m.Y",$timestamp); $uhrzeit = date("H:i:s",$timestamp); $value1 = $_GET['value1']; $value2 = $_GET['value2']; exec("echo $datum $uhrzeit $value1 $value2 >>Log_homee.txt"); exit(); ?>

Jetzt fehlen mir nur noch die Leerzeichen im Text, ohne das ich “_” verwenden muss. Ist das auch irgendwie möglich?

Interessant…ich habe eine Syno als NAS. .
Was braucht man für so ein php Script bzw wie wird das ganze eingetreten? Gibts da eine Idotensichere Anleitung?

das würde mich auch Interessieren

Ja mich auch. Habe sowieso vor mir eine wd mirror mir 2x2 Tb zuzulegen, funktioniert das damit? Ist ja auch permanent in Betrieb.

Liebe Grüße Thorben

Hi @Sven ,

wie sieht denn Dein Webhook aus?
Bei mir ersetze ich die Leerzeichen durch ein “+”

http://ipadresse:port/log.php/?value1=eintrag+im+log

ohne Anführungszeichen…

@41564 @Mikle @Thorben

Ich bin auch erst am Anfang, aber es müsste bei Euren Servern mit dem gleichen Script funktionieren wie bei Sven, wenn die php können…

Viele Grüße
JayJay

Okay, mit dem Ersetzen der Leerzeichen mit dem + funktioniert die Ausgabe in der Datei mit einem Leerzeichen. Ich hatte zuerst einfach ein Leerzeichen gesetzt, worauf mir im Logfile nur das erste Wort ausgegeben wurde. Hab leider im Internet auf die schnelle keine passende Erklärung dazu gefunden. Aber jetzt passt es. Super :thumbsup:
Dann habe ich heute wieder was neues gelernt.

Der entsprechende webhook sieht dann so aus:
http://serverip/homeelog/log.php/?value1=BWM+EG+meldet+keine+Bewegung

Viele Grüße
Sven

Hatte ich vergessen dazu zu schreiben, weil ich das von der Sprachausgabe schon gewohnt war :smiley:

Prima, daß es jetzt funktioniert… Viel Erfolg bei der Fehlersuche :wink:

Viele Grüße
JayJay

1 „Gefällt mir“

Muss dafür irgendein Paket oder sowas freigeschaltet werden, damit der Webhook irgendwohin geschrieben wird? Irgendwie Blicke ich es noch nicht so ganz, wo das php eingetragen werden muss…

Ein Webhook wird nirgendwo “hingeschrieben”, es ist lediglich eine URL, die etwas ausführt wenn sie aufgerufen wird…
Läuft denn bei Dir ein Webserver? Ich habe das log.php einfach bei mir im Root-Verzeichnis gespeichert.

Ich habe eine Synology…nutze diese aber eher als Datenkabel und für die Kamera…
Das Potential, was sie anbietet nutze ich nicht aus…leider…deshalb die Frage, ob zusätzlich noch etwas eingerichtet werden muss auf dieser, damit der Webhook dann auch entsprechend die Daten irgendwohin liefern kann…also sprich ein Programm, wo ich dein Script oben einfach reinkopiere und das Verzeichnis festlegen, wo es gespeichert werden soll…also einfach ausgedrückt…Programm öffnen, dein Script kopieren, speichern, fertig…