FreeSWITCH黑名单功能设置
功能描述:对呼叫的号码进行过滤
步骤:
1、编译mod_blacklist 模块:进入源目录/usr/local/src/freeswitch --> make mod_blacklist-install
2、加载mod_blacklist模块: fs_cli --> reload mod_blacklist 或 modules.conf.xml 添加 --> <load module="mod_blacklist"/> 重启FS
3、设置mod_blacklist模块:默认blacklist.conf.xml 如下:
<configuration name="mod_blacklist.conf" description="Blacklist module">
<lists>
<list name="example" filename="/usr/local/freeswitch/blacklists/blocked.list"/>
</lists>
</configuration>
在/usr/local/freeswitch/blacklists 目录下创建blocked.list ,输入黑名单号码内容,一行一个,保存,修改该文件的用户组以与FS相同,权限可读写。
4、设置拨号规则:
1> 如需呼出黑名单限制 ,在default.xml 中最前面增加如下规则
<extension name="blacklist_check">
<condition field="${blacklist(check example ${destination_number})}" expression="^true$">
<action application="answer" data=""/>
<action application="playback" data="$${base_dir}/sounds/music/city_of_sky.wav"/>
<action application="hungup" data=""/>
</condition>
</extension>
2> 如需呼入黑名单限制,在public.xml 中最前面增加如下规则
<extension name="blacklist_check">
<condition field="${blacklist(check example ${caller_id_number})}" expression="^true$">
<action application="answer" data=""/>
<action application="playback" data="$${base_dir}/sounds/music/Speak.wav"/>
<action application="hangup" data=""/>
</condition>
</extension>
注:如上的呼入呼出黑名单都放在list name= example 的黑名单中,也可以将呼入呼出拆分为单独的文件使用,配置仅需再拨号规则中修改对应的listname值即可。
5、Blacklist API:
>blacklist help
blacklist check <listname> <item> // 检查内存中黑名单列表是否有item,有返回true,没有则返回false
blacklist add <listname> <item> // 在内存 listname 对应的列表中增加 item 项
blacklist del <listname> <item> // 在内存 listname 对应的列表中删除 item 项
blacklist save <listname> // 将内存 listname 中的所有 item 写入对应的文件中,如 /usr/local/freeswitch/blacklists/blocked.list
blacklist reload // 将文件中的数据更新到 内存中
blacklist help // 显示该模块所有的API
FreeSWITCH黑名单功能设置的更多相关文章
- laravel 黑名单功能实现
创建黑名单表迁移:php artisan make:model Models/BlackFeeds -m (生成模型和迁移文件) 迁移文件中创建如下字段: public function up( ...
- [android] 手机卫士黑名单功能(列表展示)
先把要拦截的电话号码保存到数据库中,拦截模式用个字段区分,1 电话拦截,2 短信拦截,3全部拦截 新建Activity类CallSmsSafeActivity.java 新建布局文件activity_ ...
- [android] 手机卫士黑名单功能(短信拦截)
前面我们把需要拦截的手机号都存储和展示出来了,接下来是使用广播接收者拦截短信了,这个广播接收者需要和一个服务绑定,服务开启的时候,接收者存在,服务停掉时,接收者关闭 在service包下定义一个类Ca ...
- 再谈缓存和Redis
自从上次分享<Redis到底该如何利用?>已经有1年多了,这1年经历了不少.从码了我们网站的第一行开始到现在,我们的缓存模块也不断在升级,这之中确实略有心得,最近也有朋友探讨缓存,觉得可以 ...
- Mina架构与优化指南
MINA架构 这里,我借用了一张Trustin Lee在Asia 2006的ppt里面的图片来介绍MINA的架构. Remote Peer就是客户端,而下方的框是MINA的主要结构,各个框之间的箭头代 ...
- Jexus-5.6.3使用详解、Jexus Web Server配置
一.Jexus Web Server配置 在 jexus 的工作文件夹中(一般是“/usr/jexus”)有一个基本的配置文件,文件名是“jws.conf”. jws.conf 中至少有 Site ...
- Jexus-5.6.3使用详解
一.Jexus Web Server配置 在 jexus 的工作文件夹中(一般是"/usr/jexus")有一个基本的配置文件,文件名是"jws.conf".j ...
- 基于MINA构建简单高性能的NIO应用
mina是非常好的C/S架构的java服务器,这里转了一篇关于它的使用感受. 前言MINA是Trustin Lee最新制作的Java通讯框架.通讯框架的主要作用是封装底层IO操作,提供高级的操作API ...
- jexus 配置 学习
http://www.linuxdot.net/ 1.禁止或允许某IP或IP段访问网站 A.只允许某些IP地址访问网站(白名单功能) 默认情况下,允许所有IP地址访问.如果手工设置IP地址白名单, 那 ...
随机推荐
- Git与GitHub学习笔记(七)Windows 配置Github ssh key
前言 SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell.SSH登录是需要用户 ...
- [Asp.Net MVC4]验证用户登录实现
最近我们要做一个仿sina的微博,碰巧的是我最近在学习mvc,就想用mvc技术实现这个项目. 既然是微博,那不用想也应该知道肯定要有用户登陆,但是和常规的asp.net登陆又不一样,以下是我一下午+一 ...
- 064、Weave网络结构分析(2019-04-04 周四)
参考https://www.cnblogs.com/CloudMan6/p/7482035.html Weave网络使用之前需要执行 eval $(weave env) ,其作用是将后续的doc ...
- 简单备份mysql数据库
对于数据量不大的业务场景,可以每天做全量备份. 实现方式:编写备份数据库脚本,然后在crontab中每天定时执行脚本进行备份. 备份脚本示例: #!/bin/bash #Author: zhangsa ...
- 二.LinkedList原理及实现学习总结
一.LinkedList实现原理概述 LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同.LinkedList 是基于链表实现的(通过名字也能 ...
- 14.Scrapy Shell
Scrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码,也可以用来测试XPath或CSS表达式,查看他们的工作方式,方便我们爬取的网页中提取的数据. 如果安装了 IPyth ...
- Emmet 记录
Refs 熟悉 css 有优势,emmet 的的缩写语法特别像 css 选择器. =>参考本博笔记 # id > 直接子元素 child . class + Sibling 同级相邻的一个 ...
- Kafka思维导图
- Spark思维导图之性能优化
- 如何解压RPM包
有时我们需要RPM包中的某个文件,如何解压RPM包呢? RPM包括是使用cpio格式打包的,因此可以先转成cpio然后解压,如下所示: rpm2cpio xxx.rpm | cpio -div 解压了 ...