Feb 18, 2016 - 18:38
Hallo Frodo - danke für dein Interesse.
Also Unified Remote ist eine tolle Sache hinsichtlich Steuerung von Windows Anwendungen.
Der Mobile Client (android, IOS) ermöglicht es z.B: mit einem simplen HTTP-Request (URI Schema), diverse Windows-Anwendungen anzusprechen. Lässt sich wunderbar in die "mobile" Steuerung von Neo einbinden, setzt lediglich installiertes Unified App und (URI fähiger Browser !Nicht Chrome!) voraus.
Leider wurde das URI Scheme noch nicht für den WindowsClient implementiert. Also Steuerung PC(Client) > PC(Server).
Es steht lediglich ein Basis Web-Client zur Verfügung. Ja, könnte man mit dem BrowserObjekt einbinden - wollte aber die UnifiedRemote Commands in PHP Scripts integrieren.
Nun war es meine Idee - den WebServer (Hintergrunddienst PC) direkt mit den Befehlen anzusprechen (via PHP > HTTP-Request aus Neo), welche vom WebClient gesendet werden (z.B. den MediaPlayer stummschalten). Dazu mein Versuch in PHP (siehe Unten) den Befehl aus dem WebClient an den Server zu kopieren. Mein Fehler liegt irgendwo bei einem Fehlenden Attribut im Header-Teil.
>Failed to connect to localhost port 9510: Connection refused<
Hab nun aber heute zudem gemerkt, dass der String für die UR-Connection-ID (Authentifizierung resp. Anmeldung am Server) wechselt und somit keine Konstante ist. (Eigentlich ist in der Applikation kein Passwort hinterlegt, ist wahrscheinlich mehr ein Techn. Anmelden > Ok > Rückgabe UR-Connection-ID > Dann Befehl senden. Und ich sende einfach direkt nur den Befehl.
Egal,bin kein Experte in JavaScript und daher hab ich nun sowieso mühe, die Hintergrund Mechanik und Logik von UnifiedRemote zu verstehen. Wenn es jemand von Euch zustande bekommt, einzelne Befehle der Remotes per PHP anzusprechen wäre das genial - und sicherlich für viele ein Schritt weiter in der Automatisierung (z.B Starten von Applikationen nach Wetterlage, abspielen von Playlist bei Regen, den PC Neustarten auf Knopfdruck , Monitor aus, Netflix, Spotify - > a new Universe!!) - leider scheitere ich z.Z an diesem Punkt.
$data = array("ID" => "Unified.Media","Action" => "7","Request" => "7","Run" => ["Name" => "volume_mute"],"Source" => "web-3bb2ede4-5ba9-4c5c-a445-fe8592233ecb");
$header = array(
"Host" => "localhost:9510",
"User-Agent" => "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0",
"Accept" => "*/*",
"Accept-Language" => "de,en-US;q=0.7,en;q=0.3",
"Accept-Encoding" => "gzip, deflate",
"Content-Type" => "application/x-www-form-urlencoded; charset=UTF-8",
"UR-Connection-ID" => "dad3fee8-d642-11e5-ac44-a434d955f3ba",
"X-Requested-With" => "XMLHttpRequest",
"Referer" => "http://localhost:9510/client/",
//"Content-Length" => "126",
//"Content-Length" => .strlen($data_string),
"Cookie" => "_ga=GA1.1.1221295475.1453809211",
"Connection" => "keep-alive",);
$data_string = json_encode($data);
$header_string = json_encode($header);
$ch = curl_init('http://localhost:9510/client/request');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header_string);
$result = curl_exec($ch);
echo curl_error($ch);
echo $header_string;
curl_close($ch);
?>
Von
ich sehe keinen vorteil von dieser Unified Remote app...
Neuen Kommentar hinzufügen