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

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

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

freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm
Благодарил (а): 6 раз
Поблагодарили: 30 раз

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

Сообщение freesh » Пт дек 06, 2019 10:22 am

klv666 писал(а):
Пт дек 06, 2019 9:33 am
freesh писал(а):
Чт дек 05, 2019 10:33 pm

Я делал через сценарии
$cmd='python3 pylips.py --host %TV's_ip_address% --user %username% --pass %password% --command %command%';
exec($cmd,$result);
У меня получилось через сценарий в мажордомо!!!
Остался вопрос, а "$result" - какую роль выполняет? это как то участвует в сценарии?
Молодца :) если накидаешь в МД красивую сцену/пульт управления TV - поделись :oops:

Вообще в result пишется ответ от телевизора или чего-нить ещё(если ответ есть), например OK/не ОК/Какая-то ошибка.
Т.е. можно в принципе обрабатывать ответ и типа если ОК то делать что-то.

Когда ты пробовал комманду из консоли тебе в ответ приходило что?
За это сообщение автора freesh поблагодарил:
klv666 (Пт дек 06, 2019 11:05 am)
Рейтинг: 1.16%
Raspberry pi3, xiaomi, sonoff rf.
klv666
Сообщения: 175
Зарегистрирован: Вс янв 20, 2019 10:48 am
Благодарил (а): 64 раза
Поблагодарили: 19 раз

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

Сообщение klv666 » Пт дек 06, 2019 11:07 am

freesh писал(а):
Пт дек 06, 2019 10:22 am


Вообще в result пишется ответ от телевизора или чего-нить ещё(если ответ есть), например OK/не ОК/Какая-то ошибка.
Т.е. можно в принципе обрабатывать ответ и типа если ОК то делать что-то.

Когда ты пробовал комманду из консоли тебе в ответ приходило что?
Понял, спасибо!
Да, приходило, там на целый абзац всякой лабуды, которую наверно можно использовать в каких то задачах...

Я пока далек от красивых и теме более готовых сцен, в основном пока использую для выключения, в том числе по времени отсутствия, если кто то забыл...
freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm
Благодарил (а): 6 раз
Поблагодарили: 30 раз

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

Сообщение freesh » Пт дек 06, 2019 11:12 am

klv666 писал(а):
Пт дек 06, 2019 11:07 am
freesh писал(а):
Пт дек 06, 2019 10:22 am


Вообще в result пишется ответ от телевизора или чего-нить ещё(если ответ есть), например OK/не ОК/Какая-то ошибка.
Т.е. можно в принципе обрабатывать ответ и типа если ОК то делать что-то.

Когда ты пробовал комманду из консоли тебе в ответ приходило что?
Понял, спасибо!
Да, приходило, там на целый абзац всякой лабуды, которую наверно можно использовать в каких то задачах...
Если вида {"param1": 1432, "param2": 3123} то это json его можно разобрать на переменные. т.е.
$json = json_decode($result, true);
А потом обращаться $json["param1"] - тут будет переменная полученная

Полезно, имхо, для запроса статуса т.е. после этих комманд - обрабатываешь ответ получая какая щас громкость/канал
powerstate - Returns current power state of the TV ('On' or 'Off')
volume - Returns current volume and mute status
current_channel - Returns current channel (if in TV mode)
current_app - Returns current app (Android TVs only)
Raspberry pi3, xiaomi, sonoff rf.
eslavnov
Сообщения: 8
Зарегистрирован: Вс дек 08, 2019 1:25 pm
Благодарил (а): 0
Поблагодарили: 1 раз

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

Сообщение eslavnov » Вс дек 08, 2019 1:30 pm

freesh писал(а):
Чт дек 05, 2019 12:00 pm
klv666 писал(а):
Чт дек 05, 2019 11:55 am
freesh писал(а):
Чт дек 05, 2019 10:28 am
Глянь это - https://github.com/suborb/philips_android_tv - вроде может вытащить логин и пароль:
sudo python2.7 philips.py 14 pair --host TV_IP
В принципе это практически тоже самое что и я в ссылках приводил.
У меня проблема не знания - как это переварить/ как запустить!?
Ваша строка sudo python2.7 philips.py 14 pair --host TV_IP похоже как команда для консоли в линуксе, где я еще больший ноль чем в виндовс. Кстати сервер у меня на винде.
Глобальных вопроса у меня 2: где это положить и как это запустить?!
А, я понял. Я с питоном сам на вы но принципы то везде одинаковы :)
Поставь питон(если не установлен) - потом запусти коммандную строку и оттуда (соответственно свои пути пропиши) C:\python27\python.exe <путь к philips.py> pair --host TV_IP

Может у ТВ в настройках ещё посмотреть на предмет сетевых разрешений/паролей? :)
Pylips НЕ работает с Python2, используйте python3:
"pip3 install -r requirements.txt" чтобы установить все dependencies вроде pycrypto, затем "python3 pylips.py". Точно работает на Ubuntu и Win10.
eslavnov
Сообщения: 8
Зарегистрирован: Вс дек 08, 2019 1:25 pm
Благодарил (а): 0
Поблагодарили: 1 раз

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

Сообщение eslavnov » Вс дек 08, 2019 1:50 pm

freesh писал(а):
Чт дек 05, 2019 10:33 pm
klv666 писал(а):
Чт дек 05, 2019 10:28 pm
freesh писал(а):
Чт дек 05, 2019 10:13 pm
Теперь пробуй из консоли сначала python3 pylips.py --host %TV's_ip_address% --user %username% --pass %password% --command %command%
комманды из https://github.com/eslavnov/pylips
Получилось, а как теперь это прикрутить к мажордомо, как в мажордомо эти команды запускать?
Я делал через сценарии
$cmd='python3 pylips.py --host %TV's_ip_address% --user %username% --pass %password% --command %command%';
exec($cmd,$result);

только возможно надо будет к pylips.py полный путь прописать
Можно IP, логин и пароль записать куда-нить в свойство телевизора например и команду собирать из свойст, а можно просто копипастом.

Если телевизор есть как объект, можно посмотреть его методы и вписать код туда, а потом вызывать метод, но я на сценариях делал.
Логин и пароль IP сохраняются в settings.ini после удачного пейринга. Добавьте IP телевизора в settings.ini, затем запустите "python3 pylips.py" и следуйте инструкциям. После пейринга логин и пароль будут записаны в settings.ini - в таком случае параметры --host, --user и --pass можно не указывать для последующих команд.
klv666
Сообщения: 175
Зарегистрирован: Вс янв 20, 2019 10:48 am
Благодарил (а): 64 раза
Поблагодарили: 19 раз

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

Сообщение klv666 » Вс дек 08, 2019 4:27 pm

eslavnov писал(а):
Вс дек 08, 2019 1:50 pm

Логин и пароль IP сохраняются в settings.ini после удачного пейринга. Добавьте IP телевизора в settings.ini, затем запустите "python3 pylips.py" и следуйте инструкциям. После пейринга логин и пароль будут записаны в settings.ini - в таком случае параметры --host, --user и --pass можно не указывать для последующих команд.
Судя описанию должно, но у меня settings.ini не заполнился, ай пи я менял...
klv666
Сообщения: 175
Зарегистрирован: Вс янв 20, 2019 10:48 am
Благодарил (а): 64 раза
Поблагодарили: 19 раз

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

Сообщение klv666 » Вс дек 08, 2019 5:34 pm

Может кто подскажет как правильно составить команду?!

Вот пример с "https://github.com/eslavnov/pylips"
Post method:
python3 pylips.py --host %TV's_ip_address% --user %username% --pass %password% --command post --path menuitems/settings/current --body '{"nodes":[{"nodeid":2131230774}]}'

его пытаюсь переделать на отправку уровня громкости которую нужно установить:
C:\python34\python.exe C:\philips\pylips.py --command post --path audio/volume --body '{"nodes":[{"muted": false, "current": 10}]}'
и ничего не выходит, часть этого точно правильно, что выделено жирным, а вот остальное не знаю...
C:\python34\python.exe C:\philips\pylips.py --command post --path audio/volume --body '{"muted": false, "current": 18}'
и так не выходит
freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm
Благодарил (а): 6 раз
Поблагодарили: 30 раз

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

Сообщение freesh » Вс дек 08, 2019 5:49 pm

klv666 писал(а):
Вс дек 08, 2019 5:34 pm
Может кто подскажет как правильно составить команду?!

Вот пример с "https://github.com/eslavnov/pylips"
Post method:
python3 pylips.py --host %TV's_ip_address% --user %username% --pass %password% --command post --path menuitems/settings/current --body '{"nodes":[{"nodeid":2131230774}]}'

его пытаюсь переделать на отправку уровня громкости которую нужно установить:
C:\python34\python.exe C:\philips\pylips.py --command post --path audio/volume --body '{"nodes":[{"muted": false, "current": 10}]}'
и ничего не выходит, часть этого точно правильно, что выделено жирным, а вот остальное не знаю...
C:\python34\python.exe C:\philips\pylips.py --command post --path audio/volume --body '{"muted": false, "current": 18}'
и так не выходит
А какую ошибку выдает?
Ты эту строчку в exec засовываешь? попробуй \'{"nodes":[{"muted": false, "current": 10}]}\' - обратные слеши перед '
Ну и пробуй сначала через консоль отработать отправку комманды
Raspberry pi3, xiaomi, sonoff rf.
klv666
Сообщения: 175
Зарегистрирован: Вс янв 20, 2019 10:48 am
Благодарил (а): 64 раза
Поблагодарили: 19 раз

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

Сообщение klv666 » Вс дек 08, 2019 7:04 pm

через консоль пока пробую, вот примерно что выходит
Вложения
125.JPG
125.JPG (36.45 КБ) 3906 просмотров
freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm
Благодарил (а): 6 раз
Поблагодарили: 30 раз

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

Сообщение freesh » Вс дек 08, 2019 7:10 pm

klv666 писал(а):
Вс дек 08, 2019 7:04 pm
через консоль пока пробую, вот примерно что выходит
не \ - это для сценария в МД :)
Что в консоли без \?
Raspberry pi3, xiaomi, sonoff rf.
Ответить