Jump to content

Webhook o.ä. beim ersten Zugriff auf Receiver Hardware


fsommer1968

Recommended Posts

Hallo,

 

ich glaube so eine ähnliche Anfrage gabs schon einmal , aber ohne konkreten Vorschlag zur Umsetzung. Deshalb hier mein Use Case:

Ich möchte den Stromverbrauch meiner Anlage reduzieren. Der Kathrein SAT-IP Receiver verbraucht stolze 9 Watt im Standby, also rund um die Uhr.

 

Ist es möglich irgendwie festzustellen wenn auf die Receiver Hardware zugriffen wird, um bspw. per Script die Empfangshardware einzuschalten, und sobald der letzte Client sich abgemeldet hat, oder die letzte Aufnahme beendet ist,, sprich niemand mehr die Empfangs-HW benötigt? Eigentlich so etwas wie "Task vor Aufnahme/Tuning" und "Task nach letztem Zugriff". 

 

Ich habe schon drüber nachgedacht, das irgendwie übers Debugfile festzustellen (parsen), allerdings weiß ich nicht, wie ich festellen kann ob nichts mehr die HW benötigt.

 

Zur Vereinfachung kann man davon ausgehen, dass sämtliche Zugriff auf die Empfangs-HW über den Media-Server passieren.

Edited by fsommer1968
typo
Link to comment

Hallo,

 

läßt sich Dein Kathrein SAT-IP Receiver per Software aus- und einschalten?

 

Bei meinen DBVSky S960 V2 USB-Boxen besteht diese Möglichkeit nicht. Diese lassen sich wahrscheinlich per Fernbedienung in den Standby schalten und wenn ich die Wiedergabe im DVBViewer ausschalte und auch keine Aufnahme erfolgt, leuchtet die grüne Bereitschafts- statt der roten Status-LED. Ansonsten hängen sie an Steckernetzteilen. Selbst bei Standalone Receiver sind echte Power-Schalter eher selten.

 

 

Viele Grüße

 

Webturtle

Link to comment

Auch die Kathrein SAT-IP Server (bsp. EXIP4124) lassen sich nicht per SW ein/ausschalten. Das erledige ich dann über eine Schaltsteckdose, aber dazu muß ein Script natürlich wissen, wann der SAT-IP Server gebraucht/nicht mehr gebraucht wird. Daneben braucht der Kathrein immer mindestens 8W, egal ob aktiv oder nicht aktiv.

Link to comment
12 hours ago, fsommer1968 said:

Ist es möglich irgendwie festzustellen wenn auf die Receiver Hardware zugriffen wird, um bspw. per Script die Empfangshardware einzuschalten, und sobald der letzte Client sich abgemeldet hat, oder die letzte Aufnahme beendet ist,, sprich niemand mehr die Empfangs-HW benötigt? Eigentlich so etwas wie "Task vor Aufnahme/Tuning" und "Task nach letztem Zugriff". 

 

Ich wüsste nicht wie. Das Problem ist vor allem, dass der Zugriff auf einen Sat>IP-Server sofort scheitert, wenn dieser nicht erreichbar ist. Was auch immer vor einem solchen Zugriff aufgerufen wird, müsste den Ablauf verzögern, bis der Kathrein Sat>IP Server bereit ist. Externe Tasks sind jedoch normalerweise eigenständige asynchrone Prozesse, die unabhängig von Abläufen im DVBViewer Media Server ausgeführt werden.

 

Nichtsdestotrotz werde ich mir durch den Kopf gehen lassen, welche Ergänzungen ein solches Vorhaben erfordern würde. Das Anliegen finde ich durchaus berechtigt. 9W machen immerhin an die 80 kWh im Jahr aus.

 

9 hours ago, Webturtle said:

Bei meinen DBVSky S960 V2 USB-Boxen besteht diese Möglichkeit nicht. (...) wenn ich die Wiedergabe im DVBViewer ausschalte und auch keine Aufnahme erfolgt, leuchtet die grüne Bereitschafts- statt der roten Status-LED.

 

Gehört hier thematisch nicht hin, aber trotzdem darauf eine kurze Antwort: Das liegt daran, dass du den IR-Empfänger der Box über ein Fernbedienungs-Plugin nutzt. Das hält die Box in Betrieb. Weitere Diskussionen darüber bitte in einem separaten Thema!

 

Link to comment

Hallo Griga,

 

vielen Dank für Deine Antwort. ich würde es sehr begrüßen, wenn in Zukunft sich hinsichtlich so einer Funktion etwas tun würde!

 

Für die Übergangszeit habe ich mir einen Workaround mit tcpdump und scannen nach ARP Requests auf den SAT-IP Server gebastelt. Scheint soweit zu funktionieren: Sobald ein Media Server Timer, oder der DVBViewer gestartet wird, sorgt ein erkanntes ARP who-has Paket auf die IP des SAT-IP Servers dafür, dass die Schaltsteckdose mit dem SATIP-Server dran eingeschaltet wird. Das Ausschalten nach einer gewissen  Zeit übernimmt die Steckdose selbst.

 

rem @ECHO OFF
rem SETLOCAL

:start

 rem ARP who-has Paket suchen
 windump -i 3 -q -n -c 1  arp and dst  192.168.178.219 and arp[6:2] == 1
 rem Schaltsteckose einschalten, ausschalten tut die Dose selbst, wenn 30 Minuten kein ARP Request kam
 curl http://webserver.fritz.box/schalten.php?EXIPHELP=an

 c:\windows\system32\timeout /t 600
rem 10 Mintuen pause reduziert Last
goto start

:exit

 

Edited by fsommer1968
Link to comment
2 hours ago, fsommer1968 said:

Für die Übergangszeit habe ich mir einen Workaround mit tcpdump und scannen nach ARP Requests auf den SAT-IP Server gebastelt.

 

Dem kann ich erst mal nicht folgen, da ich mich mit diesem Bereich noch nie befasst habe.

 

Ich habe mich in der Zwischenzeit gefragt, ob es nicht am einfachsten wäre, den Kathrein mit der Laufzeit des PC zu synchronisieren, auf dem der DVBViewer Media Server läuft. Solange der PC eingeschaltet bzw. wach ist, ist auch der Kathrein eingeschaltet. Das ließe sich relativ leicht aus Botschaften ableiten, die Windows beim Hoch/Runterfahren bzw. Aufwachen/Einschlafen sendet.

 

Link to comment

Hi  Griga,

 

der Media Server läuft immer durch und wann auf den Kathrein zugegriffen wird (via DVBViewer) kann man nicht vorab festlegen. Ich schau jetzt mal wie praxistauglich die ARP-Scan Variante ist.

Link to comment
On 9/12/2022 at 9:59 PM, fsommer1968 said:

der Media Server läuft immer durch

 

 Vielleicht solltest du da mal mit dem Stromsparen anfangen ;)

 

Den Kathrein Sat>IP-Server je nach Bedarf ein/auszuschalten, würde im Media Server zwei neue Konfigurationsmöglichkeiten für externen Prozess-Tasks erfordern:

  • Es müssen neue (wählbare) Trigger eingeführt werden, die einen externen Prozess starten. Bislang sind das nur Timer oder Klicks im Webinterface. Da das Kosten/Nutzen-Verhältnis einer Implementation für nur einen speziellen Anwendungszweck zu schlecht ist, stellt sich die Frage, wie sich ein breitbandigerer Nutzen konzipieren lässt. Für welche Art Trigger besteht über den hier geschilderten Zweck hinaus Bedarf? Soll/muss der Media Server dem gestarteten Prozess Kommandoparameter übergeben, und falls ja, welche (z.B. bestimmte Status-Informationen)?
  • Da die Kontaktaufnahme mit einem Sat>IP Servers scheitern würde, wenn er noch nicht betriebsbereit ist, muss die Task, die ihn "on demand" einschaltet, den Vorgang verzögern. Es muss konfigurierbar sein, ob eine Task den Media Server anhält, bis der gestartete Prozess sich beendet hat. Das ist auf einfache Weise möglich, wie gerade ein Versuch ergeben hat. Kritisch ist dabei jedoch, dass der Media Server im angehaltenen Zustand so gut wie tot ist - er reagiert nicht mehr.

 

On 9/6/2022 at 8:11 PM, fsommer1968 said:

Ist es möglich irgendwie festzustellen wenn auf die Receiver Hardware zugriffen wird, um bspw. per Script die Empfangshardware einzuschalten, und sobald der letzte Client sich abgemeldet hat, oder die letzte Aufnahme beendet ist,, sprich niemand mehr die Empfangs-HW benötigt? Eigentlich so etwas wie "Task vor Aufnahme/Tuning" und "Task nach letztem Zugriff". 

 

Dass Problem ist hierbei, dass es im DMS einen Mischbetrieb mit verschiedenen Datenquellen geben kann, z.B. zwei Sat>IP Server, oder ein Sat>IP Server plus DVB-Hardware, und er nicht weiß, woran ein spezielles Interesse besteht. Sat>IP Server haben i.a. mehrere Tuner, repräsentiert durch eine entsprechende Anzahl RTSP-Netzwerkgeräte in der Hardware-Konfiguration des DMS. Der DMS weiß auch nicht, welche Tuner gemeinsam zu einer bestimmten Sat>IP- oder DVB-Hardware gehören, weil das normalerweise für ihn irrelevant ist, könnte dies aber mit zusätzlichem Implementationsaufwand anhand der IP-Adresse oder Geräte-ID feststellen und eine Task auslösen, wenn der erste Tuner einer solchen "Gruppe" angefordert oder der letzte freigegeben wird.

 

Das einfachste wäre aus DMS-Sicht, bei jeder Anforderung und Freigabe eines Tuners einen Task-Trigger auszulösen, sofern definiert, und dem gestarteten Prozess bei jeder Anforderung und Freigabe die gesamte Hardware-Liste mitsamt dem Status jedes einzelnen Tuners (verwendet/nicht verwendet) zu übergeben. Damit stellt sich jedoch die Frage nach dem Format der Liste und der Art der Übergabe. Wie auch immer - die Task müsste dann in der Lage sein, die Liste zu lesen und auszuwerten - auch nicht gerade trivial. ;)

 

Link to comment

>Vielleicht solltest du da mal mit dem Stromsparen anfangen ;)

 

Da wär ich ohne Dich nicht drauf gekommen 😉  

 

Tatsächlich ist das nicht nur mein Media Server, sondern auf einem Notebook läuft in einer anderen Instanz meine komplette Haussteuerung sowie ein Webserver. Das Notebook braucht im Dauerbetrieb (2 virtuelle Windows, 1 virtuelle Linux Instanz) nur 8 Watt. Das ist sogar noch weniger als das One-Trick-Pony Kathrein SAT-IP Server.

 

Auf jeden Fall vielen Dank für Deine Gedanken zur Umsetzung von Trigger Tasks. Fürs erste habe ich ja einen Workaround und scheinbar hat bisher niemand anders den Bedarf nach Tasks bei Tuneranforderung.

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...