Вопрос к msh555 по классу Radio
Модератор: immortal
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Вопрос к msh555 по классу Radio
У вас взял пример реализации Класс Radio и Класс AlarmClock .
Все вроде понятно ..немогу только понять как радио запускается (
// включим радио
callMethod("Radio.RadioPlay");
Radio.RadioPlay
if(!getGlobal("NobodyHomeMode.active")){
$this->setProperty("RadioIsPlay",1);
$this->callMethod("RadioSwitch");
}else{
say('Никого нет дома, радио не включаю');
}
...а как же само радио...( ??
Все вроде понятно ..немогу только понять как радио запускается (
// включим радио
callMethod("Radio.RadioPlay");
Radio.RadioPlay
if(!getGlobal("NobodyHomeMode.active")){
$this->setProperty("RadioIsPlay",1);
$this->callMethod("RadioSwitch");
}else{
say('Никого нет дома, радио не включаю');
}
...а как же само радио...( ??
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Вопрос к msh555 по классу Radio
Привет!
Обычно пишут в личку, если вопрос конкретный
просто было неожиданно прочитать свой ник в заголовке темы:-)
Обновил в КОННЕКТЕ, теперь радио работает не с mpd/mpc (у меня с ним какие-то глюки с зависанием цикла execs), а с VLC over HTTP
RadioSwitch
Немного методологии, с вашего позволения 
Есть свойство и есть метод делающий работу. В МЖД есть возможность указать метод при изменении свойства. Я не пользуюсь этой возможностью, так как в этом случае нельзя дважды подряд в одном методе менять это свойство.
Делаем так: Создаем ЕЩЕ один метод, в нем меняем свойство и вызываем метод. То есть RadioPlay и есть этот ТРЕТИЙ метод: меняет свойство и запускает RadioSwitch.
Используем так: если надо ПРОГРАММНО включить радио - дергаем RadioPlay .
Если надо из меню: к ползунку привязано свойство RadioIsPlay и метод RadioSwitch.
Как-так. Все описанное - пример, как делал.
Обычно пишут в личку, если вопрос конкретный

Обновил в КОННЕКТЕ, теперь радио работает не с mpd/mpc (у меня с ним какие-то глюки с зависанием цикла execs), а с VLC over HTTP
RadioSwitch
Код: Выделить всё
if (getGlobal("Radio.RadioIsPlay")){
say("Включаю радио");
// safe_exec("mpc play 1");
getURL('http://192.168.0.777:8080/requests/status.xml?command=pl_empty',0);
getURL('http://192.168.0.777:8080/requests/status.xml?command=in_play&input=http://stream-sd.radioparadise.com:8056',0);
setGlobal("Radio.RadioPlayBeginTime",time());
}else{
// safe_exec("mpc stop");
getURL('http://192.168.0.777:8080/requests/status.xml?command=pl_stop',0);
say("Радио выключено");
}

Есть свойство и есть метод делающий работу. В МЖД есть возможность указать метод при изменении свойства. Я не пользуюсь этой возможностью, так как в этом случае нельзя дважды подряд в одном методе менять это свойство.
Делаем так: Создаем ЕЩЕ один метод, в нем меняем свойство и вызываем метод. То есть RadioPlay и есть этот ТРЕТИЙ метод: меняет свойство и запускает RadioSwitch.
Используем так: если надо ПРОГРАММНО включить радио - дергаем RadioPlay .
Если надо из меню: к ползунку привязано свойство RadioIsPlay и метод RadioSwitch.
Как-так. Все описанное - пример, как делал.
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Re: Вопрос к msh555 по классу Radio
Я правильно понимаю...
запускается vlc проигрыватель который проигрывает файлы ?
запускается vlc проигрыватель который проигрывает файлы ?
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Вопрос к msh555 по классу Radio
Ставим vlc
Автозапуск
в конец:
Все. Теперь на порту 8080 можно зайти в интерфейс VLC. Ну и поуправлять им.
Код: Выделить всё
sudo apt-get install vlc
Код: Выделить всё
crontab -e -u ЮзерУбунты
Код: Выделить всё
@reboot vlc -I http
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Вопрос к msh555 по классу Radio
Ага. Убунта 12
Но иногда проще из терминала прогу поставить, чем искать ее через тормознутый графический интерфейс.
Но иногда проще из терминала прогу поставить, чем искать ее через тормознутый графический интерфейс.
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Re: Вопрос к msh555 по классу Radio
Под виндой все работает - Спасибо
а вот под линуксом пробую ...болт...
расшарил на Дебиане \shared
\\192.168.2.164\shared
с винды захожу вижу файлы музыки ...
в настройках приложения Медиа перепробовал куча путей ...и не получается подключить ...
Под Линуксом какой путь должен прописан ? если папка на этом же компе ?
а вот под линуксом пробую ...болт...
расшарил на Дебиане \shared
\\192.168.2.164\shared
с винды захожу вижу файлы музыки ...
в настройках приложения Медиа перепробовал куча путей ...и не получается подключить ...
Под Линуксом какой путь должен прописан ? если папка на этом же компе ?
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Вопрос к msh555 по классу Radio
У меняПод Линуксом какой путь должен прописан ? если папка на этом же компе ?
Код: Выделить всё
/media/music/
-
- Сообщения: 136
- Зарегистрирован: Вт ноя 12, 2013 8:29 pm
- Благодарил (а): 2 раза
- Поблагодарили: 8 раз
Re: Вопрос к msh555 по классу Radio
Медиа/музик. Находится у тебя на компе на котором Алиса стоит ?
Я создал на компе с Алисой папку положил мп 3 - расшарил (поставил самбу)
Установил Vlc ...а с путями застрял..
Радио на Vlc через плейлист у тебя?
Я создал на компе с Алисой папку положил мп 3 - расшарил (поставил самбу)
Установил Vlc ...а с путями застрял..
Радио на Vlc через плейлист у тебя?
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Вопрос к msh555 по классу Radio
RadioSwitchkostya77 писал(а):Радио на Vlc через плейлист у тебя?
Код: Выделить всё
//
if (getGlobal("Radio.RadioIsPlay")){
say("Включаю радио");
getURL('http://192.168.0.777:8080/requests/status.xml?command=pl_empty',0);
getURL('http://192.168.0.777:8080/requests/status.xml?command=in_play&input=http://stream-sd.radioparadise.com:8056',0);
setGlobal("Radio.RadioPlayBeginTime",time());
}else{
getURL('http://192.168.0.777:8080/requests/status.xml?command=pl_stop',0);
say("Радио выключено");
}