VLC и управление им

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Mescaline
Сообщения: 29
Зарегистрирован: Вт июн 09, 2015 6:03 pm
Благодарил (а): 4 раза
Поблагодарили: 15 раз

VLC и управление им

Сообщение Mescaline » Вт июн 16, 2015 3:39 pm

Доброго времени суток, люди добрые :)
Только я разобрался с "голосом" Алисы и голосовым управлением системой, как столкнулся с другой проблемой...
После установки системы в шаблонах поведения есть такой шаблон "(останови|выключи) музыку", в котором есть такая строка:
getURL("http://localhost/rc/?command=vlc_pause",0);

Я изменил его, подставив адрес своей машины и порт:

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

getURL("http://192.168.12.12:8080/rc/?command=vlc_pause",0); 
Http-страница 192.168.12.12:8080 открывается, а 192.168.12.12:8080/rc/ у меня отсутствует. Вместо нее у меня есть папка "requests". Если поменять "rc" на "requests" толку 0. В итоге заработала у меня только вот такая ссылка:

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

http://192.168.12.12:8080/requests/status.xml?command=pl_stop 
Если ее забить вручную, все работает, воспроизведение останавливается, но при выполнении запроса "останови музыку" Алиса говорит "Готово", но воспроизведение не останавливается.
Сейчас скрипт выглядит так:

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

getURL("http://localhost:8080/requests/status.xml?command=pl_stop",0);
say(LANG_DONE); 
и не работает

Подскажите пожалуйста, что я делаю не так :cry:
P.S.версия VLC 2.2.1
P.P.S. и что означает "0" в конце адреса?
Заранее спасибо)
Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: VLC и управление им

Сообщение Amarok » Ср июн 17, 2015 7:46 am

А если так:

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

$runradio="http://";
$ip=$_SERVER['REMOTE_ADDR'];//узнаем IP терминала пославшего запрос
if ($ip == "192.168.0.81") {//если IP от GPad,
$ip=gg('Amarok.IPint');     //заменим его на основной IP Амарока
}                           //
$runradio.=$ip;
$runradio.=":8080/requests/status.xml?command=pl_stop";
getURL($runradio,0);
 
За это сообщение автора Amarok поблагодарил:
Mescaline (Ср июн 17, 2015 10:35 am)
Рейтинг: 1.16%
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
Mescaline
Сообщения: 29
Зарегистрирован: Вт июн 09, 2015 6:03 pm
Благодарил (а): 4 раза
Поблагодарили: 15 раз

Re: VLC и управление им

Сообщение Mescaline » Ср июн 17, 2015 9:12 am

Amarok писал(а):А если так:

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

$runradio="http://";
$ip=$_SERVER['REMOTE_ADDR'];//узнаем IP терминала пославшего запрос
if ($ip == "192.168.0.81") {//если IP от GPad,
$ip=gg('Amarok.IPint');     //заменим его на основной IP Амарока
}                           //
$runradio.=$ip;
$runradio.=":8080/requests/status.xml?command=pl_stop";
getURL($runradio,0);
Спасибо за то, что отозвались, но, если честно, я заходил в Ваш коннект и находил там эти строчки, они не работают тоже. Я их видоизменил так:

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

$runradio="http://";
$ip=$_SERVER['REMOTE_ADDR'];
if ($ip == "192.168.12.1") {
$ip="192.168.12.12";     
}                          
$runradio.=$ip;
$runradio.=":8080/requests/status.xml?command=pl_stop";
getURL($runradio,0);
192.168.12.1 - это ip компьютера, с которого я посылаю запрос, а .12.12 - адрес сервера с Алисой. Поэтапно проверил, переменная $ip=$_SERVER['REMOTE_ADDR']; получает значение моего Ip (.12.1) корректно, далее все также отрабатывается. Интереса ради, в конец скрипта добавил:
say("$runradio");
Алиса не остановила воспроизведение, но в чат при этом вывела правильную строку:
http://192.168.12.12:8080/requests/stat ... nd=pl_stop
Тут же скопировал ее в строку браузера и послал запрос - музыка остановилась, команда сработала.
На другой машине VLC 2.0.5 версии, та же беда. Может быть все дело в пароле на VLC, без которого Алиса не может получить доступ к указанному URL?
За это сообщение автора Mescaline поблагодарил:
ILGAS (Сб июл 02, 2016 1:07 pm)
Рейтинг: 1.16%
Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: VLC и управление им

Сообщение Amarok » Ср июн 17, 2015 9:33 am

у меня без пароля
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
Mescaline
Сообщения: 29
Зарегистрирован: Вт июн 09, 2015 6:03 pm
Благодарил (а): 4 раза
Поблагодарили: 15 раз

Re: VLC и управление им

Сообщение Mescaline » Ср июн 17, 2015 10:07 am

Нужно по-чаще вспоминать старую пословицу "Утро вечера мудренее"... На свежую голову нашлась причина (ну, по-мимо моей "дырявой" головы :D ). В моей версии VLC (2.1.1) не оказалось файла .hosts по пути (C:\Program Files (x86)\VideoLAN\VLC\lua\http), переустановил на версию 2.0.5, файл появился.
В настройках VLC убрал пароль и все заработало 8-) . Видимо из-за отсутствия файла в новой версии не работало.
Спасибо за помощь :)
Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: VLC и управление им

Сообщение Amarok » Ср июн 17, 2015 10:12 am

Я использую старую версию. Держу её в архиве и ставлю службой, на терминалах
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
Александр
Сообщения: 17
Зарегистрирован: Сб окт 11, 2014 8:11 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: VLC и управление им

Сообщение Александр » Вс июл 19, 2015 2:35 pm

Здравствуйте! После установки, при попытке включить музыку через команду "поставь музыку" появляется следующее:

Прочитать файл не удалось:
VLC не может открыть файл «C:\_majordomo\htdocs\.\music\Beyonce - Beyonce (2013)» (Bad file descriptor).
Этот источник не открывается:
VLC не может открыть MRL 'file:///C:/_majordomo/htdocs/./music/Beyonce%20-%20Beyonce%20%282013%29'. Ищите более подробную информацию в лог-файле.

Подскажите, пожалуйста, в чём проблема?
Заранее благодарю!
За это сообщение автора Александр поблагодарил:
foxvlad (Пт июл 31, 2015 8:50 pm)
Рейтинг: 1.16%
byh
Сообщения: 6
Зарегистрирован: Вс авг 09, 2015 7:10 pm
Благодарил (а): 3 раза
Поблагодарили: 2 раза

Re: VLC и управление им

Сообщение byh » Вс авг 09, 2015 7:57 pm

Всем привет!! Похожая проблема как у Александра, но вот что заметил. Если в настройках терминала выставить тип плеера VLC или по умолчанию, то файл запускается, по такой команде =app_mediabrowser&inst=&folder=.%2F.%2Ftest%2F&file=.%2Ftest%2F1+test.mp3&collection_id=13&mode=play# и VLC его "кушает" нормально и в плей листе появляется название трека "1 test.mp3". Минус в том что при нажатии кнопки "Play", каждый раз открывается новый VLC плеер. А вот если в настройках терминала использовать "VLC over HTTP" по команде =app_mediabrowser&inst=&folder=.%2F.%2Ftest%2F&file=.%2Ftest%2F1+test.mp3&collection_id=13&mode=play# в VLC плеере появляется трек с названием "1+test.mp3". В общем все пробелы залетают в VLC как знак "+". Если в названии трека и папок нет пробелов, все запускается. Народ, куда копать?


Вроде разобрался. В файле \_majordomo\htdocs\modules\app_player\vlcweb.php в строке(21 у меня) curl_setopt($ch, CURLOPT_URL, $playerAddr . "/requests/status.xml?command=in_play&input=" . urlencode($path)); поменял urlencode на rawurlencode и все заработало.
За это сообщение автора byh поблагодарили (всего 2):
AndreyZak (Пн ноя 09, 2015 11:13 pm) • ElEmEnt (Пт мар 23, 2018 2:50 am)
Рейтинг: 2.33%
MB от Acer E5-771G + Ubuntu server 16.04 + Arduino + esp8266
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: VLC и управление им

Сообщение sergejey » Пн авг 10, 2015 3:34 pm

Насчёт "каждый раз открывается новый VLC плеер" -- в самих настройках плеера есть опция использования одной копии, чтобы они не плодились а просто отправлялась команда уже запущенному экземпляру.
Про rawurlencode -- интересная находа, надо попробовать.
За это сообщение автора sergejey поблагодарил:
byh (Пн авг 10, 2015 8:34 pm)
Рейтинг: 1.16%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
imaverick
Сообщения: 4
Зарегистрирован: Пт сен 25, 2015 10:02 am
Благодарил (а): 2 раза
Поблагодарили: 1 раз

Re: VLC и управление им

Сообщение imaverick » Сб фев 20, 2016 11:41 am

Может быть кому пригодится, регулировка громкости в vlc :
http://localhost:8080/requests/status.x ... me&val=-20 - уменьшить громкость, где-то на 8%,
http://localhost:8080/requests/status.x ... me&val=+20 - увеличить громкость .
Ну и, соответственно, для кода:
getURL("http://localhost:8080/requests/status.x ... val=+50",0);
За это сообщение автора imaverick поблагодарил:
cube (Вт сен 06, 2016 1:10 am)
Рейтинг: 1.16%
Ответить