Seite 1 von 1

Message von PC an Dbox

Verfasst: Fr 03 Okt 2008, 8:57
von WAVez
Hallo zusammen!
Ist es eigentlich möglich eine Nachricht via Batch-Datei vom PC (Win2000) an die Dbox zu schicken?
(Ich weiss, dass es über Yweb und JtG funktioniert!)

Wäre für eure Hilfe Dankbar!

Gruß Oli

Verfasst: Fr 03 Okt 2008, 9:54
von Houdini
**********************************************************************************************
16. Popup-Fenster oeffnen
**********************************************************************************************
Handler: http://dbox/control/message

Parameter: popup=Text oder nmsg=Text

Rückgabewert: ok

Zeichensatz: UTF-8, Leerzeichen muessen als %20 gesendet werden

Neutrino oeffnet ein Popup(popup)- oder Message(nmsg)-Fenster, in dem der Text des Parameters dargestellt wird.
Ein Popupfenster schliesst sich nach wenigen Sekunden selbst, wohingegen ein Message-Fenster mit der Fernbedienung geschlossen werden muss.

Beispiele:

>http://dbox/control/message?popup=Hallo%20World
öffnet ein Popup-Fenster auf dem Fernseher, in dem "Hallo World" steht

>http://dbox/control/message?nmsg=Hallo%20Welt
öffnet ein Message-Fenster auf dem Fernseher, in dem "Hallo Welt" steht

Verfasst: Fr 03 Okt 2008, 9:55
von saggi
Hallo Oli,

mit wget geht so etwas:

Code: Alles auswählen

wget http://dbox/control/message?popup=Hello%20World
Man kann die Ausgabe auch nach NUL umleiten, denke ich. Habe ich aber nicht probiert.

saggi

*Edit*
Nochmal probiert:

Code: Alles auswählen

C:\Programme\GnuWin32\bin>wget -O NUL: -q http://dbox/control/message?popup=Hello%20World
hat funktioniert, ohne das eine Ausgabe geschrieben wurde.

Verfasst: So 05 Okt 2008, 8:03
von WAVez
Guten Morgen zusammen!
Ich habe die Zeile von Saggi etwas ändern müssen, aber nun klappt es soweit.
C:\Programme\GnuWin32\bin\wget -O NUL: -q http://192.168.2.113/control/message?popup="Hello World"
Das > war evtl nur ein schreibfehler von dir, denn damit hat es nicht geklappt.
Ich musste zudem den eigentlichen text in "" setzen, anstatt %20 als Leerzeichen zu verwenden, da er mir sonst auf der Dbox immer "Hello0World" ausgegeben hat.

Eine Frage hätte ich aber noch:
Ist es möglich, über diesen Befehl auch eine 2. Zeile anzuzeigen, wenn ja wie?

Schönen Sonntag!

Verfasst: So 05 Okt 2008, 11:20
von saggi
Hallo WAVez,

war kein Schreibfehler, sondern die Zeile aus dem Command-Promt kopiert ;) hätte ich dazuschreiben sollen.

Den Zeilenumbruch schaffst Du mit den Hex-Code für LineFeed(LF), also: Hier findest Du weitere Codes: Wiki
Da entspricht im übrigen %20 dem Leerzeichen(SP=Space)

saggi

Re: Message von PC an Dbox

Verfasst: So 16 Nov 2008, 15:14
von WAVez
Sorry das ich das jetzt nochmal auswühle!

Das mit der erstellten Batchdatei klappt soweit einwandfrei, das Problem ist nur, wenn die Dbox aus ist.
Der PC versucht vergeblicht (klar weil die Box aus ist) eine Nachricht zu senden und die Eingabeaufforderung bleibt ununterbrochen offen.
Ist es möglich eine Art Timeout einzubauen, dass der PC nach z.b. 5sec nicht erreichen der Box keine Nachricht ausgibt und das Fenster schließt?

Schönen Sonntag noch!

Re: Message von PC an Dbox

Verfasst: So 16 Nov 2008, 15:55
von saggi
Hallo WAVez,

mit %errorlevel% und Goto sollte es gehen:

Code: Alles auswählen

@echo off
ping -w 50 192.168.2.113 | find "TTL="
if errorlevel 1 goto ENDE
echo Senden der Nachricht
Goto STOP


:ENDE
echo Box nicht erreichbar
:STOP
echo Ausfuehrung beendet
Ich habe mal die IP aus dem oberen Post benutzt ;)
-w 50 ist der TimeOut in ms, ich habe es zum testen recht kurz gemacht.

saggi

Re: Message von PC an Dbox

Verfasst: Mo 17 Nov 2008, 10:27
von Pedant
Hallo saggi,

da auch "ping" Errorlevel setzt ist die Pipe mit "find" für die Fallunterscheidung nicht nötig.

ping 192.168.2.113
erreichbar => errorlevel = 0
nicht erreichbar => errorlevel = 1

Man könnte zusätzlich zum Timeout (-w 50) noch die Anzahl der Packetsendungen auf 1 setzen
ping -w 50 -n 1 192.168.2.113

und die Ausgabe des pings unterdrücken
ping -w 50 -n 1 192.168.2.113 > nul

Der komplette Beispiel-Code würde dann so aussehen:

Code: Alles auswählen

@echo off
ping -w 50 -n 1 192.168.2.113 > nul
if errorlevel 1 goto ENDE
C:\Programme\GnuWin32\bin\wget -O NUL: -q http://192.168.2.113/control/message?popup="Hello World"
Goto STOP

:ENDE
echo Box nicht erreichbar
:STOP
echo Ausfuehrung beendet
Gruß Frank

Re: Message von PC an Dbox

Verfasst: Mo 17 Nov 2008, 18:05
von saggi
Pedant hat geschrieben:Hallo saggi,

da auch "ping" Errorlevel setzt ist die Pipe mit "find" für die Fallunterscheidung nicht nötig.
Hallo Frank,
wenn es so gut funktioniert spricht nichts dagegen.
Ich meinte nur mal gelesen zu haben, das man sich auf den Errorlevel, den Ping zurückgibt, nicht so 100% verlassen kann. Wenn ich nachher Lust habe suche ich das vielleicht noch mal ;)

saggi

Re: Message von PC an Dbox

Verfasst: Di 18 Nov 2008, 16:59
von WAVez
Hallo Ihr beiden!
Da bei uns momentan ein DSL-Ausbau im Gange ist konnte ich gestern nicht mehr antworten, sorry dafür!
Ich habe die Batch Datei nach saggis Vorlage verwendet und es funktioniert einwandfrei!

Vielen Dank nochmal!
Gruß Oli