1、查看当前已注册用户
sofia status profile internal
sofia status profile internal reg
sofia status profile internal reg 1005
2、在系统中用软电话拨打另一用户
originate user/1000 9999
originate user/1000 9999 XML default
3、查看网关注册状态
sofia status
4、通过freeswitch直接外呼电话
originate sofia/gateway/gw1/xxxxxx &echo
5、FreeSWITCH
启动到后台的参数:
freeswitch -nc
6、FreeSWITCH在启动时默认会启用uPnP6、FreeSWITCH在启动时默认会启用uPnP(或NAT-PMP)如果你的路由器不支持该协议,这一步可能耗时较长,因而会影响启动速度。所以,如果你只是在内网测试并且像作者一样一天启动很多次的话,建议关掉这个选项。关于NAT的内容我们会在后面讲到
freeswitch –nonat
上面两个参数也可以组合来用:freeswitch –nc -nonat
7、看进程是否存在。
1)如果进程已经启动,下列命令能列出所有与FreeSWITCH相关的进程:
ps aux | grep freeswitch
2)看相关端口是否被占用。假设你使用默认的5060端口,则使用下述命令可以列出所有与5060端口相关的网
络连接:
netstat -an | grep 5060
或者,在Linux平台上,能直接得到FreeSWITCH的进程号(需要root权限):
netstat -anp | grep 5060
8、控制台快捷键
为了调试方便,FreeSWITCH还在conf/autoload_configs/switch.conf.xml中定义了一些控制台快捷键。可以
通过F1~F12这几个按键来使用它们(不过,在某些操作系统上,有些快捷键可能与操作系统相冲突,这时你就只
能直接输入这些命令或重新定义它们了),也可以修改配置文件加入比较常用的命令(修改完毕后记着运行
reloadxml命令使之生效),默认的配置如下:
<cli-keybindings>
<key name="1" value="help"/>
<key name="2" value="status"/>
<key name="3" value="show channels"/>
<key name="4" value="show calls"/>
<key name="5" value="sofia status"/>
<key name="6" value="reloadxml"/>
<key name="7" value="console loglevel 0"/>
<key name="8" value="console loglevel 7"/>
<key name="9" value="sofia status profile internal"/>
<key name="10" value="sofia profile internal siptrace on"/>
<key name="11" value="sofia profile internal siptrace off"/>
<key name="12" value="version"/>
</cli-keybindings>
踢掉注册上来的用户
sofia profile internal flush_inbound_reg 1007@192.168.1.101
sofia profile internal reg 1007
查看系统加载编码器
show codec 命令可以看到系统加载的编码器
控制台上实时看到SIP消息
freeswitch> sofia profile internal siptrace on
freeswitch> sofia profile external siptrace on**
tcpdump [2]是经典的抓包工具。比如下面的命令可以仅抓取5060端口上的SIP包:
tcpdump -nq -s 0 -A -vvv -i eth0 port 5060
其中,-n、-q表示不进行域名翻译及减少输出内容;-s 0表示不限制包长,即争取抓最大的长度;-A表示以
ASCII方式输出,这样用眼看起来比较直观;-v表示显示的详细程度,“v”越多则越详细;-i表示使用指定的网
卡;port 5060表示过滤器,这里我们只关心5060端口上的SIP包。
另外,可以使用-w将结果写入文件中,如下列命令将结果写入/tmp/dump.pcap文件中:
tcpdump -nq -s 0 -i eth0 -w /tmp/dump.pcap port 5060
当还需要分析RTP流时,可以将port 5060简单改成udp,这样就可以抓取所有的UDP包:
tcpdump -nq -s 0 -i eth0 -w /tmp/dump.pcap udp
如果你是在服务器上抓包,并想只抓某个用户的包,可以根据用户的IP地址来进行过滤
tcpdump -i eth0 -s 0 -A host 192.168.7.5 and port 65272
我们也需要抓取所有的RTP包进行分析。在FreeSWITCH中,默认的端口号范围是16384~32768,因此
我们可以使用如下命令抓包:
tcpdump -i eth0 -w /tmp/sip-rtp.pcap “udp and (port 5060 or port 5080 or portrange 16384-
32768)”
mod_callcenter命令集
手工将座席签入:callcenter_config agent set status 1005@default ‘Available’
将该座席的状态置为Logged Out:callcenter_config agent set status 1005@default ‘Logged Out’
列出当前所有的坐席:callcenter_config agent list
如果座席本身没有在配置文件中配置,也可以使用命令添加:callcenter_config agent add 1007@default callback
当然还需要用下列命令给它设置相关的参数,如contactcallcenter_config agent set contact 1007@default user/1007
当前的队列:callcenter_config queue list
列出当前的梯队:callcenter_config tier list
来源:CSDN
作者:尨奇奇
链接:https://blog.csdn.net/u012597310/article/details/104061010