FreeSWITCH dialplan/default.xml 之释疑
准备花时间好好研究下,一直都是一知半解
sip_looped_call
通俗地说,就是自己呼叫自己
查文档,是这样讲的:如果调用已通过 ACL 以外的方式进行身份验证,并且当前请求 IP/port 与配置文件 IP/port 匹配,那么就为 true
实际测试,如果呼叫自己的 5060 端口,那么 sip_looped_call 就为 true,写了一段路由,同时仿到 default.xml 和 public.xml 的最前面:
<extension name="test" continue="true">
<condition>
<action application="log" data="ERR sip_looped_call = ${sip_looped_call}"/>
</condition>
</extension>
日志如下:
Dialplan: sofia/internal/0000000000@192.168.99.206 parsing [public->test] continue=true
Dialplan: sofia/internal/0000000000@192.168.99.206 Absolute Condition [test]
Dialplan: sofia/internal/0000000000@192.168.99.206 Action log(ERR sip_looped_call = ${sip_looped_call})
EXECUTE [depth=0] sofia/internal/0000000000@192.168.99.206 log(ERR sip_looped_call = true)
发现没有挑战,context 走到了 public
park vs unpark
往泊车方面去想,很容易想明白。有二个模块:mod_fifo 和 mod_valet_parking
echo vs 'delay_echo 5000'
这个对开局太有用了
不过本人有一次吃瘪的经历,某网关呼叫 FreeSWITCH,dialplan 配置为 echo,信令正常,但听到的是静音,其实是网关自带了回声消除功能。后来终于觉醒了,换成 delay_echo,网关一般只能消除 128 ms(有的只能 32 或者 64),配置为 delay_echo 300 就能听到了
play_fsv vs record_fsv
mod_fsv 里面的二个 app,之所以用 mod_fsv 而不用 mod_av,估计是效率方面的考虑(本人对视频不太熟)
ringback_180 vs ringback_183_uk_ring vs ringback...
设置 ringback、transfer_ringback 等变量,送到的端点是 loopback,以及 ignore_early_media 对呼出的影响
个人感觉这个有点炫技
conference
conference,众所周知,不再赘述
mad_boss_intercom
摇人入会,向 sales 组里面所有的成员都发 INVITE
fax
这个不讲了,本人很熟,但现在几乎没人用传真了
esf_page_group
rtp_multicast_page,广播,Yealink/GrandStream 等话机支持
Local_Extension
呼叫本地分机,要留意 hangup_after_bridge、continue_on_fail 等通道变量的使用
含义很丰富,建议仔细研究和多做测试
留意 global-intercept/group-intercept/intercept-ext 跟 Local_Extension 之间的关联性
留意 bind_meta_app 跟 features.xml 之间的联系
个人感觉这个 extension 是最复杂的,需要花大量时间做研究(实现了 IPPBX 的很多功能)
rtp_secure_media
媒体加密
本人专门做过笔记
group_call
组呼
snom、skinny
不讲,很少人用
ivr
不讲,查资料可得
show_info
太简单,不讲
acknowledge_call
就是回 SIP 100 trying,没别的,估计很少有人用他
eavesdrop
监听
call_return
待研究
unroll_loops
待研究
ruri
待研究
refer
呼叫后转,待研究
add-group
待研究
set open=true
待研究,没查到这个通道变量的含义
enum
国内没人用,不讲
<extension name="tod_example" continue="true">
<condition field="${default_password}" expression="^1234$" break="never">
<action application="log" data="CRIT WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING "/>
<action application="log" data="CRIT Open $${conf_dir}/vars.xml and change the default_password."/>
<action application="log" data="CRIT Once changed type 'reloadxml' at the console."/>
<action application="log" data="CRIT WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING "/>
<action application="sleep" data="10000"/>
</condition>
continue=true 和 break=never,这二者的作用有点分不清,回头研究
数了数,800 多行,包含的内容非常多
未完待续
相关文章:
FreeSWITCH dialplan/default.xml 之释疑
准备花时间好好研究下,一直都是一知半解 sip_looped_call 通俗地说,就是自己呼叫自己 查文档,是这样讲的:如果调用已通过 ACL 以外的方式进行身份验证,并且当前请求 IP/port 与配置文件 IP/port 匹配,那…...
lambda用法及其原理
目录 lambda形式lambda用法1.sort降序2.swap3.捕捉列表 习题解题 lambda形式 [capture-list](parameters)->return type{function boby}[capture-list]:[捕捉列表]用于捕捉函数外的参数,可以为空,但不能省略;(parameters) &am…...
Go Ebiten随机迷宫生成示例
引言 迷宫生成是计算机科学中一个经典的问题,常用于算法教学和游戏开发。本文将介绍如何使用 Go 语言和 Ebiten 游戏引擎实现一个基于深度优先搜索(DFS)的随机迷宫生成算法,并通过可视化的方式展示迷宫的生成过程。 技术栈 Go …...
前端学习DAY31(子元素溢出父元素)
.box1{width: 200px;height: 200px;background-color: chocolate;} 子元素是在父元素的内容区中排列的,如果子元素的大小超过了父元素,则子元素会从 父元素中溢出,使用overflow属性设置父元素如何处理溢出的子元素 可选值:visible…...
『SQLite』表的创建、修改和删除
本节摘要:主要讲述SQLite中创建、删除、修改表等操作。 创建表 CREATE TABLE 语句来创建表。 修改表 ALTER TABLE 语句来修改表名称、已有表字段,或者新增字段。 删除表 DROP TABLE 语句用来删除表. 注意: 上述内容详细讲解见文章&#…...
可持久化数据结构-线段树(主席树)
可持久化数据结构-线段树(主席树) (与可持久化字典树差不多) 概念:可持久化线段树是基本线段树的一个简单拓展, 是使用函数式编程思想的线段树; 作用: 可以存下来数据结构的所有历史版本 特点: 拓扑结构…...
如何利用PHP爬虫按关键字搜索淘宝商品
在当今的电商时代,获取淘宝商品信息对于市场研究、价格监控和竞争分析等方面具有重要意义。手动搜索和整理大量商品信息不仅耗时耗力,而且容易出错。幸运的是,PHP爬虫技术为我们提供了一种高效、自动化的方式来按关键字搜索淘宝商品。本文将详…...
GitHub - riscv-software-src/riscv-isa-sim: Spike, a RISC-V ISA Simulator
GitHub - riscv-software-src/riscv-isa-sim: Spike, a RISC-V ISA Simulator 操作手册 $ apt-get install device-tree-compiler libboost-regex-dev libboost-system-dev $ mkdir build $ cd build $ ../configure --prefix$RISCV $ make $ [sudo] make install 具体安装 …...
ubuntu开机启动服务
需求背景: 需要监控日志,每次都是手动启动 nohup ./prometheus >/dev/null & nohub ./node_exporter >/dev/null & 需求目标: 重启后系统自动启动服务...
电子电气架构 --- 设计车载充电机的关键考虑因素
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 简单,单纯,喜欢独处,独来独往,不易合同频过着接地气的生活,除了生存温饱问题之外,没有什么过多的欲望,表面看起来很高冷,内心热情,如果你身…...
2025_0105_生活记录
3号去内蒙看了流星雨。还记得上次看流星的时间是2018年,也是冬天,大家在雁栖湖校区的操场上仰望星空。那个时候幸运的看到了一颗流星,便迅速地在心里许愿。这次看到了三颗流星,我也许了愿,希望实现。 24年走过了十多个…...
电池管理系统(BMS)架构详细解析:原理与器件选型指南
BMS(电池管理系统)架构详细讲解 从你提供的BMS(Battery Management System)架构图来看,主要涉及到电池监控模块、通信模块、功率控制模块等部分。下面我将详细讲解该架构的各个功能模块及其工作原理。 1. 电池管理核…...
用JAVA编写一个简单的小游戏
用Java语言编写一个简单的小游戏。这里是一个非常基础的猜数字小游戏的代码示例。在这个游戏中,程序会随机选择一个1到100之间的整数,玩家需要猜测这个数字是什么。每次猜测后,程序会告诉玩家他们猜的数字是太高了、太低了还是正确。 impor…...
【SpringSecurity】二、自定义页面前后端分离
文章目录 1、用户认证流程AuthenticationSuccessHandler AuthenticationFailureHandlerSecurityFilterChain配置用户认证信息 2、会话并发处理2.1、实现处理器接口2.2、SecurityFilterChain配置 1、用户认证流程 AuthenticationSuccessHandler AuthenticationFailureHandler …...
小兔鲜儿:头部区域的logo,导航,搜索,购物车
头部:logo ,导航,搜索,购物车 头部总体布局: 设置好上下外边距以及总体高度, flex布局让总体一行排列 logo: logo考虑搜索引擎优化,所以要使用 h1中包裹 a 标签,a 里边写内容(到时候…...
什么是VLAN?
VLAN(Virtual Local Area Network,虚拟局域网)是一种将物理局域网划分成多个逻辑上独立的虚拟网络的技术。VLAN不依赖于设备的物理位置,而是通过逻辑划分,将局域网内的设备虚拟地组织到同一组。这种技术允许网络管理员…...
WPS计算机二级•数据查找分析
听说这里是目录哦 通配符🌌问号(?)星号(*)波形符(~) 排序🌠数字按大小排序以当前选定区域排序以扩展选定区域排序 文字按首字母排序 快速筛选分类数据☄️文字筛选数字筛选颜色筛选…...
计算机网络 (28)虚拟专用网VPN
前言 虚拟专用网络(VPN)是一种在公共网络上建立私有网络连接的技术,它允许远程用户通过加密通道访问内部网络资源,实现远程办公和安全通信。 一、基本概念 定义:VPN是一种通过公共网络(如互联网)…...
【Python学习(七)——序列、列表、元组、range、字符串、字典、集合、可变类型不可变类型】
Python学习(七)——序列、列表、元组、range、字符串、字典、集合、可变类型&不可变类型 本文介绍了序列、列表、元组、range、字符串、字典、集合、可变类型&不可变类型,仅作为本人学习时记录,感兴趣的初学者可以一起看…...
MATLAB常用建模方法——常用非参数检验
常用非参数检验 在用样本数据对正态总体参数作出统计判断(例如参数估计和假设检验)时,要求样本数据应服从正态分布,这种数据分布类型已知的总体参数的假设检验称为参数假设检验。 与参数假设检验相对应的还有非参数假设检验&#…...
STM32实战:基于双输入捕获与DMA的高精度脉冲测量方案
1. 高精度脉冲测量的核心挑战 在电机控制、数字信号分析等实时性要求高的场景中,微秒级脉冲测量精度直接影响系统性能。传统的中断方式存在两个致命缺陷:首先是中断响应延迟,从信号触发到CPU响应通常需要几十个时钟周期;其次是中断…...
Dependency Track实战:从Docker部署到Jenkins集成全流程解析
1. Dependency Track核心价值解析 第一次接触Dependency Track时,很多人会疑惑:为什么要在CI/CD流程中引入这个工具?这得从现代软件开发面临的组件安全困境说起。想象你正在建造一栋房子,使用了来自全球各地供应商的建材。如果其中…...
JBoltAI Agent OS:企业智能体不“添乱”
现在很多企业都在用水滴石穿的AI智能体(简单说就是企业专属的AI助手),但不少人都有同一个顾虑:这东西好用是好用,可万一乱访问公司机密、抢着用电脑资源拖慢工作,或者好方法没法共享,反而添乱怎…...
Pixel Dimension Fissioner 高并发架构设计:应对突发流量与任务队列管理
Pixel Dimension Fissioner 高并发架构设计:应对突发流量与任务队列管理 1. 高并发场景下的挑战与需求 当Pixel Dimension Fissioner服务面向公众或大型活动开放时,系统会面临前所未有的流量压力。想象一下,某个热门活动期间,成…...
项目实训博客记录3
此博客用于记录在4.13至4.19的开发进度...
利用Docker在Mac上快速部署SQL Server开发环境
1. 为什么要在Mac上用Docker跑SQL Server? 作为常年和数据库打交道的开发者,我太理解在Mac上折腾SQL Server的痛苦了。微软官方根本不提供macOS原生版本,以前要么用虚拟机装Windows系统,要么就得买台Windows电脑当开发机。直到Doc…...
微信聊天记录永久保存指南:用WeChatExporter完整备份你的珍贵回忆
微信聊天记录永久保存指南:用WeChatExporter完整备份你的珍贵回忆 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 你是否曾经因为手机丢失、系统升级或意外删…...
不上APM,103行代码搞定慢SQL检测:超100毫秒自动入库
不上APM,103行代码搞定慢SQL检测:超100毫秒自动入库 原创于 2026-04-14 06:40:21 发布更新于 2026-04-14 10:30:00 非科班野生程序员,深耕政务信息化20年。从VC到PB再到Java,自研框架browise也打磨了十几年。最近整理框架代码&…...
GTE-Chinese-Large入门必看:轻量621MB模型实现高精度中文语义理解
GTE-Chinese-Large入门必看:轻量621MB模型实现高精度中文语义理解 你是不是经常遇到这样的问题?想在一堆文档里快速找到和某个问题最相关的答案,或者想把用户评论自动归类,又或者想给用户推荐他可能感兴趣的文章?这些…...
MiniCPM-o-4.5-nvidia-FlagOS本地化部署:Ollama模式与星图GPU方案对比
MiniCPM-o-4.5-nvidia-FlagOS本地化部署:Ollama模式与星图GPU方案对比 最近在折腾MiniCPM-o-4.5-nvidia-FlagOS这个模型,发现不少朋友在部署时有点纠结。有人想在自己笔记本上快速跑起来试试,也有人希望找个稳定、性能好的地方长期用。我花时…...
