Jump to content
nuts

Erweitertes Beenden v2 / Extended Exit v2

Recommended Posts

Tüftler

nur kein Stress

Share this post


Link to post
nuts

Ich hab das Testskript in Post 114 erneut hochgeladen.

Es zeigt jetzt auch an wenn Strg+r gedrückt wurde.

 

Kannst du das mal mit der Fernbedienung (Strg+r auf die Powertaste anlernen) und über die Tastatur testen?

Edited by nuts

Share this post


Link to post
Tüftler

Ja, das kann ich. Ich habe auch sowohl mit der Fernbedienung als auch mit der Tastatur getestet, beides ging nicht.

Share this post


Link to post
nuts

Mit dem WM_POWERBROADCAST Testskript? :unsure:

Geht nicht?

edit\ Naja das war etwas schlecht beschrieben sorry. 0 Downloads beim WM_POWERBROADCAST Testskript deutet darauf hin, dass du etwas anderes getestet hast. ;)

Edited by nuts

Share this post


Link to post
Tüftler

Nee, nicht heute sondern gestern. Das neue teste ich doch erst noch...

Share this post


Link to post
Tüftler

so jetzt nochmal mit dem Powerlog:

 

man sieht der Tastenbefehl kommt an, soweit alles bestens.

 

Nur wird nicht mit Resume weitergemacht, siehe Extended Exit log:

Edited by Tüftler

Share this post


Link to post
nuts

Ok. Also liegts am Skript. :(
Melde mich wieder.

 

Edit\ Habs gefunden! Neue Testversion folgt.

Edited by nuts

Share this post


Link to post
nuts

So jetzt müsste es gehen. :)

 

edit\ Neuste Version im Startpost

Edited by nuts

Share this post


Link to post
Tüftler

Super nuts das klappt jetzt, danke.

Share this post


Link to post
nuts

Im Startpost gibt es jetzt Version 1.0 (inkl. Sourcecode und allen includes).

Alle anderen Versionen habe ich jetzt gelöscht, da die Änderungen im Sourcecode zu groß waren um die alten Versionen weiterhin zu unterstützen.

 

Eine wichtige Änderung gibt es:

Alle meine Skripte (Extendes Exit, ProcesstaskEX, Sleeptimer, Sendcommandv2, TCPControl) teilen sich für bestimmte Daten eine Konfigurationdatei (my_scripts.ini).

 

Sieht so aus ([TaskManager] => noch ohne Funktionalität):

[settings]
Devcon=
cec-client=

[TCPControl]
IP=127.0.0.1
Port=24089

[RecordingService]
IP=127.0.0.1
Port=80
User=Admin
Password=

[Denon]
IP=192.168.1.115
Port=23

[EventghostTCP]
IP=127.0.0.1
Port=1024
Password=""

[TaskManager]
User=
Password=
Path=
Arguments=
WorkingDirectory=
Domain=

Ist zwar etwas nervig das jetzt neu einzurichten, erleichtert bei mehreren Skripten die Einrichtung für die Zukunft aber erheblich.

 

Funktionen sind alle im Startpost aufgeführt.

 

Neu ist "tcpcontrol" und "showwarning".

Mit dem Befehl "tcpcontrol" kann mit meinem Skript "TCPControl.exe" kommuniziert werden.

Beispiele:

tcpcontrol=isrecording => bricht die laufende Sektion bei einer erkannten Aufnahme ab

tcpcontrol=isrecodring%customsection => ruft bei laufender Aufnahme die section "customrection" in Extended Exit_config.ini auf

tcpcontrol=sendcommand%6 => schickt die ActionID 6 an den DVBViewer (auf dem PC mit

 

Mit showwarning=1 erscheint bei "checkrecodring", "checktimeshift" oder "checkrecordingRS" eineAbfrage ob die Sektion ggf. abgebrochen werden soll.

Ohne diesen Eintrag kommt keine Abfrage mehr.

 

Ich hoffe es funktioniert noch alles, ansonsten bitte melden! :)

Share this post


Link to post
Geneon

Hallo, ich suche eine Alternative zur der Funktion "Start after" vom Task Scheduler, welcher ja in den neuen DVBViewer Versionen nicht mehr unterstützt wird, um ein Skript (Exe-Datei) nach beenden des DVBViewers zu starten. Mehr will und brauche ich nicht, es soll nur mein Script gestartet werden und danach der PC heruntergefahren werden, so wie das zur Zeit bei mir ist.

 

Ich habe ein Verständnisproblem zu diesem "Extended Exit v2", erweitert dieses Script das bestehende "Exit" Script vom DVBViewer oder ersetzt es ihn?

Erwähnen will ich noch, das ich so gut wie keine Ahnung von Scripten habe, verzeiht mir, wenn ich nun Blödsinn frage.

Wenn es ihn erweitert, wofür gibt es dann Abfragen wie "checkrecording" im Script? Das macht doch der DVBViewer von sich aus schon, wäre ja alles doppeltgemoppelt. Und wenn es ihn ersetzt, werden dann diese Einstellungen http://de.DVBViewer.tv/wiki/Optionen_Beenden nutzlos? Und ich muss das dann alles in eine Ini Datei reinprogrammieren? Also ich stehe da grade so ein bisschen auf dem Schlauch.

 

Wahrscheinlich wäre ich sofort schlauer, wenn ich es einfach ausprobieren würde, aber ich habe Angst mir den DVBViewer zu zerschießen bzw. das er da was ändert, was ich nicht mehr so ohne weiteres rückgängig machen kann.

 

Wie wird "Extended Exit v2" installiert? Muss ich das Zip Archiv in einen bestimmten Ordner entpacken?

Also ich habe das mal auf meinem Laptop (da ist kein DVBViewer installiert) ausprobiert. Zip heruntergeladen und entpackt, Extended Exit_v2.exe gestartet, es werden 2 Verknüpfungen erstellt: "Extended Exit Create Readme" und "Extended Exit Setup". Und ein der Ordner "my_scripts" in "C:\ProgramData\. Wird noch irgendwo was erstellt oder geändert?

Ein Doppelklick auf "Extended Exit Create Readme" erzeugt die selbe Readme.txt Datei in "my_scripts" wie schon im Zip enthalten. Und ein doppelklick auf "Extended Exit Setup" da will er die Datei windowdef.xml haben, da ist wohl das original "Exit" Script enthalten, welches er erweitern oder ersetzen oder was auch immer will.

 

Falls mir die Installation gelingt, dann muss ich die Datei C:\ProgramData\my_scripts\Extended Exit.ini nach meinen Wünschen anpassen. Ok, also ich fahre den PC immer nur herunter, brauche also nur "Shutdown". Muss ich dann alle anderen Einträge wie "Standby" und "Reboot" löschen?

Und bei Shutdown trage ich dann folgenden ein:

 

[shutdown]
showwarning=1
checkrecording=1 oder doch 0, der DVBViewer hat doch schon so eine Abfrage? Also wenn ich beenden will obwohl er gerade aufnimmt sagt bzw. fragt er mich das.
checktimeshift=0 Timeshift nutze ich nicht
checkrecordingRS=0 RS nutze ich auch nicht
sendcommand=12325

run oder runwait=C:\TVReg\TVReg.exe das ist mein Script welches ausgeführt werden soll; runwait hört sich sicherer an, damit es auch wirklich komplett abgearbeitet wird bevor heruntergefahren wird

shutdown=1

 

Wäre das soweit richtig?

 

Wird mit diesem Script meine jetzige Bedienung beibehalten?

Also ich schaue Fern und will nun den PC ausschalten, drücke auf meiner iMon Fernbedienung (welche mit Tüftlers iMonPad Konfig wunderbar läuft) den Power Button, DVBViewer fragt ob ich wirklich ausschalten will, ich sage ja, DVBViewer schließt sich, mein Script blinkt kurz auf, PC fährt herunter.

Anderes Szenario: der DVBViewer beendet eine Aufnahme und es kommt die Meldung das er den PC herunterfahren wird, wenn ich es nicht will, dann abbrechen drücken. Drücke ich abbrechen, kann ich weiter fernschauen, tue ich es nicht, schließt DVBViewer nach 60sec, mein Script blinkt kurz auf, PC fährt herunter.

 

Das wäre glaube ich erst mal alles, wenn mich jemand aufklären kann wäre ich sehr dankbar :wave:

Achja, mein Script trägt die nächstkommende Aufnahmezeit in den iMon Manager, welcher dann den PC hochfährt, bei Interesse siehe Thread http://www.DVBViewer.tv/forum/topic/35512-mit-imon-manager-den-htpc-starten/

Edited by Geneon

Share this post


Link to post
nuts

Das "Original Exit" bliebt natürlich erhalten. Die windowdef.xml wird benötigt um das Skript im OSD einzutragen.

 

Ganz grundsätzlich läuft das so ab:

Das Skript wird aufgerufen und dann erscheint (OSD) eine Auswahl an den in der INI hinterlegten Sektionen (Shutdown, Standby je nachdem was in der INI steht).

Danach kannst du eine Aktion auswählen und die dahinterstehende Sektion wird abgearbeitet (z.B. Die von dir gepostet Shutdown Sektion).

 

Die Überprüfung ob eine Aufnahme läuft ist nötig damit das Skript überprüft ob eine Aufnahme läuft.

Sonst rauscht die Sektion weiter durch bis zum Shutdown Befehl und beendet den Computer trotz laufender Aufnahme.

 

Wenn du wirklich nur einen Befehl hinterlegen willst kann du das Skript auch direkt aus dem Imon Manager starten.

Damit keine Auswahl im OSD erscheint muss dort allerdings ein Kommandoparameter mitgegeben werden.

%\extended exit v2.exe - shutdown

=> es wird direkt die Sektion Shutdown abgearbeitet ohne OSD und Auswahl.

Share this post


Link to post
Geneon

Danke erstmal für die Antwort. Das heißt ich müsste anstatt wie jetzt einfach auf den Power-Button der Fernbedienung zu drücken um DVBViewer zu beenden und gleichzeitig herunterzufahren, jetzt erst ins OSD Menü und dort das Extended Exit auswählen um den PC herunterzufahren.

Aber wie sieht es dann aus wenn was in Abwesenheit aufgenommen und anschließend automatisch heruntergefahren wird? Dann würde ja das Extended Exit Scrip übergangen werden und somit auch mein Script nicht ausgeführt werden :(

 

Über den den Imon Manager das Script starten? Weiß zwar spontan nicht wie, aber hört sich an als ob ich das immer dann manuell starten müsste. Wäre da aber nicht das selbe Problem mit einer Aufnahme in Abwesenheit und dem anschließenden automatischem Herunterfahren? Sprich Extended Exit wird nicht ausgeführt und somit auch mein Script nicht ausgeführt :(

Share this post


Link to post
nuts

Mit ist noch nicht so ganz klar was du machen willst.

 

Was mein Skirpt kann ist folgendes:

1.) Ein OSD einblenden um zwischen den Aktionen auszuwählen (der Schritt kann übersprungen werden).

2.) Der Benutzer kann die Aktionen völlig frei zusammenstellen.

 

Willst du nicht lieber den Recordingservice für Aufnahmen einsetzen? Oder den internen Task Scheduler des DVBViewer?

Die wecken den PC auch auf wenn dieser für Aufnahmen benötigt wird.

Edited by nuts

Share this post


Link to post
Geneon

Also bei mir wird der PC immer komplett heruntergefahren (kein Standby oder Ruhezustand). Da kann der RS oder der Task Scheduler ihn nicht mehr hochfahren. Aber der iMon Manager kann es, und da kommt mein Script ins Spiel, es ließt die timers.xml aus wo alle programmierten Aufnahmen drinstehen, nimmt die nächstkommende Zeit und trägt sie im Imon Manager ein, welcher dann den PC für die Aufnahme bootet.

 

Zur Zeit realisiere ich das mit dem Task Scheduler, der hat da eine Funktion "Start after" womit man eine Anwendung nach beenden des DVBViewers starten kann, mein Script in dem Fall. Nur leider wurde ja in den neuen DVBViewer Versionen die Unterstützung für den Task Scheduler entfernt glaube seit Version 5.4.1. Und nun suche ich eine Alternative, Tüftler hat mich hierhin verwiesen http://www.DVBViewer.tv/forum/topic/56594-aenderung-in-der-dvbv-541/#entry429408. Daher meine Hoffnung das hierüber realisieren zu können.

Share this post


Link to post
nuts

Aso ok.

Eine Anwendung nach Beenden des DVBViewers ausführen kann mein Skript.

Deine INI von oben sieht für mich auch richtig aus.

 

Nur wenn der PC in Abwesenheit hochfährt, aufnimmt und wieder herunterfährt wird es wohl schwierig.

Wie wird der PC dann wieder zum herunterfahren gebracht?

 

Verwendest du eigentlich den Recordingservice?

Share this post


Link to post
Geneon

Den RS verwende ich nicht. Wenn er aber für mein Vorhaben benötigt wird, würde ich mir auch die Zeit nehmen den zu installieren und einzurichten, habe ihn noch nie installiert gehabt und daher null Kenntisse über ihn, daher würde ich da wohl eine Weile für brauchen.

 

Das Herunterfahren habe ich in den DVBViewer Einstellungen eingestellt, das er nach einer Aufnahme den PC herunterfahren soll.

http://de.DVBViewer.tv/wiki/Optionen_Aufnahmen#nach_einer_Timer-Aufnahme

Edited by Geneon

Share this post


Link to post
nuts

Im DVBViewer kann imho leider keine Custom Aufgabe nach Aufnahmen hinterlegt werden. An die Stelle müsste ja erst mein Skript aufgerufen werden (ohne OSD Auswahl) um den Ablauf wieder in Gang zu bringen.

 

Der Recordingservice kann das über eine Aufgabe: http://de.DVBViewer.tv/wiki/Webinterface_-_Aufgaben#Process_Tasks

Für solche Fälle habe ich auch ein eigenes Skript (funktioniert genauso nur ohne OSD).

http://www.DVBViewer.tv/forum/topic/51926-processtasksex/

Edited by nuts

Share this post


Link to post
Tjod

Ich habe jetzt nicht das ganze Topic gelesen. Aber im DVBViewer gibt es den stoprec.vbs der nach jeder Aufnahme im DVBViewer ausgeführt wird. Eventuell hilft das ja weiter. Dokumentation dazu gibt es in der COM Interface Dokumentation im Mitgliederbereich.

Share this post


Link to post
nuts

Ah gute Idee. Das könnte auch weiterhelfen. :)

Share this post


Link to post

Join the conversation

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

Guest
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...