Jump to content

TCP Control


Recommended Posts

Hallo zusammen,

 

anbei mal ein Skript zur Steuerung eines PC/Servers über TCP.

 

Folgende Befehle kann das Skript per TCP annehmen:

; isrecording (true return1 / false return 0)
; istimeshift (true return1 / false return 0)
; isplaying (true return1 / false return 0)
; isrunning (true return1 / false return 0)
; isnotrunning (true return1 / false return 0)
; restart (return 0)
; exit (return 0)

; sendcommand (return 0)
; run (return 0)
; shutdown (return 0)
; section (return 0)
; devcon (return 0)
; devcon2 (return 0)
; execute (return 0)

 

 

Ein Testclient und ein Eventghost-Plugin befindet sich auch im Anhang.

Außerdem kann das Skript über:

Extended Exit: http://www.DVBViewer.tv/forum/topic/48512-erweitertes-beenden-v2-extended-exit-v2/

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

angesprochen werden.

 

Diese Befehle benötigen einen weitere Parameter, die über ein Trennzeichen (default ="%") mitgegeben werden:

; sendcommand%actionID
; run%Pfad zur Anwendung
; shutdown% 0 = Logoff | 1 = Shutdown | 2 = Reboot | 4 = Force | 8 = Power down | 16= Force if hung | 32= Standby | 64= Hibernate)
; section%section in tcpcontrol.ini (voller Funktionsumfang wie bei "Extended Exit")
; devcon%hardwareID
; devcon2%hardwareID
; execute%Autoit Skript Zeile

 

Ausführlichere Doku kommt noch. :)

Hier zumindest mal die Einträge der Konfig-INI:

 

1. Sektion [settings]
Header=TCPControl (unwichtig, aber bitte stehen lassen)
ExtendedLog=1 (0=disable | 1=enable)
Runtime_max=48 (nach X Stunden (default=48) wird die Sektion [Runtime Max] abgearbeitet)

delay=500 (noch ohne Funktion)

 

2. Sektion [serversettings]
IP=127.0.0.1 (unwichtig, aber bitte stehen lassen)
Port=24089 (der Port über den das Skript angesprochen werden kann)

 

3. Sektion [info]

Hier stehen nur ein paar Pfade zur Information drin. Die Einträge haben im Skript keine Funktion

 

4. Sektion [Runtime Max]

Hier können wie Befehlsfolgen eingetragen werden, die alle X Stunden ausgeführt werden sollen.

Voller Funktionsumfang wie bei "Extended Exit": http://www.DVBViewer.tv/forum/topic/48512-erweitertes-beenden-v2-extended-exit-v2/

 

5. Sektion [Resume Auto]

Das Skript reagiert auf "PBT_APMRESUMEAUTOMATIC" und arbeitet die in dieser Sektion eingetragenene Befehle ab.

Voller Funktionsumfang wie bei "Extended Exit": http://www.DVBViewer.tv/forum/topic/48512-erweitertes-beenden-v2-extended-exit-v2/

Die Nachricht wird normalerweise abgefeuert, wenn der PC aufgeweckt wurde (z.B. vom RS für eine Aufnahme).

 

6. Sektion [Resume User]

Das Skript reagiert auf "PBT_APMRESUMESUSPEND" und arbeitet die in dieser Sektion eingetragenene Befehle ab.

Voller Funktionsumfang wie bei "Extended Exit": http://www.DVBViewer.tv/forum/topic/48512-erweitertes-beenden-v2-extended-exit-v2/

Die Nachricht wird abgefeuert, sobald eine Benutzereingabe nach dem Aufwachen erfolgt oder wenn grundsätzlich wenn der Benutzer den PC selbst aufweckt.

"Extended Exit" reagiert ggf. auch auf dieses Event. Je nach Konfig. muss man also etwas aufpassen.

 

 

 

Gruß nuts

 

P.S. Sourcen sind im Download - includes für Skripter gibt es im Startpost von "Extended Exit".

TCPControl.zip

TCP Control EG-Plugin.zip

Edited by nuts
Link to comment

Oh nuts hätte da noch eine Bitte, kannst du ismediaplayback als Abfrage hinzufügen, mir hat es gerade während des Film schauens den Viewer geschlossen.

isplaying fängt das derzeit nicht ab, ist ja keine Live Wiedergabe.

Link to comment

Hm ich verwende dafür "IDVBViewer.OSD.ispayling"

Bei mir funktioniert das für LiveTV, Aufnahmen und Videos.

Steht auch so in der COM-Doku:

 

Returns if the DVBViewer program is playing a mediafile. To see if it a Audio only playback you can use IDVBOSD.IsPlayingVideo = False.

Returns

True if playing, False if not.

 

Vielleicht ein anderer Bug in einem der Skripte? Kannst du mal schauen was im Log dazu steht?

 

P.S. ismediaplayback kann ich aber natürlich zusätzlich einbinden. Vielleicht braucht man das mal für was anderes.

Link to comment
  • 2 weeks later...

Späte Rückmeldung aber ich kam nicht eher zum Testen,

 

offensichtlich gab es ein Problem bei der Verbindung, TCP Control konnte laut Log keine Verbindung aufbauen.

Ich habe die exe neu gestartet, jetzt geht es offensichtlich.

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