Страница 16 из 23

Re: Sound Direct Manager

Добавлено: Вс май 15, 2016 4:27 pm
Amarok
Bagir писал(а):Так с голосовым управлением вроде как всё хорошо уже. Я давно пользуюсь. Вполне приемлемо работает. Постепенно добавляю в шаблоны поведения новые команды. Вот только кодовое слово, да, дело табак. Пока без вариантов. Может чего еще и попадется под руку.
Дык... Оно ж от инета зависит(

Re: Sound Direct Manager

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

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

Собрал на улице вокруг дома 4ре вот такие всепогодные колонки - может кому идея пригодится кстати... Рубят что пипец :) , из разряда дешево-сердито...

Re: Sound Direct Manager

Добавлено: Сб июн 18, 2016 11:03 am
vazv71
Забыл добавить, а глюк с громкостью в режиме 3d на все каналы играет гораздо тише, нежели просто сообщение в конкретный канал отправлять, теоретически поправится?
Или тут без вариантов?

upd.
Отправляю мпз на проигрывание через -playmusic , начинает играть тихо, зато потом если послать сообщение или во все каналы или в этот - то звук чуть чуть повышается пока сообщение проговаривается, а после окончания сообщения врубается на полную громкость. При запуске на проигрывание нового мп3 файла ситуация такая-же - тихо играет, пока не пошлешь сообщение.

Re: Sound Direct Manager

Добавлено: Вс июн 19, 2016 10:58 pm
vazv71
за выхи маленько поколдовал с мультирумом через сдм, в общем у меня это реализовано вкратце так. Может кому пригодиться.

домашние у меня все андроиды (звучит то как ;) поэтому с телефонами не расстаются. Соответственно имеем ходячие вайфай метки. На телефонах стоит мажордроид. В системе прописаны 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 для индивидуальных сообщений от системы.

Re: Sound Direct Manager

Добавлено: Вс июн 19, 2016 11:36 pm
vazv71
Доработал 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);

Re: Sound Direct Manager

Добавлено: Пн июн 20, 2016 8:11 pm
vazv71
Валится sdm раз в сутки примерно... :(

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

шо делать то товарищи?

Re: Sound Direct Manager

Добавлено: Сб июн 25, 2016 10:21 am
Amarok
Вопрос к уважаемому Багиру: можно в sdm.ini указывать звуковую карту не только по номеру, но и по названию? Просто у меня звуковушка usb и при перезагрузке номер может стать другим; имя же не меняется.

Re: Sound Direct Manager

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

Re: Sound Direct Manager

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

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

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

И да, перешел на работы с sdm с файлового режима на клиент серверный. В этом случае если sdm вылетает - то просто пропадает звук, а при работе через командную строку падает цикл.

Re: Sound Direct Manager

Добавлено: Пт авг 12, 2016 7:07 pm
Bagir
Amarok писал(а):Вопрос к уважаемому Багиру: можно в sdm.ini указывать звуковую карту не только по номеру, но и по названию? Просто у меня звуковушка usb и при перезагрузке номер может стать другим; имя же не меняется.
Добавлю с задачи. В выходные постараюсь найти время и поработать с sdm. Сделать это не сложно, главное чтобы имя карты было написано буква в букву как видит его sdm.