CrazyAleks
Профи в Сат-ТВ
Поставил себе задачу разобраться с переводом приёмника в режим standby после включения приёмника (может быть полезно при пропадании писания и последующем его включении)
Скрипта который сделает это корректно не обнаружил, полез копаться во всех исполняемых файлах в папке /MMP/usr/bin с целью найти неизвестные ключи для запуска программ, чтобы использовать недокументированные фичи для более удобной работы с приёмником типа vfd_display для выключения ламочек и включения вентилятора.
И НАШЁЛ !good!
Исполняемый файл /MMP/usr/bin/td210_ip_remote судя из названия предназначен для удалённого управления приёмником по IP.
При запуске без параметров выдаёт формат запуска первый параметр IP адрес возможно получится извлечь из этого какую-то пользу для мульти-рум применения (пока использую как localhost), второй параметр определяет режим работы с двумя основными режимами разобрался достаточно хорошо:
1. /MMP/usr/bin/td210_ip_remote 127.0.0.1 N
переводит приёмник в диалоговый режим ввода команд, на каждое нажатие клавиш на клавиатуре (цифровых и букв верхнего ряда от q до ] ) в консоли есть диагностика, что за команду мы посылаем и приёмник на неё реагирует. Количество и тип команд примерно соответствует числу кнопок на пульте ДУ, их перечень можно увидеть если просмотреть выполняемый файл в редакторе как текстовый.
2. /MMP/usr/bin/td210_ip_remote 127.0.0.1 S /path/file
запускает программу в режиме выполнения скрипта из файла
в файле должны быть записаны команды типа: HOME, MENU, VOLUP, MUTE и тп.
не разобрался пока как создать скрипт с несколькими командами, если сразу после первой идёт юниксовый признак конца строки (байт 0A) программа ругается и команду не выполняет.
Нашёл выход ставить после команды дополнительный пробел
Если общими силами разберёмся какой должен быть разделитель между командами - можно заставить приёмник сделать что-то сложное, например, переключиться на нужный канал, убавить громкость, перезапустить эмулятор и тд и тп всё на что хватит фантазии
Для иллюстрации применения привожу первый полезный скрипт
#!/bin/sh
#
# Go to SLEEP script for AzBox
# /DISK2/etc/start.d/S20Sleep
# (C) CrazyAleks
start() {
echo "SLEEP " > /tmp/sleep.cmd
sleep 1
echo "OK " >> /tmp/sleep.cmd
/MMP/usr/bin/td210_ip_remote 127.0.0.1 S /tmp/sleep.cmd
}
stop() {
rm /tmp/sleep.cmd
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?
Собственно вот ardon:
Кому интересно - предлагаю развивать тему и делиться удачным опытом.
В скрипт внесены изменения, добавлена вторая команда (типа нажатие кнопки ОК на пульте) в standby переходим сразу, без ожидания 10 секунд.
Команды в скрипте нужно писать по одной в каждой строке,
после команды должен стоять пробел (признак конца строки недопустим)
echo SLEEP > /tmp/sleep.cmd - НЕ ПРАВИЛЬНО
echo "SLEEP " > /tmp/sleep.cmd - ПРАВИЛЬНО
Для тех кто собирается регулярно пользоваться скриптами, можно не генерировать командные файлы каждый раз при запуске скрипта,
а создать папку типа /DISK2/ect/command в разделе доступном на запись для удобной работы: создания резервных копий и переноса на другие приёмники, в таком случае команда будет иметь вид:
/MMP/usr/bin/td210_ip_remote 127.0.0.1 S /DISK2/etc/command/sleep.cmd
Скрипта который сделает это корректно не обнаружил, полез копаться во всех исполняемых файлах в папке /MMP/usr/bin с целью найти неизвестные ключи для запуска программ, чтобы использовать недокументированные фичи для более удобной работы с приёмником типа vfd_display для выключения ламочек и включения вентилятора.
И НАШЁЛ !good!
Исполняемый файл /MMP/usr/bin/td210_ip_remote судя из названия предназначен для удалённого управления приёмником по IP.
При запуске без параметров выдаёт формат запуска первый параметр IP адрес возможно получится извлечь из этого какую-то пользу для мульти-рум применения (пока использую как localhost), второй параметр определяет режим работы с двумя основными режимами разобрался достаточно хорошо:
1. /MMP/usr/bin/td210_ip_remote 127.0.0.1 N
переводит приёмник в диалоговый режим ввода команд, на каждое нажатие клавиш на клавиатуре (цифровых и букв верхнего ряда от q до ] ) в консоли есть диагностика, что за команду мы посылаем и приёмник на неё реагирует. Количество и тип команд примерно соответствует числу кнопок на пульте ДУ, их перечень можно увидеть если просмотреть выполняемый файл в редакторе как текстовый.
2. /MMP/usr/bin/td210_ip_remote 127.0.0.1 S /path/file
запускает программу в режиме выполнения скрипта из файла
в файле должны быть записаны команды типа: HOME, MENU, VOLUP, MUTE и тп.
не разобрался пока как создать скрипт с несколькими командами, если сразу после первой идёт юниксовый признак конца строки (байт 0A) программа ругается и команду не выполняет.
Нашёл выход ставить после команды дополнительный пробел
Если общими силами разберёмся какой должен быть разделитель между командами - можно заставить приёмник сделать что-то сложное, например, переключиться на нужный канал, убавить громкость, перезапустить эмулятор и тд и тп всё на что хватит фантазии
Для иллюстрации применения привожу первый полезный скрипт
#!/bin/sh
#
# Go to SLEEP script for AzBox
# /DISK2/etc/start.d/S20Sleep
# (C) CrazyAleks
start() {
echo "SLEEP " > /tmp/sleep.cmd
sleep 1
echo "OK " >> /tmp/sleep.cmd
/MMP/usr/bin/td210_ip_remote 127.0.0.1 S /tmp/sleep.cmd
}
stop() {
rm /tmp/sleep.cmd
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?
Собственно вот ardon:
Кому интересно - предлагаю развивать тему и делиться удачным опытом.
В скрипт внесены изменения, добавлена вторая команда (типа нажатие кнопки ОК на пульте) в standby переходим сразу, без ожидания 10 секунд.
Команды в скрипте нужно писать по одной в каждой строке,
после команды должен стоять пробел (признак конца строки недопустим)
echo SLEEP > /tmp/sleep.cmd - НЕ ПРАВИЛЬНО
echo "SLEEP " > /tmp/sleep.cmd - ПРАВИЛЬНО
Для тех кто собирается регулярно пользоваться скриптами, можно не генерировать командные файлы каждый раз при запуске скрипта,
а создать папку типа /DISK2/ect/command в разделе доступном на запись для удобной работы: создания резервных копий и переноса на другие приёмники, в таком случае команда будет иметь вид:
/MMP/usr/bin/td210_ip_remote 127.0.0.1 S /DISK2/etc/command/sleep.cmd
Последнее редактирование: