Страница 1 из 1
Фоновая музыка во время Playback
Добавлено: 05 дек 2017, 13:02
El_Vago
Добрый день. Есть самый простенький контекст, на который человек попадает, если хочет прослушать информацию, вида:
Код: Выделить всё
[info]
exten => s,1,Answer()
exten => s,n,Wait(2)
exten => s,n,Playback(info1)
exten => s,n,Playback(info2)
exten => s,n,Playback(info3)
exten => s,n,HangUp()
Возможно ли сделать так, чтобы вместе с Playbackами запустить фоновую музыку? Сделать сразу музыкальный файл с фоном не вариант. Звуковые файлы меняются со скоростью фантазии менеджеров. Заранее спасибо за советы.
Re: Фоновая музыка во время Playback
Добавлено: 05 дек 2017, 14:40
gosha
возможно.
ChanSpy ?
Re: Фоновая музыка во время Playback
Добавлено: 05 дек 2017, 14:46
El_Vago
А он разве может подключаться до Dial или MeetMe?
Re: Фоновая музыка во время Playback
Добавлено: 05 дек 2017, 15:53
ded
А попробовать и убедиться?
Re: Фоновая музыка во время Playback
Добавлено: 06 дек 2017, 06:53
virus_net
еще вариант:
никто не мешает наложить музыку на информацию и проиграть одним файлом
P.S. если бы chanspy не умел бы подключаться к каналам, то он был бы бессмысленен.
Re: Фоновая музыка во время Playback
Добавлено: 06 дек 2017, 07:38
El_Vago
С chanspy все получилось, но когда усложнили конструкцию до
Код: Выделить всё
[info]
exten => s,1,Answer()
exten => s,n,Wait(2)
exten => s,n,Set(filename=${STRFTIME(${EPOCH},,%Y%m%d%H%M)}-${CALLERID(number)}$
exten => s,n,MixMonitor(/data/input/info/${filename}.gsm,ba)
exten => s,n,Playback(info1)
exten => s,n,WaitForNoise(310,1)
exten => s,n,(WaitForSilence(1000)
exten => s,n,Playback(info2)
exten => s,n,WaitForNoise(310,1)
exten => s,n,WaitForSilence(1000)
exten => s,n,Playback(info3)
exten => s,n,HangUp()
Фон от chanspy слышно только при Playback, при ожидании ответа человека тишина. Надеюсь, что это я сделал что-то не так, а не невозможно такое осуществить.
Код: Выделить всё
[spy]
exten => s,1,ChanSpy(SIP/221,v(-4)B)
exten => s,n,Hangup
[spy_music]
exten => 221,1,Answer
exten => 221,n,Set(VOLUME(TX)=-3)
exten => 221,n,Set(ROW_COUNTER=0)
exten => 221,n,While($[${ROW_COUNTER} < 100])
exten => 221,n,Playback(/var/lib/asterisk/music/light)
exten => 221,n,Set(ROW_COUNTER=$[ ${ROW_COUNTER} + 1 ])
exten => 221,n,EndWhile()
exten => 221,n,Hangup
Re: Фоновая музыка во время Playback
Добавлено: 29 июл 2019, 11:39
dmiver
Приветствую всех присутствующих!, возникла похожая проблема. хочу во время всего разговора воспроизводить фоном какой-нибудь шум. Соответственно есть небольшой контекст, где внутри EAGI скрипта слушаются реплики абонента и с помощью Playback() проигрываются аудиофайлы.
Код: Выделить всё
[test]
exten => 1,1,Set(fname=${UNIQUEID})
exten => 1,n,MixMonitor(/records/${fname}.wav)
exten => 1,n,EAGI(<path_to_script>)
Прочитал, что фон на весь разговор можно наложить через ChanSpy(). Дописал следующее:
Код: Выделить всё
[test]
exten => 1,1,originate(Local/1@noise,app,playback,<path_to_audio>)
exten => 1,n,Set(fname=${UNIQUEID})
exten => 1,n,MixMonitor(/records/${fname}.wav)
exten => 1,n,EAGI(<path_to_script>)
[noise]
exten => 1,1,Answer()
exten => 1,n,ChanSpy(SIP/<channel>, qsW)
В итоге фоновый шум слышен только тогда, когда в EAGI скрипте выполняется Playback(), то есть во время трансляции аудио. Во время ожидания ответа абонента тишина. Можете подсказать решение, как транслировать фоном аудио во время всего выполнения скрипта?