SIP サーバー (Restcomm) への SIPP を使用した負荷テストを作成したいと考えています。
これは私の sipp スクリプトです。正常に動作しています... 通話は正常に行われ、DTFM が再生されています
数字 1 は 1 回受信できますが、2 回受信することはできません... 2 番目の「再生」で異なる数字を変更すると、うまく機能しますが、両方が同じ数字の場合、最初の数字しか受信できません。
それはSIPPバグですか?または、スクリプトに問題がありますか?
問題はここにあると思います
<exec play_pcap_audio="pcap/dtmf_2833_1.pcap" />
それが私の完全なスクリプトです
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">
<scenario name="UAC with media">
<send retrans="500">
<![CDATA[
INVITE sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: sipp <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
To: sut <sip:[field0]@[remote_ip]:[remote_port]>
Call-ID: [call_id]
CSeq: 1 INVITE
Contact: sip:[field1]@[local_ip]:[local_port]
Max-Forwards: 70
Subject: Performance Test
Content-Type: application/sdp
Content-Length: [len]
v=0
o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
s=-
c=IN IP[local_ip_type] [local_port]
t=0 0
m=audio [auto_media_port] RTP/AVP 96 0 9 8 101 13
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-1
]]>
</send>
<recv response="100" optional="true">
</recv>
<recv response="100" optional="true">
</recv>
<recv response="180" optional="true">
</recv>
<!-- By adding rrs="true" (Record Route Sets), the route sets -->
<!-- are saved and used for following messages sent. Useful to test -->
<!-- against stateful SIP proxies/B2BUAs. -->
<recv response="200" rtd="true" crlf="true">
</recv>
<!-- Packet lost can be simulated in any send/recv message by -->
<!-- by adding the 'lost = "10"'. Value can be [1-100] percent. -->
<send>
<![CDATA[
ACK sip:[field0]@[remote_ip]:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: sipp <sip:[field1]@[local_ip]:[local_port]>;tag=[call_number]
To: sut <sip:[field0]@[remote_ip]:[remote_port]>[peer_tag_param]
Call-ID: [call_id]
CSeq: 1 ACK
Contact: sip:sipp@[local_ip]:[local_port]
Max-Forwards: 70
Subject: Performance Test
Content-Length: 0
]]>
</send>
<pause milliseconds="1000" />
<nop>
<action>
<exec play_pcap_audio="pcap/dtmf_2833_1.pcap" />
</action>
</nop>
<pause milliseconds="100" />
<nop>
<action>
<!-- <exec play_pcap_audio="pcap/dtmf_2833_5.pcap"/> -->
<exec rtp_stream="resume" />
<exec play_pcap_audio="pcap/dtmf_2833_1.pcap" />
</action>
</nop>
<pause milliseconds="100" />
<!-- definition of the response time repartition table (unit is ms) -->
<ResponseTimeRepartition value="100, 500,1000,3000,4000,5000,6000" />
<!-- definition of the call length repartition table (unit is ms) -->
<CallLengthRepartition value="500,1000,2500,5000,6000,7000,9000,10000" />
アップデート:
レストコム側の追加
このページには次の URL でアクセスできます: http://192.168.148.1:18080/test/index.jsp
オーディオを聞くことができます (テストするための無限ループ)
1) SIP クライアント (JITSI) でのテスト: 1,1 を押して 2 回聞くことができます 2) SIPP スクリプトでのテスト: 1 回しか聞こえません
<%@ page language="java" contentType="text/xml; charset=ISO-8859-1"
import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
if (request.getParameter("reply")!=null){
System.out.println("=========== REPLY ==============="+request.getParameter("Digits"));
}else{
System.out.println("=======================================================");
System.out.println("=========== NEW CALL =================");
System.out.println("=======================================================");
}
%>
<Response>
<Gather action="index.jsp?reply=1" method="GET" numDigits="1" timeout="20">
<Play>http://192.168.148.1:8080/restcomm/audio/demo-prompt.wav</Play>
</Gather>
</Response>