Не удается отправить RTP с помощью инструмента SIPp

Я пытаюсь воспроизвести захваченный файл pcap с помощью sipp следующим образом:

В отправке.xml

...

<recv response="200" rrs="true">
<action>
<ereg regexp="(.*)" search_in="hdr" header="To:" assign_to="TO_REQUEST"/>
</action>
</recv>

<send >
<![CDATA[
ACK [next_url] SIP/2.0
To: [$TO_REQUEST]
From: [$FROM_REQUEST]
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
Call-ID: [call_id]
CSeq: [last_cseq_number] ACK
Contact: <sip:[local_ip]:[local_port]> 
[routes]
Max-Forwards: 70
Subject: Performance Test
Content-Length: 0
]]>
</send>

<nop>
<action>
<exec play_pcap_audio="pcap/g711a.pcap"/>
</action>
</nop>

...

Тем не менее, я всегда получаю ту же ошибку: extract_rtp_remote_addr: IP-адрес не найден в теле сообщения SDP.

Я пытался протестировать другие файлы *.pcap и *.raw и редактировать свой скрипт, но все равно не могу. Когда я отправляю только сигнал, но не RTP, вызов успешен.

Кто-нибудь может помочь мне отправить RTP по SIPp? Заранее спасибо!

2 ответа

Я помню, у меня были похожие проблемы с этим в какой-то момент из-за того, что мой.pcap был не очень "чистым".

Вы уверены, что pcap содержит только пакеты RTP и ничего больше?

Для рабочего примера pcap, воспроизводимого sipp, вы можете проверить проект webrtc-test, а более конкретно: .pcap и соответствующий sipp xml

Также обратите внимание, что sipp обычно воспроизводит только одно направление носителя RTP, поэтому лучше убедиться, что носитель течет в обоих направлениях.

Надеюсь это поможет.

С наилучшими пожеланиями, Антонис Цакиридис

Это может быть связано с SDP в вашем INVITE. extract_rtp_remote_addr будет искать IP-адрес для отправки RTP.

Убедитесь, что ваш INVITE в XML имеет правильный IP-адрес в строке c.

Другие вопросы по тегам