Воспроизведение аудио файла с использованием sipp
Таким образом, используя такой синтаксис, как
../sipp -sn uac SERVER_IP -s DESTINATION_NUMBER -ap AUTH_PASSWORD -aa -m 1 -l 1 -d 10000
Я могу инициировать глоток. То, чего я хочу добиться, это после того, как вызываемый абонент выберет вызов, воспроизведет файл.wav и завершит вызов после завершения воспроизведения файла.
Я хочу добиться этого, используя аргументы командной строки. Кто-то делал это раньше?
2 ответа
Последняя версия SIPp (3.4) теперь поддерживает прямую потоковую передачу RTP из правильно закодированного файла WAV.
Вы захотите создать собственный файл сценария (используя -sd uac
возможность выбросить пример сценария UAC в качестве отправной точки) и добавить <action><exec rtp_stream="file.wav" /></action>
внутри <recv response="200"></recv>
Блок XML для запуска воспроизведения этого файла WAV через RTP при получении 200 OK.
http://sipp.sourceforge.net/doc/reference.html есть более подробная информация о настройке этого параметра (например, о циклах или о типах полезной нагрузки, отличных от PCMA).
(Я текущий сопровождающий SIPp.)
SIPp поддерживает возможность отправки потока предварительно записанных пакетов RTP через exec play_pcap_audio
директивы. (См. Встроенный uac_pcap
сценарий как модель для вашего сценария.) Отправляемые пакеты хранятся в файле в формате PCAP. Пакеты могут быть извлечены, например, из перехвата Wireshark тестового вызова.
$ sipp -sf custom_with_pcap_audio.xml SERVER_IP -s DESTINATION_NUMBER -ap AUTH_PASSWORD -aa -m 1 -l 1 -d 10000
Создавать custom_with_pcap_audio.xml
, Начни здесь:
$ sipp -sd uac_pcap > custom_with_pcap_audio.xml
затем отредактируйте сценарий так, чтобы он ссылался на ваш файл pcap (полученный с помощью одного из ранее связанных методов). Вам также нужно будет сделать задержку подходящей длины для вашей записи pcap (вместо 10000, приведенных в примере).