编辑文件 uas.xml,内容为:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">
<scenario>
<recv request="INVITE">
<action>
<ereg regexp="<(sip:.*)>" search_in="hdr" header="Contact:" check_it="true" assign_to="1,2"/>
<log message="1 = [$1]"/>
<log message="2 = [$2]"/>
</action>
</recv>
</scenario>
SIPp 版本: 3.6.1
os: Debian 12
ip 地址:192.168.31.151
启动:
sipp -sf uas.xml -i 192.168.31.151 -p 6666 -trace_logs
netstat -unlp | grep sipp ,udp 6666 端口已被 SIPp 侦听
找到一台同网段的 FreeSWITCH,运行下面的命令:
fs_cli -x 'originate sofia/internal/1234@192.168.31.151:6666 &echo'
ctrl-c 结束 SIPp
cat *.log
内容为:
1 = <sip:mod_sofia@192.168.31.151:5060>
2 = sip:mod_sofia@192.168.31.151:5060
我讲了什么,你 get 到了没有?
当然,这个例子不完整,但这不重要,重要的是要怎么思考,怎么跟踪问题,手册不会教你这些内容
顺便提下,"<" 是 "<",而 ">" 是 ">",xml 文件需要做这样的转义
布置一道作业题:如何把 INVITE 请求里面的 from-url 和 from-tag 解析出来,大有用处!
如果能收到 10 个赞,我就继续写