[Приложение] Sound Direct Manager

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Sound Direct Manager

Сообщение Amarok » Вс май 15, 2016 4:27 pm

Bagir писал(а):Так с голосовым управлением вроде как всё хорошо уже. Я давно пользуюсь. Вполне приемлемо работает. Постепенно добавляю в шаблоны поведения новые команды. Вот только кодовое слово, да, дело табак. Пока без вариантов. Может чего еще и попадется под руку.
Дык... Оно ж от инета зависит(
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
vazv71
Сообщения: 22
Зарегистрирован: Чт июн 19, 2014 12:22 pm
Благодарил (а): 6 раз
Поблагодарили: 5 раз

Re: Sound Direct Manager

Сообщение vazv71 » Сб июн 18, 2016 10:59 am

День добрый господа.
Хочу выразить благодарность Bagir за хорошую прогу :)
Все работает, у меня как раз задействованы все 8 каналов, 6 на первом этаже, два на улице. В планах второй этаж, а тут уже каналов не хватает, очень надеюсь когда нибудь в будущем будет реализована поддержка второй звуковухи. Могу проставиться удаленно :)

О насущном - как грамотно прикрутить штатный плеер мажордомо к sdm?
Сейчас работают голосовые оповещения через sayhook, все отлично проговаривает... Теперь хотелось бы музыку прикрутить...

Собрал на улице вокруг дома 4ре вот такие всепогодные колонки - может кому идея пригодится кстати... Рубят что пипец :) , из разряда дешево-сердито...
Вложения
IMG_20160615_075312.jpg
IMG_20160615_075312.jpg (136.92 КБ) 12481 просмотр
vazv71
Сообщения: 22
Зарегистрирован: Чт июн 19, 2014 12:22 pm
Благодарил (а): 6 раз
Поблагодарили: 5 раз

Re: Sound Direct Manager

Сообщение vazv71 » Сб июн 18, 2016 11:03 am

Забыл добавить, а глюк с громкостью в режиме 3d на все каналы играет гораздо тише, нежели просто сообщение в конкретный канал отправлять, теоретически поправится?
Или тут без вариантов?

upd.
Отправляю мпз на проигрывание через -playmusic , начинает играть тихо, зато потом если послать сообщение или во все каналы или в этот - то звук чуть чуть повышается пока сообщение проговаривается, а после окончания сообщения врубается на полную громкость. При запуске на проигрывание нового мп3 файла ситуация такая-же - тихо играет, пока не пошлешь сообщение.
vazv71
Сообщения: 22
Зарегистрирован: Чт июн 19, 2014 12:22 pm
Благодарил (а): 6 раз
Поблагодарили: 5 раз

Re: Sound Direct Manager

Сообщение vazv71 » Вс июн 19, 2016 10:58 pm

за выхи маленько поколдовал с мультирумом через сдм, в общем у меня это реализовано вкратце так. Может кому пригодиться.

домашние у меня все андроиды (звучит то как ;) поэтому с телефонами не расстаются. Соответственно имеем ходячие вайфай метки. На телефонах стоит мажордроид. В системе прописаны 3 юзера, с определением по хосту - ip телефона юзера, ip постоянный т к зарезервирован именно на этот мак в dhcp.

Далее так как дом у меня ЖБ стены, залитые под личным контролем друзей с юга, то сигналы в нем тухнут прилично, поэтому по точке доступа в каждую комнату полюбому. Переделал все свои точки на разные ссиды с одного одинакового который был ранее, поставил на телефоны таскер, далее в нем создал по профилю на каждую сеть, чтобы при подключении к ней таскер методом post запускал скрипт на сервере мжд. По одному скрипту на каждую вайфай сеть (то бишь читай на каждую комнату). Улица у меня также равна 1 комнате, только канала туда два выведено т к стоит 4ре колонки по углам дома через усил автомобильный. В доме все разведено по два автодинамика в комнате (правда в моно запаралелены), через ямаховский рес восмиканальный.
Скрипт например при выходе на улицу (за код не пинайте я сисадмин а не кодер)

//получаем имя юзера по id
if (context_getuser()==1) $nowuser='admin';
if (context_getuser()==5) $nowuser='Luba';
if (context_getuser()==6) $nowuser='Sonya';


//у каждого юзера добавлены два свойства - номер аудиоканала комнаты где он был до и номер канал куда зашел сейчас

if (gg($nowuser.'.SoundCanal')==56)
{
say (gg($nowuser.'.fullName').'снова на улице ('.context_getuser().')',-1); //если уже был в этой комнате, но по какойто причине отключился от вайфай комнаты - то делать ничего не надо.
}
else
{
sg($nowuser.'.SoundCanalBefore',gg($nowuser.'.SoundCanal')); //запоминаем предыдущий канал
sg($nowuser.'.SoundCanal',56); //каналы 5 и 6 у меня выведены на улицу - сюда пишем свой номер канала у кого какой в каждой комнате
safe_exec(gg('SoundProgram').' -outputchannel:'.gg($nowuser.'.SoundCanal').' -takemusic:'.gg($nowuser.'.SoundCanalBefore')); //переключаем звук с предыдущего канала откуда мы пришли на улицу
say (gg($nowuser.'.fullName').' на улице ('.context_getuser().')',-1); //пишем что такой то юзер вышел на учицу
say ("Перевела звук на улицу",gg($nowuser.'.SoundCanal')); //проговариваем куда перевели звук
}

Еще одна заморочка - чтобы быстро переключался вайфай - поставил прогу Best WiFi с плэй маркета. Она заставляет не ждать телефон пока сигнал от точки дпустится до нуля, быстро а переключает его на ближайшую точку с самым мощным сигналом. Т к телефоны тупят с переключением с точки на точку. Сечас при выходе на улицу звук приходит за мной секунд через 10. В принципе на халяву без коммерческих решений это нормально.
Штатный плеер мжд тоже прикрутил к сдм, но проблема с ним что списком играть никак пока, только по одному треку. и напрягает еще глюк с громкостью в самом сдм.
Для подстраховки также сделал в меню медиа кнопки, которые вызывают теже самые скрипты для ручного переключения звука в комнату.

В общем все работает забавно, особенно когда дети гоняют разные треки по разным комнатам ;) какафония еще та....

Теперь надо идти дальше - дорабатывать sayhook для индивидуальных сообщений от системы.
Последний раз редактировалось vazv71 Пн июн 20, 2016 12:02 am, всего редактировалось 1 раз.
vazv71
Сообщения: 22
Зарегистрирован: Чт июн 19, 2014 12:22 pm
Благодарил (а): 6 раз
Поблагодарили: 5 раз

Re: Sound Direct Manager

Сообщение vazv71 » Вс июн 19, 2016 11:36 pm

Доработал sayhook - теперь отвечает юзеру только в той комнате где он есть. Исключения - только сообщения в чат с параметром -1 и общие сообщения с параметром 0. Все остальное что больше 1 - переопределяем. Вообще все красиво стало. А то надоедали диалоги детей с мжд т к меня в нем чатбот прикручен, они иногда развлекаются. Теперь красота :)


/* Хук на функцию say() */
$level=$params['level'];
$ph=$params['ph'];

$atr=''; // параметры

switch ($level) {
case -1: // ничего не делать. Сообщение будет написано только в чате
return;
break;

case 0: // общие не тревожные сообщения ночью переадресуются на указанный канал с пониженной громкостью
if (gg('NightMode.status')){ $atr='-outputchannel:0 -volumemessage:30 ';}
break;

default:

if ($level>=1)
{
if (context_getuser()==1) $nowuser='admin';
if (context_getuser()==5) $nowuser='Luba';
if (context_getuser()==6) $nowuser='Sonya';

$atr=' -outputchannel:'.gg($nowuser.'.SoundCanal');
}

}


// ******* Отправка задания принимающей программе *******
// *** Вариант передачи данных через командную строку
// Помните, что первый экземпляр sdm, который станет сервером приема сообщений, вы должны запустить сами!

safe_exec(gg('SoundProgram').' '.$atr.' '.$ph);
За это сообщение автора vazv71 поблагодарил:
filippovsky (Пт авг 05, 2016 3:40 pm)
Рейтинг: 1.16%
vazv71
Сообщения: 22
Зарегистрирован: Чт июн 19, 2014 12:22 pm
Благодарил (а): 6 раз
Поблагодарили: 5 раз

Re: Sound Direct Manager

Сообщение vazv71 » Пн июн 20, 2016 8:11 pm

Валится sdm раз в сутки примерно... :(

причем за ним останавливается и один из циклов мжд т к ждет возврата от сдм

шо делать то товарищи?
Вложения
sdm2.jpg
скрин два
sdm2.jpg (319.29 КБ) 12299 просмотров
sdm1.jpg
скрин раз
sdm1.jpg (385.85 КБ) 12299 просмотров
Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Sound Direct Manager

Сообщение Amarok » Сб июн 25, 2016 10:21 am

Вопрос к уважаемому Багиру: можно в sdm.ini указывать звуковую карту не только по номеру, но и по названию? Просто у меня звуковушка usb и при перезагрузке номер может стать другим; имя же не меняется.
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
Aleks130699
Сообщения: 103
Зарегистрирован: Чт ноя 19, 2015 5:33 pm
Благодарил (а): 7 раз
Поблагодарили: 8 раз

Re: Sound Direct Manager

Сообщение Aleks130699 » Вт июл 12, 2016 12:24 pm

vazv71 писал(а):Доработал sayhook - теперь отвечает юзеру только в той комнате где он есть. Исключения - только сообщения в чат с параметром -1 и общие сообщения с параметром 0. Все остальное что больше 1 - переопределяем. Вообще все красиво стало. А то надоедали диалоги детей с мжд т к меня в нем чатбот прикручен, они иногда развлекаются. Теперь красота :)
А не подскажите как вы сделали чатбот.А то тоже хотелось бы сделать, чтобы не только по шаблонам поведения работал.
vazv71
Сообщения: 22
Зарегистрирован: Чт июн 19, 2014 12:22 pm
Благодарил (а): 6 раз
Поблагодарили: 5 раз

Re: Sound Direct Manager

Сообщение vazv71 » Пт июл 29, 2016 10:24 am

Aleks130699 писал(а):
vazv71 писал(а):Доработал sayhook - теперь отвечает юзеру только в той комнате где он есть. Исключения - только сообщения в чат с параметром -1 и общие сообщения с параметром 0. Все остальное что больше 1 - переопределяем. Вообще все красиво стало. А то надоедали диалоги детей с мжд т к меня в нем чатбот прикручен, они иногда развлекаются. Теперь красота :)
А не подскажите как вы сделали чатбот.А то тоже хотелось бы сделать, чтобы не только по шаблонам поведения работал.
Решение не моё, на форуме была ветка про подключение iiiBot, поищите...

По поводу sdm - по моему отследил глюк с вылетом программы - у меня она вылетает когда указывает вывод звука сразу в два канала, например в моем случае outputchannel 56 приводит к рандомному вылету. Сейчас поменял вывод звука на улицу только на один канал - вроде пока не вылетает второй день.

Может кому пригодиться...

И да, перешел на работы с sdm с файлового режима на клиент серверный. В этом случае если sdm вылетает - то просто пропадает звук, а при работе через командную строку падает цикл.
Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Sound Direct Manager

Сообщение Bagir » Пт авг 12, 2016 7:07 pm

Amarok писал(а):Вопрос к уважаемому Багиру: можно в sdm.ini указывать звуковую карту не только по номеру, но и по названию? Просто у меня звуковушка usb и при перезагрузке номер может стать другим; имя же не меняется.
Добавлю с задачи. В выходные постараюсь найти время и поработать с sdm. Сделать это не сложно, главное чтобы имя карты было написано буква в букву как видит его sdm.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Ответить