javascript — скрипт для управления Roku box не работает

Блок Roku может управляться извне с помощью простой службы RESTful, доступ к которой осуществляется через протокол http на порту 8060, посмотреть здесь. Команды, которые мне нужно выполнить, отправляются через POST без тела. Они предоставляют примеры curl командной строки, например:

$ curl -d '' http://192.168.1.134:8060/keypress/home

Мне нужно написать это как PHP-скрипт, который будет выполнять ряд действий: нажатие клавиши / home, запуск / appid, нажатие клавиши / выбор, нажатие клавиши / вправо, нажатие клавиши / вправо, нажатие клавиши / выбор.

Смотрите ниже, что я придумал для одной команды. Два вопроса:

1) Мой Року не отвечает на это, так что я делаю не так?
2) Как лучше всего отправить несколько запросов POST один за другим?

<?php
$ch = curl_init('http://192.168.1.134:8060/keypress/home');
$data = '';

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);
?>

1

Решение

То, как вы пытаетесь это сделать, ваш веб / PHP-сервер должен иметь прямой доступ к вашему Roku, что обычно не так. Находится ли сервер в той же сети 192.168.1. *?

Пытаться http://remoku.tv/ чтобы узнать, можно ли напрямую управлять вашим Roku из браузера.

0

Другие решения

Я нашел лучший способ сделать это, на стороне клиента с помощью JavaScript.

<script>
function post1() {
xhr = new XMLHttpRequest();
xhr.onload=function()
{
alert(xhr.responseText);
}
xhr.open("POST", "http://192.168.1.134:8060/keypress/home");
xhr.send();
}
</script>
<body onload="post1()">
0

По вопросам рекламы [email protected]