[Приложение] Sound Direct Manager
Модератор: immortal
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Еще по поводу клиентов. Есть интересный вариант. Прога, по указанию МД может стримить в wav файл. Остается только сделать возможным проигрывание wav файла в браузере клиента. Наподобие как сейчас можно кинуть страницу на нужны терминал. Тогда будет возможность отправлять звук не только на нужную колонку, но и на нужный терминал.
-
- Сообщения: 242
- Зарегистрирован: Вт мар 11, 2014 8:36 pm
- Откуда: Челябинск
- Благодарил (а): 107 раз
- Поблагодарили: 7 раз
Re: Sound Direct Manager
Сереж, а зачем такой изврат? Не проще ли пойти по моему пути? Я понимаю если есть возможность прокинуть провода от звуковухи по квартире/дому, но есть люди у кого как и у меня нет такой возможности, так не проще ли пойти по моей тропинке?Bagir писал(а):Еще по поводу клиентов. Есть интересный вариант. Прога, по указанию МД может стримить в wav файл. Остается только сделать возможным проигрывание wav файла в браузере клиента. Наподобие как сейчас можно кинуть страницу на нужны терминал. Тогда будет возможность отправлять звук не только на нужную колонку, но и на нужный терминал.
код sayHook:
СпойлерПоказать
Код: Выделить всё
/* Хук на функцию say() */
$level=$params['level'];
$ph=$params['ph'];
$atr=''; // параметры
$ipdev_1='192.168.0.6:8096';
$ipdev_2='192.168.0.14:8096';
switch ($level) {
case -1: // ничего не делать. Сообщение будет написано только в чате
return;
break;
case 0: // общие не тревожные сообщения ночью переадресуются на указанный канал с пониженной громкостью
if (gg('NightMode.status')){ $atr='-volumemessage:30 ';}
break;
case strlen($level)==1:
// одна цифра это номер канала
if($level==1){$ipdev=$ipdev_1;}
if($level==2){$ipdev=$ipdev_2;}
break;
/*
case 1:
// одна цифра это номер канала
$ipdev=$ipdev_1;
break;
case 2:
// одна цифра это номер канала
$ipdev=$ipdev_2;
break;
*/
default:
// ($level>=20) будет рассмотрен в модуле пуш сообщений. цифры 0-9 зарезервированы для групп
// громкость на максимум для тревожных сообщений. цифры 0-9 могут быть использованы для включения крикуна на время в секундах
if ($level>=30) { $atr='-volumemessage:100 '; }
// отправка СМС сообщений можно сделать тут, пока нет отдельного модуля, следящего за уровнем $level
// вторую цифру $level можно использовать для указания группы телефонных номеров
if ($level>=40) { $atr.='-volumemaster:100 '; /* общую громкость тоже на максимум */ }
}
// ******* Отправка задания принимающей программе *******
// *** Вариант передачи данных через командную строку
// Помните, что первый экземпляр sdm, который станет сервером приема сообщений, вы должны запустить сами!
//safe_exec(gg('SoundProgram').' '.$atr.$ph);
// *** Вариант передачи данных через TCP порт
// Ждать ответа от sdm не больше 1 секунды
$ctx = stream_context_create(array('http'=>array('timeout'=>1) ) );
// Отправка принимающей программе
$ans = trim(file_get_contents('http://'.$ipdev.'/'.$atr.urlencode($ph), 0, $ctx));
//echo($ans);
//echo($ipdev);
// Зарегистрировать ошибку, если ответ не получен
if ($ans!="ok") { registerError('sdm', 'No confirmation from the program'); }
- Рейтинг: 1.16%
Majordomo на Orange Pi Zero.
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Уже давно все собирался рассказать про этот вариант. sayHook позволяет отправить сообщения не обязательно в sdm. По заранее задуманному значению $level можно отправлять задачи куда угодно. Изначально я задумывал вариант с одним сервером и несколькими каналами его звуковой карты. А этот вариант показывает как можно раскидывать сообщения по разным компам, если в каждой комнате расположен свой мини ПК. Для получения ip адреса можно вообще обратиться к базе данных если у вас там зарегистрированы все терминалы. Более того, варианты можно легко комбинировать! Если позволяет расположение, то от одного такого мини ПК можно развести колонки в смежные комнаты. А sayHook будет знать что и куда отправлять. На какой ip и на какой канал. Я задумал 1-9 зон для мультирума. Ну как бы хватит в большинстве случаев. Конечно же можно легко внести свои изменения, если этого мало.
Проигрывание wav файла в браузере все же очень бы надо. Это решит задачу мультирума, если в комнате нет стационарной колонки оповещателя. Тот же будильник в терминале из мобильного телефона был бы очень клёвый. Да и если мы просто открываем страницу МД с мобильного устройства. Это позволит отправлять голосовые сообщения именно ему.
Проигрывание wav файла в браузере все же очень бы надо. Это решит задачу мультирума, если в комнате нет стационарной колонки оповещателя. Тот же будильник в терминале из мобильного телефона был бы очень клёвый. Да и если мы просто открываем страницу МД с мобильного устройства. Это позволит отправлять голосовые сообщения именно ему.
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Sound Direct Manager
Ну как там пробы на другом компе?
Еще заметил такую штуку может поможет,когда запускаешь саму прогу( проверял на любом компе с W10 и W7 ) там есть примеры, так вот
когда сразу нажимаешь "проверка звука" то говорит на передних (1 и 2) каналах, если потом прописать "-outputchannel:1 Проверка канала" то скажет на 1 канале,но если потом опять прописать "проверка звука" то оно почему то говорит на среднем канале системы,хотя он у меня на 5 канале, и если написать в скрипте say(timeNow()); или say(timeNow(),0); и даже say(timeNow(),5); то уже будет говорить на среднем канале до перезапуска проги, надеюсь объяснил понятно
Еще заметил такую штуку может поможет,когда запускаешь саму прогу( проверял на любом компе с W10 и W7 ) там есть примеры, так вот

Windows 10 + Raspberry Pi3 + ESP8266
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Тут такое дело получилось. Пришел я программу тестить, а там шашлык под водочку полным ходом. Говорят так случайно получилось. В общем до тестов мы не дотянули 
А сейчас работа заела. до 20 числа можно сказать живу в офисе. Потом свобода, и сразу займусь прогой.
Собранные данные очень важны! И за них огромное спасибо. В свободную минутку я еще почитал про используемую библиотеку. Были похожие темы, так что значит дым не без огня.
Прогу эту я точно не брошу. Пользуюсь ей сам. Уже прокинул провода и настроил колонки в разных комнатах. Так что пока меритесь с трудностями. Допилим. Остается только найти подопытный комп с таким же поведением. После 20 числа второй поход к приятелю на тест
И в добавок у меня в доступе появился еще один зверёнышь win7 64 с многоканальной картой. Буду пробовать и на нем тоже.

А сейчас работа заела. до 20 числа можно сказать живу в офисе. Потом свобода, и сразу займусь прогой.
Собранные данные очень важны! И за них огромное спасибо. В свободную минутку я еще почитал про используемую библиотеку. Были похожие темы, так что значит дым не без огня.
Прогу эту я точно не брошу. Пользуюсь ей сам. Уже прокинул провода и настроил колонки в разных комнатах. Так что пока меритесь с трудностями. Допилим. Остается только найти подопытный комп с таким же поведением. После 20 числа второй поход к приятелю на тест

И в добавок у меня в доступе появился еще один зверёнышь win7 64 с многоканальной картой. Буду пробовать и на нем тоже.
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Sound Direct Manager
могу дать доступ по тайм виверу к моему компу если надо
и еще один момент у меня почему то говорит время после 20-00 до 23
и еще один момент у меня почему то говорит время после 20-00 до 23
Windows 10 + Raspberry Pi3 + ESP8266
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
если на моих двух подопытных таких же симптомов не появится, то можно будет попробовать и с Тимой. Просто чтобы был толк, надо еще сам язык vb6 ставить. А готовый exe вы и сами легко проверите.
На счет времени и ночных сообщений. Всем этим рулит скрипт, который смотрит на свойство ночного режима. sdm просто получает задачи на каком канале проигрывать и с какой громкостью.
Надо проверить правильно ли устанавливается свойство ночного режима в МД. По задумке, сообщения с нулем или без указания канала, днем должны звучать во всех колонках. А ночью только в указанной с пониженной громкостью.
На счет времени и ночных сообщений. Всем этим рулит скрипт, который смотрит на свойство ночного режима. sdm просто получает задачи на каком канале проигрывать и с какой громкостью.
Надо проверить правильно ли устанавливается свойство ночного режима в МД. По задумке, сообщения с нулем или без указания канала, днем должны звучать во всех колонках. А ночью только в указанной с пониженной громкостью.
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Sound Direct Manager
наверное Вы правы из-за того что сообщения с нулём и без не работают она и говорит днем и ночью
а что надо что б язык vb6 поставить это надо какую то прогу , какую, просто из языков я только php и html знаю и то по шпаргалкам

а что надо что б язык vb6 поставить это надо какую то прогу , какую, просто из языков я только php и html знаю и то по шпаргалкам

Windows 10 + Raspberry Pi3 + ESP8266
- Bagir
- Сообщения: 1615
- Зарегистрирован: Вт сен 17, 2013 6:46 pm
- Откуда: Ярославская область город Углич
- Благодарил (а): 212 раз
- Поблагодарили: 375 раз
Re: Sound Direct Manager
Да, vb6 это такой же дистрибутив для установки как офис например. Просто ставится и все. Если уж не найду такой комп, то поставим.
Заберемся, со вторника я почти полностью свободен.
Заберемся, со вторника я почти полностью свободен.
-
- Сообщения: 91
- Зарегистрирован: Ср июл 09, 2014 1:00 pm
- Благодарил (а): 12 раз
- Поблагодарили: 0
Re: Sound Direct Manager
Bagir, если я хочу разговаривать с Алисой по смартфону, я в нужную тему попал ?
Просто я пока не очень понимаю как все работает
Вот что хочется.....
Создать несколько пользователей, можно с разными уровнями доступа.... Для определения пользователя использовать привязанный внутренний ай пи или номер телефона, если это возможно. Далее создаем различные правила.... Например я говорю Алисе команду "Привет", она определяет какой пользователь ей сказал и какую команду, проверяет уровень доступа к этой команде.Если уровень доступа позволяет , то выполняет эту команду. В моем примере отвечает "привет <имя пользователя>"
В моем понимании необходимо добиться того чтоб звуковые команды воспринимались и записывались в некий текстовый вид. Вот для этого думаю и нужно использовать sound direct manager. Понимаю , что это все очень сложно... Но для начала , чтобы Алиса понимала речь нужно использовать sound direct manager или есть другие более предпочтительные варианты ?
Просто я пока не очень понимаю как все работает

Создать несколько пользователей, можно с разными уровнями доступа.... Для определения пользователя использовать привязанный внутренний ай пи или номер телефона, если это возможно. Далее создаем различные правила.... Например я говорю Алисе команду "Привет", она определяет какой пользователь ей сказал и какую команду, проверяет уровень доступа к этой команде.Если уровень доступа позволяет , то выполняет эту команду. В моем примере отвечает "привет <имя пользователя>"
В моем понимании необходимо добиться того чтоб звуковые команды воспринимались и записывались в некий текстовый вид. Вот для этого думаю и нужно использовать sound direct manager. Понимаю , что это все очень сложно... Но для начала , чтобы Алиса понимала речь нужно использовать sound direct manager или есть другие более предпочтительные варианты ?