freeswitch自带黑名单模块“mod_blacklist”,此文只是对该模块简单使用的实例。
最近接到客户投诉有大量骚扰电话,而从源头查不太容易,因此想到的笨方法是将投诉人加入到黑名单。以下是mod_blacklist的使用例子:
1、安装mod_blacklist ,进入freeswitch源代码目录
make mod_blacklist-install
2、配置mod_blacklist
vim conf/autoload_configs/blacklist.conf.xml
加入一个黑名单:
blacklist check
blacklist del
blacklist reload #重新从配置文件加载
blacklist save#手段add、del后需要执行save才能生效
blacklist help
黑名单名称为:blocked 对应配置文件为:$${conf_dir}/blacklists/blocked.list
加载mod_blacklist 模块
load mod_blacklist
3、创建黑名单目录和list
mkdir -p conf/blacklists
touch conf/blacklists/blocked.list
chmod +w conf/blacklists/blocked.list #给fs写权限
4、使用mod_blacklist
假如呼叫请求走default拨号计划,则修改conf/dialplan/default.xml,在context里加入一个extension,当然加在最开始。
如上,你可以使用多个“黑名单”,可以针对不同黑名单做不同操作,此处是直接hangup
5、向黑名单"blocked"加入号码
mod_blacklist操作命令如下:
freeswitch@internal> blacklist help
blacklist add
加人:
blacklist add blocked 13800138000 #向blocked中加入13800138000
blacklist save blocked #保存
blacklist check blocked 13800138000 #检测13800138000是否在“blocked”中