Rückgabewert wenn Download abgeschlossen möglich?
-
@Smo sagte in Rückgabewert wenn Download abgeschlossen möglich?:
bekommt ein SIGTERM und stirbt sang und klanglos. Ohne seine settings rauszuschreiben.
Soweit ich das sehe, werden die Einstellungen ständig aktualisiert. Wenn ein Film in den Download Tab kommt oder von dort entfernt wird, wird umgehend die Config-Datei geschrieben. Einzige Ausnahme: Wenn der Film erfolgreich gespeichert wurde, wird der Eintrag nicht aus den Downloads gelöscht und somit auch nicht aus den gespeicherten Einstellungen entfernt. Das könnte man ggf. noch direkt nach dem Download tun anstatt erst auf die Beendigung von MV zu warten.
-
@MenchenSued Bei Downloads hab ich es nicht probiert, aber ändert man Settings und schickt dann ein TERM stirbt der Prozess ohne die Settings zu schreiben.
-
@Smo sagte in Rückgabewert wenn Download abgeschlossen möglich?:
und nicht mehr drauf bestehst dass der Verlust von Daten akzeptabel ist.
Lass die Unterstellungen.
-
@DaDirnbocher sagte in Rückgabewert wenn Download abgeschlossen möglich?:
und SIGTERMs werden immer noch nicht korrekt behandelt.
Darüber gibts wohl unterschiedliche Ansichten. Vorsichtig formuliert.
Und damit EOD. Das führt zu nichts.
-
@Smo sagte in Rückgabewert wenn Download abgeschlossen möglich?:
@MenchenSued Bei Downloads hab ich es nicht probiert, aber ändert man Settings und schickt dann ein TERM stirbt der Prozess ohne die Settings zu schreiben.
Ja das ist vollkommen richtig da die config erst 5 Sekunden nach der letzten Änderung geschrieben wird.
-
@meistersun sagte in Rückgabewert wenn Download abgeschlossen möglich?:
Ist es möglich einen Rückgabewert an die MediathekView.exe zu geben wenn die Downloads abgeschlossen sind oder keine Downloads da sind?
Hiermit ist das, was du willst, möglich. Nur darf der Bildschirm nicht gesperrt sein:
nircmd win close stitle "MediathekView 1" timeout 2 nircmd win activate title "MediathekView beenden" timeout 2 nircmd sendkeypress a timeout 2 nircmd sendkeypress enter
nircmd gibt es hier:
https://www.nirsoft.net/utils/nircmd.htmlWobei der close-Befehl auch bei gesperrtem Bildschirm korrekt gesendet wird. Wenn man z.B. alle 30 Minuten diesen Befehl sendet, wird MV erst dann sauber (!) beendet, wenn alle Downloads abgearbeitet wurden. So mache ich es zurzeit.
-
@JD-Umsteiger Das hört sich gut an. Aber nochmal die Frage bevor ich mir unnötige Arbeit mache: Kommt ein neues Headless Frontend und wann?
-
@meistersun du kannst mit deiner Arbeit anfangen. Eine Version ist geplant aber nicht zeitnah.
-
@DerReisende77 Ok, habe ich verstanden. Das sollte so nicht rüberkommen aber kann ja trotzdem mal fragen. Wenn das nicht mehr erlaubt ist…
-
@meistersun sagte in Rückgabewert wenn Download abgeschlossen möglich?:
@JD-Umsteiger Das hört sich gut an. …
Bei Problemen oder Fragen einfach melden. Bei mir läuft es seit 2 Tagen. Ich verwende die Version mit gesperrtem Bildschirm, bei der muss man allerdings immer beide Fenster schließen:
nircmd win close stitle "MediathekView 1" timeout 2 nircmd win close title "MediathekView beenden"
Bei Bedarf kann ich dir hier gern eine auf deine Bedürfnisse zugeschnittene Lösung für den Windows-Task-Scheduler senden.
-
@meistersun sagte in Rückgabewert wenn Download abgeschlossen möglich?:
@DerReisende77 Ok, habe ich verstanden. Das sollte so nicht rüberkommen aber kann ja trotzdem mal fragen. Wenn das nicht mehr erlaubt ist…
Mein Post sollte weder angreifend noch sonstiges sein. Es ist nur eine kurze Antwort das zwar etwas geplant ist ich aber derzeit keine Zeit dafür habe und es keinen weiteren Entwickler gibt der sich das antun will. Deine verwendete Zeit wird also nicht vergeblich sein.
-
Ich habe mir mal angeguckt für eine CLI Version was mit Python zu schreiben. An sich kein Problem nur mag ich die Filmliste nicht auswerten. Mein Ziel wäre es, dass ein entsprechender CLI Client möglichst schlank und leichtgewichtig wäre, da passt ein runterladen und auswerten einer fetten Fake JSON Datei nicht so ganz dazu.
Da im Backend eh eine API geplant ist mit der das dann super einfach wäre habe ich das für mich erstmal zurückgestellt und nutze meine Zeit lieber für besagtes Backend.
-
@JD-Umsteiger Hallo, vielen Dank für den Tip, so habe ich es erstmal gelöst und es funktioniert prima. Danke nochmals.
-
@meistersun sagte in Rückgabewert wenn Download abgeschlossen möglich?:
@JD-Umsteiger Hallo, vielen Dank für den Tip, so habe ich es erstmal gelöst und es funktioniert prima. Danke nochmals.
Das freut mich, wenn ich helfen konnte
Und danke für deine Rückmeldung. -
Hallo liebe MV Gemeinde, es ist nun etwas her aber ich stelle nochmal die Frage ob es eine Headless MV Version geben wird. Ihr wisst schon: Die MV läuft bei mir auf einem Server, die Abo’s werden heruntergeladen und dann soll die MV geschlossen werden. Der Workarround mit dem Nircmd läuft zwar, aber nicht zu 100% verlässlich, sodass immer wieder doppelte/gerade gelöschte Folgen heruntergeladen werden. Die Ursache ist wohl, dass die Datenbank nicht ordnungsgemäß geschlossen wird.
Nochmal die Frage: Wird es eine Headless Lösung, ein CLI so wie früher mit dem Schalter -fastauto geben?
Wenn nicht, gibt es eine bessere Lösung als das Nircmd. Vorschläge bitte nur für Windows. Nein, ich werde das Ding nicht auf Linux portieren!Grüße
-
@meistersun sagte in Rückgabewert wenn Download abgeschlossen möglich?:
Nochmal die Frage: Wird es eine Headless Lösung, ein CLI so wie früher mit dem Schalter -fastauto geben?
Das wissen nur die Götter
Wenn nicht, gibt es eine bessere Lösung als das Nircmd. Vorschläge bitte nur für Windows. Nein, ich werde das Ding nicht auf Linux portieren!
Für das Beenden des Prozesses kannst du ein Windows-Systemprogramm nutzen:
taskkill /FI "WINDOWTITLE eq MediathekView 13.x.x"
(anpassen, Titel korrekt(!) schreiben)
Wenn du es vorher schaffst, im Download-Fenster mit einem (simulierten Mausklick) mit Autoit oder VB den Radiergummi zu betätigen so dass die Anzeige aller getätigten Downloads verschwindet, kann du in der Datei Mediathekview.xml überprüfen. ob <Downlad> und </Downlad> (Ja, bei mir steht da wirklich Downlad, 13.9.0) nicht mehr vorhanden sind (z. B. mit Find.exe), dann ist alles abgearbeitet und das Programm wird sauber mit dem o. a. Befehl beendet.
-
Danke für den Hinweis, aber wenn ich den Prozess kille, wird ja nicht die Datenbank aktualisiert. Das passiert ja nur wenn ich das Programm ordentlich schliesse.
Die MV weiss ja wann der letzte Download fertig ist und schliesst dann das Programm. Wo finde ich ein entsprechendes Signal dass alle Downloads abgearbeitet sind, ohne im Fenster Downloads säubern zu klicken? -
@meistersun sagte in Rückgabewert wenn Download abgeschlossen möglich?:
Danke für den Hinweis, aber wenn ich den Prozess kille, wird ja nicht die Datenbank aktualisiert. Das passiert ja nur wenn ich das Programm ordentlich schliesse.
Mit dem Windows-Befehl killst du nur dann, wenn du zusätzlich den Parameter /F einfügts. Ansonsten wird das Programm ordnungsgemäß geschlossen.
Warum gefällt dir das denn nicht ?
-
Ganz einfach gesagt: Wenn ich 1 oder 2 Filme im Download habe funktioniert es. Sind aber viele Downloads da, die nach dem Nircmd noch etwa 1 Stunde dauern funktioniert das nicht mehr und der MV Prozess wird von Nircmd nicht beendet. Jetzt kann man natürlich nach ca. 1,5 Stunden killen aber besser wäre wenn es das zu tun wenn kein Download mehr ansteht.
-
Welche Mediathek-Version verwendest du?