Jump to content

DVBViewer WOL


Recommended Posts

!! UPDATE !! v1.6

 

Hallo.

 

Ich hatte den Viewer auf einem anderen Rechner wie das RecordingService laufen. Somit ergab sich das Problem das der Server mit dem Service natürich an sein musste damit der Viewer Daten bekam.

 

Da das Plugin im MembersBereich bei Win7 und Vista nicht funktionierte, hier mein Tool "DVBViewer WOL" :blush:

 

Hier ein Readme Auszug:

 

DVBViewer Wake-On-LAN v1.6

by pOpY 2010

 

************************************

**************Info******************

************************************

 

Deutsch:

 

Dieses Tool ist dafür gedacht einen Server wo das DVBRecordingService installiert ist per LAN zu wecken.

z.B.: Sie haben den DVBViewer auf einem anderen Rechner installiert und wollen Gerne dass sich der Server

automatisch einschaltet wenn sie an diesem Rechner Fernsehen wollen.

 

Vorraussetzung ist dass der Server WakeOnLAN unterstützt und es im BIOS bzw. Windows aktiviert ist.

Außerdem MUSS das RECSVC WebInterface aktiviert sein.

 

English:

 

With this Tool you could startup the DVBServer with installed DVBRecordingService over WOL.

Example: You would watch TV on an other computer than the server.

 

Requirements: Your server must support WakeOnLAN and it must be enabled in BIOS and windows.

You must ACTIVATE the RECSVC WebInterface

 

 

 

************************************

**********Installation**************

************************************

 

Deutsch:

 

Einfach folgende Dateien in einen gewünschten Ordner kopieren (muss nicht der DVBViewer Ordner sein):

 

DVBViewer_WOL.exe

DVBViewer_WOL.ini

wol.exe

 

English:

 

Just copy the following files into any folder:

 

DVBViewer_WOL.exe

DVBViewer_WOL.ini

wol.exe

 

 

************************************

****Konfiguration/Configuration*****

************************************

 

Deutsch:

 

Beim Starten der "DVBViewer_WOL.exe" (mit Administrator Rechten) wird das Netzwerk nach Windows-Computer

durchsucht. Sie können Anschließend entweder den gewünschten Computer wählen, oder die/den IP-Adresse/Computernamen

des DVBServers manuell eingeben.

 

Nach Bestätigung mit einem Klick auf "OK" wird versucht die MAC Adresse per ARP Request zu bekommen und diese dann gespeichert.

 

!! Der DVBServer MUSS zu diesem Zeitpunkt eingeschaltet und um gleichen Subnet wie der Client sein !!

 

Nun werden die Daten des REC SVC WebInterface Logins abgefragt.

(Achtung PW wird in Klartext gespeichert)

 

Es wird eine Verknüpfung auf dem Desktop Namens "DVBViewer WOL" angelegt. Wenn Sie diese starten wird nun

zuerst der Server per WOL aufgeweckt und dann der Viewer gestartet.

 

Das Tool liest noch zusätzliche Einstellungen aus der DVBViewer_WOL.ini. Diese muss im gleichen Verzeichniss

wie die EXE sein. Es sind folgende Einstellungen möglich:

 

TIMEOUT - Sekunden die gewartet werden soll bis der Server hochgefahren ist

Language=German - Sprache (German oder English)

DISABLE_LOGGING - 1 = Logging ausschalten

MAGIC_PACKET_RETRYS - Wird innerhalb des Timouts der Server nicht erreich kann hier eingestellt werden bis zu wieviel mal wiederholt werden soll

 

Sind alle Einstellungen vorgenommen, muss die "DVBViewer_WOL.exe" (mit Administrator Rechten) erneut gestartet werden.

 

 

English:

 

If you start the "DVBViewer_WOL.exe" (with admin rights) your network will be scanned for windows-computers.

After that you could select an coputer or manually enter an IP (of the DVBServer).

 

Click ok, Now the programm will optain the MAC (ARP request) of the slected computer/ip and saves it.

 

!! The DVBServer MUST be switched on and in the same subnet as the client !!

 

Now you must enter your login data of the rec svc webinterface.

(!! The password is stored in plain text !!)

 

It creates a shortcut named "DVBViewer WOL" on the desktop. If you start it, first the server will be waked up and

after that the DVBViewer starts.

 

The tool reads some other settings from file DVBViewer_WerbeZapper.ini. This file must be in the same folder as the EXE

The following settings are available:

 

TIMEOUT - Timeout until rec svc server is up

Language=German - Language (German or English)

DISABLE_LOGGING - 1 = disable logging

MAGIC_PACKET_RETRYS - Retry count when timeout is up, and server isn't up. Here you can define the retry count.

 

After setting up the INI file, start the file "DVBViewer_WOL.exe" again (with admin rights).

 

*************************************************

********************Changelog********************

*************************************************

 

v1.0:

* Initial Version

 

v1.1:

* Suche des DVBServer per Ping. Wenn erreichbar dann wird der Viewer sofort gestartet (Parameter IP)

 

v1.2:

* DVBViewer.exe wird automatisch gesucht. Wird sie nicht gefunden wird DVBViewer WOL ohne den Support für DVBViewer konfiguriert, d.h.: Es Funktioniert nur die WOL Funktionalität.

* MAC muss nicht mehr manuell konfiguriert werden. Beim Starten der EXE wird die IP des Servers abgefragt und dadurch die MAC ermittelt (! SERVER MUSS AN SEIN !).

* DVBViewer WOL muss sich nicht im DVBViewer Verzeichniss befinden

 

v1.3:

* BAT Datei entfernt, es geschieht nun alles über die EXE

* Logik Komplett überarbeitet

* Fortschrittsdialog implementiert

* Log Datei wird geschrieben (DVBViewer_WOL.log)

 

v1.4:

* Beim suchen nach dem DVBServer wurde die geöffnete Verbindung nicht geschlossen, darum konnte es bei zu langem Timeout vorkommen dass das Betriebssystem nicht mehr Verbindungen zuließ

und dass REC_SVC nicht gefunden wurde

* Standard TImeout auf 60 Sekunden gestellt (Falls ein anderer Standbymodus wie Hibernate verwendet wurde -> dauert länger bis der Server on ist)

* Neuer Parameter "DISABLE_LOGGING". Wenn DVBViewer_WOL korrekt funktioniert kann das erzeugen einer Log Datei mit dem setzen dieses Parameters auf "1" abgeschaltet werden.

 

v1.5:

* Scannen nach Windows-Computer eingebaut (Manuelle Eingabe noch immer möglich)

 

v1.6:

* Neuer Parameter "MAGIC_PACKET_RETRYS". Wiederholungen wenn Timeout ausgelaufen und Server nicht gefunden wurde.

 

 

Sorry for my bad english ;-)

Viel Spaß damit

Have fun

pOpY 2010

 

Download v1.5: DVBViewer_WOL_v1.5.zip

Download v1.6: DVBViewer WOL v1.6.zip

 

cu

pOpY

Edited by popy
Link to comment

Nein, ich will ja dass sofort beim starten bzw. vorm starten des Viewers der Server eingeschaltet wird und nicht wenn ich die Action im gestartetem Viewer ausführe.

 

...oder hab ich da eine Option übersehen die dies zulässt?

 

cu

popy

Edited by popy
Link to comment
  • 3 months later...

Hallo Popy,

 

tolles Teil was Du da gemacht hast, funzt prima.

 

Allerdings hab ich das Problem das der Viewer nach dem Start nicht den Fokus hat und somit die Fernbedienung nicht geht.

 

Ist das nur bei mir so oder gibt es da irgendein Befehl den man in die .bat mit einbauen kann?

 

Danke Keoma

Link to comment
Hab ich grad getestet:

 

DVBViewer.exe -x8275

 

Es tut sich aber nichts, der Server bleibt aus. Mit meinem Tool gehts ohne Probleme.

 

cu

pOpY

 

Zur Info:

Ich habe es bis jetzt nur einmal getestet:

Server Win7 x86 Ulitmate

Client Win7 x86 Ultimate

 

Beim Start des DVBViewers beim Client mit -x8275 wurde der Server aufgeweckt.

Müsste ich nochmal probieren...

 

Aber trotzdem gut das WOL Tool.

Link to comment

Bei mir gings damals nicht. Verwende Tagtäglich meines und hab keine Probleme damit.

 

@Keoma: Danke für das Lob :-)

 

Da ich meine Clients mit Tastatur und Maus bediene ist mir das Problem bis jetzt noch nicht aufgefallen. Du könntest mal folgendes testen:

 

* Im DVBViewer des Clients unter dem Menü "Ansicht" -> "Immer im Vordergrund" aktivieren -> testen

* In der BAT Datei wo die DVBViewer.exe aufgerufen wird nach dem Start Parameter /MAX einfügen: START /MAX ....

 

Gib mir bescheid sonst mach in eine Andere Lösung.

 

cu

pOpY

Link to comment

Hi,

 

so ganz uninteressant ist das Plugin nicht!

 

Jedoch hätte ich noch Fragen/Vorschläge:

Wenn der Server bereits läuft, wird dann das StartDelaySec trotzdem ausgeführt oder geht es gleich weiter zum DVBViewer Start?

Kann man das StartDelaySec eigentlich nicht übergehen, wenn man nach dem Wecken den Server die ganze Zeit anpingt? Sobald eine Anwort kommt sollte der Server für den DVBViewer erreichbar sein. (vielleicht danach noch eine kleine Wartezeit)

Somit kann man das StartDelaySec in ein Timeout umwandeln in welcher Zeit der Server verfügbar sein sollte.

Dadurch erspart man sich halt das ausprobieren wie lange der Server braucht um wieder Online zu sein. Ist ja mit jeder Config anders.

 

Kann die MAC-Adresse nicht Automatisch mit SendARP ermittelt werden? Es wird also nur der Server-Name/IP angegeben und das Plugin holt sich beim Ersten mal starten die MAC selber. Nachteil: es geht anscheinend nur wenn sich beide Rechner im selben SUB-Netz befinden.

 

Das, dass das Programm in den DVBViewer Ordner rein soll ist unschön. Ich habe viele Programme auf der 2. Partition. Wenn ich Windows neu installiere brauch ich nur wieder einen Shortcut anlegen. Alle Einstellungen bleiben somit erhalten.

 

Auch könnte Automatisch rausgefunden werden ob DVBViewer überhaupt installiert ist und dazu gleich der Ort wo sich die DVBViewer.exe befindet.

Sollte z.B. DVBViewer gar nicht installiert sein wird halt der Server aufgeweckt und das Programm beendet sich dann selber wieder. Falls er gefunden wird wird DVBViewer halt gestartet.

 

Ich hoffe du fast meine Ideen nicht böse auf!

Hab halt gerade so darüber nachgedacht, denn wenn man das WOL mit DVBViewer macht bekommt dann immer die Meldung: kein Gerät verfügbar...

Da ist dein Tool schon schöner!

Link to comment

Ich nehme Feedback/Ideen Gerne an :)

 

Wenn der Server bereits läuft, wird dann das StartDelaySec trotzdem ausgeführt oder geht es gleich weiter zum DVBViewer Start?

Kann man das StartDelaySec eigentlich nicht übergehen, wenn man nach dem Wecken den Server die ganze Zeit anpingt? Sobald eine Anwort kommt sollte der Server für den DVBViewer erreichbar sein. (vielleicht danach noch eine kleine Wartezeit)

Somit kann man das StartDelaySec in ein Timeout umwandeln in welcher Zeit der Server verfügbar sein sollte.

Dadurch erspart man sich halt das ausprobieren wie lange der Server braucht um wieder Online zu sein. Ist ja mit jeder Config anders.

 

Derzeit ist der Logische Ablauf so:

 

  • Pinge Server
  • Wenn Erreichbar -> Starte DVBViewer SOFORT
  • Wenn Nicht Erreichbar -> WOL -> Warte Solange eine Ping Antwort kommt -> Wenn Antwort -> STARTDELAY -> Starte DVBViewer

 

Ist eigentlich schon so wie du es Vorgeschlagen hast ;)

Das STARTDELAY ist wirklich eine reine Verzögerung für den Start des DVBViewers wenn vorher ein WOL gesendet wurde. Da auch wenn schon ein Ping vom Server kommt es lange nicht heisst dass das RecordService läuft und DVb Daten senden kann. Dies hängt natürlich von der Server Hardware ab und ich glaube Programmiertechnisch tut man sich hart. Eine Idee dazu ... Ich könnte ein WGET zum RecordingServiceInterface machen und somit prüfen ob es on ist...

 

Kann die MAC-Adresse nicht Automatisch mit SendARP ermittelt werden? Es wird also nur der Server-Name/IP angegeben und das Plugin holt sich beim Ersten mal starten die MAC selber. Nachteil: es geht anscheinend nur wenn sich beide Rechner im selben SUB-Netz befinden.

 

Werde ich mir anschauen... Danke für den TIP!

 

Das, dass das Programm in den DVBViewer Ordner rein soll ist unschön. Ich habe viele Programme auf der 2. Partition. Wenn ich Windows neu installiere brauch ich nur wieder einen Shortcut anlegen. Alle Einstellungen bleiben somit erhalten.

 

Auch könnte Automatisch rausgefunden werden ob DVBViewer überhaupt installiert ist und dazu gleich der Ort wo sich die DVBViewer.exe befindet.

Sollte z.B. DVBViewer gar nicht installiert sein wird halt der Server aufgeweckt und das Programm beendet sich dann selber wieder. Falls er gefunden wird wird DVBViewer halt gestartet.

 

Werd ich mir auch anschauen und in die nächste Version einfließen lassen.

 

cu

pOpY

Edited by popy
Link to comment

Ich verweise an dieser Stelle auf meine "Idee", das automatische Anpingen des Servers und WOL bei Bedarf im DVBViewer unter "Einstellungen-->Optionen-->Recording Service" bei aktivierter Unterstützung unterzubringen:

http://www.DVBViewer.info/forum/index.php?showtopic=38582

Die Entwickler sehen darin wohl keinen Sinn...wahrscheinlich, weil bei ihnen die Server 24/7 laufen.

 

Da ich den DVBViewer am HTPC per taskscheduler automatisch nach einem resume starten lasse, brauche ich ein WOL möglichst früh und lange bevor der DVBViewer startet und beginnt DVB-Daten zu empfangen...wenn der server keine Daten liefern muss, geht er nach 5-10 Minuten wieder in standby...muss ja auch nicht laufen, wenn wir DVD schaun oder Internetradio hören...

 

Gruß

Link to comment
Bei mir gings damals nicht. Verwende Tagtäglich meines und hab keine Probleme damit.

 

@Keoma: Danke für das Lob :-)

 

Da ich meine Clients mit Tastatur und Maus bediene ist mir das Problem bis jetzt noch nicht aufgefallen. Du könntest mal folgendes testen:

 

* Im DVBViewer des Clients unter dem Menü "Ansicht" -> "Immer im Vordergrund" aktivieren -> testen

* In der BAT Datei wo die DVBViewer.exe aufgerufen wird nach dem Start Parameter /MAX einfügen: START /MAX ....

 

Gib mir bescheid sonst mach in eine Andere Lösung.

 

cu

pOpY

 

 

Hallo pOpY,

 

Lob tut immer gut, sollte man nicht mit sparen, :)

 

Danke für die schnelle Antwort.

 

"Vordergrund" war aktiviert, hatte ich vergessen zu erwähnen.

Den Tip mit der .bat hab ich probiert, funktioniert aber auch nicht.

 

Dann noch bischen probiert und das Problem gefunden, liegt nicht an Dir.

 

Hab nebenbei noch das Touchscreen Plugin am laufen und das wird vom DVBV gestartet und nimmt dem den Fokus.

 

Plugin raus funktioniert ;)

 

Jetzt muss ich sehen wie ich das löse. :D

 

Nochmals Vielen Dank

 

cu Keoma

Link to comment

@Keoma: Freut mich dass du das Problem gefunden hast (und es nicht an meinem WOL lag :-)

 

Hab ein Update im ersten Post hinterlegt :)

 

Hier die Änderungen:

 

v1.2:

* DVBViewer.exe wird automatisch gesucht. Wird sie nicht gefunden wird DVBViewer WOL ohne den Support für DVBViewer konfiguriert, d.h.: Es Funktioniert nur die WOL Funktionalität.

* MAC muss nicht mehr manuell konfiguriert werden. Beim Starten der EXE wird die IP des Servers abgefragt und dadurch die MAC ermittelt (! SERVER MUSS AN SEIN !).

* DVBViewer WOL muss sich nicht im DVBViewer Verzeichniss befinden

 

Sollte jetzt einfacher zu bedienen sein. Vielleicht baue ich in nächster Zeit noch mal WGET ein damit ich besser erkennen kann dass der DVBServer on ist.

 

Viel Spaß

pOpY

Link to comment

... und weil ich gerade so motiviert bin ... :)

 

v1.3:

* BAT Datei entfernt, es geschieht nun alles über die EXE

* Logik Komplett überarbeitet

* Fortschrittsdialog implementiert

* Log Datei wird geschrieben (DVBViewer_WOL.log)

 

 

cu

pOpY

Link to comment

Hab es nun etwas ausprobiert!

 

MAC Adresse wird richtig ausgelesen! Super!

 

Der Server wird aufgeweckt. Nun braucht mein Server etwas länger als der Default 30s Timeout.

Habe also 60s in die INI eingetragen.

 

Jedoch steigt in den ersten 30s der Balken langsam an, dann auf einmal läuft er schneller und am Ende bekomme ich die Timeout Meldung.

Schließe ich nun das Programm und starte es neu wird sofort der DVBViewer gestartet weil der Server ja bereits läuft.

So scheint es also zu gehen, aber eben mit dem Timeout scheint irgendwas nicht zu passen.

 

Kann man das Logging dann später auch deaktivieren?

 

Das Webinterface ist über 192.168.0.10:80 im Internetexplorer erreichbar. Zugangsdaten passen auch im INI File.

 

DVBViewer_WOL v1.3 - 15.01.2010 16:16:00
Ping DVBServer: 192.168.0.10...
Result = 0, error: 1
Send Magic Packet to: 00241DD31387
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 0
Retry...
Connection Timeout! Aborting!
END!

Link to comment

Bei mir läufts, hab grad meinen Server damit eingeschaltet.

 

Beim Anlegen der Verknüpfung am Desktop logt sich das Tool genauso am WebInterface ein, hat er da einen Fehler gebracht, oder lief alles ohne Fehler durch?

 

Wenn hier kein Fehler kam versteh ich es nicht, da wie es ausschaut dass Proggi dann Zugriff aufs Netzwerk hat (bzgl. Firewall und so).

 

cu

pOpY

Edited by popy
Link to comment

Wozu greift Dein Tool auf den Webserver des Recording Services zu?

 

Habe was ähnliches laufen. Einfach ein Batchfile, das per Ping prüft ob der Server läuft. Falls nicht ein WOL schickt und dann den DVBViewer startet:

 

ping ServerAdresse
if errorlevel irgendwas then
  wol server-mac
  while not ping ServerAddress
  sleep 1
  end while
end if
DVBViewer.exe

 

(Pseudocode)

Link to comment

Wenn der Server bereits läuft geht es:

DVBViewer_WOL v1.3 - 15.01.2010 18:16:59
Ping DVBServer: 192.168.0.10...
Result = 1, error: 0
Check REC_SVC WebInterface: 192.168.0.10:80 ... Bytes received: 956
Connection to REC_SVC OK!
DVBViewer.exe found: C:\Program Files\DVBViewer\DVBViewer.exe
Starting...
END!

 

Doch wenn der Server im Ruhezustand (Hibernate) ist, bekomme ich den Timeout.

Vielleicht eine begrenzte Anzahl von Retrys?

 

Denn die 60s die im INI-File stehen werden abgekürzt. Der Timeout kommt nach ~30s.

Link to comment

@dbraner: Genauso hatte ich es vorher auch mit einem einstellbaren Timeout in der BAT, aber so ist es doch viel schöner, wenn das RECSVC da ist dass der Viewer angeworfen wird. Bei Deiner Lösung wird es so sein dass du keinen Stream bekommst da der Server noch nicht on ist.

 

@Portisch: Danke für die Info. So kann ichs mir jetzt anschauen bzw. versuchen das Problem nachzuvollziehen. Warum nimmst du eigentlich hibernate? Ich nem den S3 (Standby). Da wird nur noch das RAM gepuffert und der Rechner ist in ca. 10 Sekunden online ;-)

 

Ich werd trotzdem versuchen das Probelm zu finden.

 

cu

pOpY

Link to comment

Jaja, immer diese neuen Betriebssysteme ;) Ich setzte bei meinem HTPC auf XP und er läuft echt toll!!

 

<MICROSOFT-WERBUNG>

 

Nein ich muss hier Microsoft auch mal loben, Win 7 ist das beste Windows was es je gegeben hat, läuft sogar auf meinem EEEPC top!!! Das es bei neuen BS Hardware Probleme gibt war schon immer so, aber 7 hat echt eine Tolle Hardware Unterstützung.

 

</MICROSOFT-WERBUNG>

 

So jetzt zurück zum Thema: Hab glaub ich den Fehler gefunden. Ich habe die INET Verbindung nicht geclosed und je Sekunde Timeout eine neue Aufgebaut. Umso länger das Timeout jetzt eingestellt war bzw. der Server braucht bis er on ist desto mehr Offene Verbindungen hat meine App erstellt. Da es vom Betriebssystem her ja Begrenzungen gibt, hab ich mal das Close bei jedem Retry eingebaut ... hoffe das hilft.

 

v1.4 is up -> 1st Thread!!!

 

cu

pOpY

 

PS: Du kannst das Logging nun auch ausschalten :)

Edited by popy
Link to comment

Super Arbeit!

 

Die 1.4 geht!

Der Server wird aufgeweckt und nach dem Starten der DVBViewer auf dem Client gestartet.

Logging last sich auch abschalten.

 

Nun ist auch die Meldung "kein DVB Gerät verfügbar" nicht mehr da, die ansonst über das integrierte WOL des DVBViewers angezeigt wird.

 

Danke!

Link to comment
@dbraner: Genauso hatte ich es vorher auch mit einem einstellbaren Timeout in der BAT, aber so ist es doch viel schöner, wenn das RECSVC da ist dass der Viewer angeworfen wird. Bei Deiner Lösung wird es so sein dass du keinen Stream bekommst da der Server noch nicht on ist.

 

Das ist richtig. Mein Server braucht aber nur ca. 5 Sekunden fürs Aufwachen. Die Frage ist, ob man sicher sein kann, dass der Recordingservice "Empfang hat" sobald das Webinterface erreichbar ist.

 

Fragt Dein Plugin per Web-API den Status des Servers ab? Könnte mir überlegen, sowas per CURL/WGET auch in mein Script einzubauen.

 

Das mit den Plugins hat auch Nachteile: Da der DVBViewer wartet, bis alle Plugins korrekt initialisiert sind, kann ein Fehler in einem Plugin den Start des DVBViewers verhindern (passierte z.B. beim Fritzbox Callmonitor Plugin, wenn die Fritzbox nicht erreichbar war).

 

Dieses Verhalten zu ändern hatte ich mal als Vorschlag eingebracht. Ist aber wohl immer noch so.

Link to comment

Zum Tool noch eine Idee:

 

Es könnte ein Dialog eingebaut werden, wo alle im Netzwerk gefunden Rechner aufgelistet werden.

Dann kann man einfach den Server auswählen und muss nicht die IP eingeben.

 

Habe hierzu aber nur ein Beispiel für Delphi:

http://www.delphipraxis.net/topic163929_co...erk+durchsuchen

 

Auch wäre es auch schon schön entweder die IP oder den Rechnernamen angeben zu können.

Link to comment

Hab mir das scannen des Netzwerks angesehen, ich finde es nicht so gut, da es sehr lange dauert. Einfach die IP/Computername eingeben und gut is ;)

 

Den Computernamen kannst du auch verwenden!

 

cu

pOpY

Edited by popy
Link to comment

@Portisch: Bin deinem Wunsch nachgegangen und hab eine automatische Suche eingebaut. Diese sucht nicht nach allen verfügbaren IPs und versucht diese anzupingen, sondern ermittelt die Domains & Computernamen im Netzwerk. So geht es schneller. Der Nachteil, es werden nur Windows Computer gefunden. Man kann aber noch immer die IP manuell auch eingeben.

 

cu

pOpY

Link to comment

Ich habe es noch nicht getestet, aber warum soll die "DVBViewer_WOL.exe" mit Admin-Rechten gestartet werden?

Ich würde sie mir gerne vom DVB Task Scheduler automatisch nach resume starten lassen, sollte dann doch so ablaufen:

HTPC per remote starten, DVBViewer_WOL wird automatisch gestartet und pingt server an, server ist erwacht, DVBViewer startet und läuft...

 

Gruß

Link to comment

Die Info zum ausführen mit Admin Rechten ist noch von den ersten Versionen her.

Da musste DVBViewer_WOL im gleichen Verzecihniss wie der Viewer selbst installiert sein.

Mittlerweile funktioniert DVBViewer_WOL ja von jedem Verzeichniss aus.

 

Da DVBViewer_WOL diverse Einstellungen in die INI schreibt und Vista und "7" ja UAC

standardmäßig aktiviert haben = Keine Berechtigung zum schreiben auf \Programme\.

 

DVBViewer_WOL sollte nur in Verzeichniss mit Schreibrechte installiert werden.

 

Darum war die Angabe. Bei einem nächsten Update werde ich die Info entfernen.

 

Wenn du "DVBViewer_WOL.exe WOL" (also mit dem Parameter WOL) aufrufst dann werden die

Einstellungen von der INI gelesen und der WOL Vorgang gestartet.

 

Ohne Parameter gestartet ist DVBViewer_WOL sozusagen im Konfigurationsmodus, wo man div.

Einstellungen ändern kann.

 

Freu mich auch Feedback

 

cu

pOpY

Edited by popy
Link to comment

Hab das nun mit dem Scan probiert!

 

Funktioniert auch Super!

 

Falls du noch einmal ein Update machst, die Kleinigkeit ist mir noch aufgefallen:

 

Ich weiß nicht woher du das Icon holst, aber ich schätze es kommt von der DVBViewer.exe. Da hast du anscheinend den falschen Icon Index:

6gtswp5e.jpg

 

Ist kein Fehler oder Problem, ist mir nur aufgefallen.

 

Portisch

Link to comment

Habs ausprobiert...und versagt:

 

Ich habe in der scheduler.ini das "DVBViewer.exe" durch "dvbviewer_wol.exe wol" ersetzt in der Hoffnung, es würde so funktionieren wie gedacht bzw zuvor beschrieben, mit dem Effekt, dass nichts mehr autostartet nach einem resume...auch nicht nach zurückändern nach "DVBViewer.exe"...mist...

 

Gruß

Link to comment

Du MUSST den Parameter "WOL" großschreiben!!! Ganz Wichtig.

 

Warum nichts mehr startet kann ich Dir nicht sagen, da hast du was zerkonfiguriert. Wenn du zusammengebracht hast dass der Viewer wieder startet dann schreib "dvbviewer_wol.exe WOL" als Befehl rein.

 

Ich sehe keinen Grund warum das nicht gehen sollte.

 

@Portisch: Werd ich mir ansehen. Danke!

 

cu

pOpY

Edited by popy
Link to comment

OK...habe jetzt "DVBViewer_WOL.exe WOL" in eine cmd gepackt und diese in die scheduler.ini geschrieben...jetzt geht es...muss es nur noch so einrichten, dass es unsichtbar/versteckt abläuft.

Gruß

Edited by MogRuith
Link to comment
  • 3 months later...
Super :bounce:

 

Liegt aber sicher am Scheudler. Der hat irgendwie Probleme mit der Parameterübergabe....

 

cu

pOpY

 

Hi Popy,

 

you could tell me in detail this procedure in english?

 

Thank You

 

Athos

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