Asterisk. Команда BackgroundDetect.

BackgroundDetect() - Воспроизводит файл в фоновом режиме и выявляет разговор.

BackgroundDetect(имяфайла[,sil[,min[,max]]])

Аналогично Background(), но при этом пытается выявить голос. Во время воспроизведения файла выполняется отслеживание аудиосигналов во входящем потоке. Если период отсутствия тишины длится больше min миллисекунд, но еще меньше max миллисекунд и за ним следует пауза продолжительностью как минимум sil миллисекунд, воспроизведение звука прерывается и выполнение переходит в добавочный номер talk (разговор), если таковой доступен.
Если не заданы, параметры sil, min и max по умолчанию принимают значения 1000 мс, 100 мс и бесконечное количество соответственно.

Пример:

exten => 123,1,BackgroundDetect(soobshenie)
exten => 123,2,Playback(im-sorry)
exten => talk,1,Playback(menu)

 

 

См. также: Playback(), Background()