[Сценарий] Управление смарт ТВ Philips

Не требует установки программ или изменения файлов

Модераторы: immortal, newz20

skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Контактная информация:

Re: Модуль для ТВ "Philips"

Сообщение skysilver »

gg() надо в двойные кавычки заключить
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: Модуль для ТВ "Philips"

Сообщение Jilber »

Уже пробовал:
SPOILERSPOILER_SHOW
$url = 'http://192.168.100.4:1925/1/channels/current';
$options = array(
'http' => array(
'method' => 'POST',
'content' => '{"id":"gg("Philips.Channel")"}',
'header'=> "Content-Type: application/json\r\n" .
"Accept: application/json\r\n"
)
);

$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
Такая же ошибка. Может там надо преобразовать тип Philips.Channel в строковый ?
Последний раз редактировалось Jilber Чт окт 19, 2017 8:43 pm, всего редактировалось 1 раз.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Контактная информация:

Re: Модуль для ТВ "Philips"

Сообщение skysilver »

А. Стоп. Вот так:

Код: Выделить всё

'content' => '{"id":"'.gg("Philips.Channel").'"}',
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: Модуль для ТВ "Philips"

Сообщение Jilber »

СПС, так работает.
Сделал пока вот такое управление ТВ в меню:
SPOILERSPOILER_SHOW
ТВ.jpg
ТВ.jpg (19.79 КБ) 6736 просмотров
Хотелось сделать для "Mute" обычный chekbox (просто "галочку"), но что-то не нашёл его. Его нет в системе ?
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: Модуль для ТВ "Philips"

Сообщение Jilber »

Подскажите, как можно разобрать такой json:
SPOILERSPOILER_SHOW

Код: Выделить всё

{
    "13919": {
        "preset": "1",
        "name": "Первый канал"
    },
    "13920": {
        "preset": "2",
        "name": "Россия 1"
    },
    "13921": {
        "preset": "3",
        "name": "Матч"
    },
    "13922": {
        "preset": "4",
        "name": "НТВ"
    },
    "13923": {
        "preset": "5",
        "name": "Пятый канал"
    },
    "13924": {
        "preset": "6",
        "name": "Россия К"
    },
    "13925": {
        "preset": "7",
        "name": "Россия 24"
    },
    "13926": {
        "preset": "8",
        "name": "Карусель"
    },
    "13927": {
        "preset": "9",
        "name": "ОТР"
    },
    "13928": {
        "preset": "10",
        "name": "ТВЦ"
    }
}
Хочется создать свойства например "Channel1Name" и присвоить ему значение "Первый канал", "Channel1ID" присвоить значение "13919", "Channel2Name" = "Россия 1", "Channel2ID" = 13920, и т.д. Количество каналов изначально неизвестно. Я так понимаю это делается как-то через foreach ?
Сделал в меню вот такой выбор канала, но при новом сканировании их ID меняются, а забивать вручную в список под сотню каналов...
SPOILERSPOILER_SHOW
1.jpg
1.jpg (141.08 КБ) 6550 просмотров
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: [Сценарий] Управление смарт ТВ Philips

Сообщение Jilber »

Благодаря помощи skysilver, за что ему огромное спасибо, удалось считать скриптом список каналов с ТВ в свойства объекта. Теперь не надо вручную забивать в свойства ID каналов при их повторном сканировании.
SPOILERSPOILER_SHOW

Код: Выделить всё

$channels = getURL('http://IP:port/1/channels');

$data = json_decode($channels, true);
if (is_array($data) && !empty($data)) {
  foreach ($data as $key => $ch) {
    echo $key . $ch['preset'] . $ch['name'] . PHP_EOL;
    sg('Philips.ChannelID' . $ch['preset'], $key);
    sg('Philips.ChannelName' . $ch['preset'], $ch['name']);
  }
}
Ralan
Сообщения: 47
Зарегистрирован: Пн фев 18, 2019 11:56 pm

Re: [Сценарий] Управление смарт ТВ Philips

Сообщение Ralan »

Дайте пошаговую инструкцию, как прописать в объекты данный скрипт. Не судите строго, только осваиваю систему, не получается. Настроил включение голосом нескольких каналов, но хочется все сделать по уму.
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: [Сценарий] Управление смарт ТВ Philips

Сообщение Jilber »

Ralan писал(а): Вт фев 19, 2019 12:48 am Дайте пошаговую инструкцию, как прописать в объекты данный скрипт. Не судите строго, только осваиваю систему, не получается. Настроил включение голосом нескольких каналов, но хочется все сделать по уму.
Этот скрипт нужно запустить всего один раз вручную. Он нужен для создания списка свойств с каналами и их ID. Просто создайте новый скрипт, пропишите у него указанный код и запустите его один раз вручную.
SPOILERSPOILER_SHOW
Сценарий.jpg
Сценарий.jpg (166.41 КБ) 5710 просмотров
Если интересует могу показать как у меня получилось сделать управление телевизором.
Ralan
Сообщения: 47
Зарегистрирован: Пн фев 18, 2019 11:56 pm

Re: [Сценарий] Управление смарт ТВ Philips

Сообщение Ralan »

Да, конечно, интересно, поделитесь. Мне удалось настроить включение каналов голосом. Сейчас бьюсь на голосовым управлением уровнем звука.
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: [Сценарий] Управление смарт ТВ Philips

Сообщение Jilber »

Я ради интереса тоже делал голосовое включение часто используемых каналов, но обычно им не пользуюсь. Использую вот такое меню (выбор входа, канала, управление громкостью):
SPOILERSPOILER_SHOW
Меню.jpg
Меню.jpg (20.38 КБ) 5702 просмотра
или всплывающий виртуальный пульт на сцене:
SPOILERSPOILER_SHOW
Пульт.jpg
Пульт.jpg (62.42 КБ) 5702 просмотра
Раз у вас работает голосовое включение каналов, то видимо управление без голоса уже настроено и нет смысла выкладывать методы, которые использую я?
Ответить