- 博客(356)
- 资源 (19)
- 收藏
- 关注
原创 SIP Call-Info报头的语法结构
另外,Call-Info报头的使用可能带来安全风险,如果被呼叫方获取恶意呼叫方提供的URI,可能面临显示不适当或冒犯性内容、危险或非法内容等的风险。因此,建议用户代理(UA)只有在能够验证发起报头字段的元素的真实性并信任该元素的情况下,才呈现Call-Info报头字段中的信息。
2024-10-29 17:42:09 303
原创 Xshell调用powershell连接Teleport
公司最近切换telport管理SSH的连接访问。配置完成后,通过powershell可能远程访问。但是powershell缺少session管理功能,每次连接都记不住远程IP,很是头疼。利用Xshell的管理能力是否可行?首先,新建session, 填入取好的名字,协议选择local。然后勾选Execute 前的选择框,点击add添加发送的命令。然后,在需要连接时打开session就可以了。第二步:选择login Scripts。
2024-09-29 17:05:06 215
原创 选择高亮选区
VIM可视模式的3个子模式用于处理不同类型的文本。本文介绍节看到如何激活每种子模式,以及如何在它们之间切换。Vim有3种可视模式。在面向字符的可视模式中,我们能够选择任意的字符范围,不论它是单个字符,还是位于一行内,或是跨若干行的指定字符范围,都没问题。该模式适用于操作单词或短语。如果我们想对整行进行操作,可以改用面向行的可视模式。而面向列块的可视模式则允许对文档中的列块进行操作。
2024-09-20 16:47:49 407
原创 VIM复合命令
VIM提供了很多 复合命令,可以把两个动作合并为一次按键。极大提高了编辑效率。除了表中说明的功能之外,这些命令还有一个共同特点:它们都会从普通模式切。结合重复命令.将产生奇特的反应。
2024-08-09 16:27:08 429
原创 vim列编辑模式
在编辑文本时,经常会有这样的需求,对特定列进行进行批量编辑。比如批量注释一段代码,或者删除待定字符(如一列空格)。幸运的是VIM支持列编辑模式。
2024-08-02 16:01:00 446
原创 opensips ACC模块扩展字段
指定扩展信息的实现是通过实现的,它通过指定标签名进行赋值。这些信息的标签名,通过acc_extra伪变量定义。没有没有指定tag名,那么其值就会被视为log_value。其语法定义格式如下:' tag)*其中backend指定扩展内容输出到何处,可选值有log, db, aaa, evi,其后跟着一个冒号,后面是tag列表。如果有个箭头,箭头前表示脚本中伪变量名,箭头后表示输出终端的字段名。扩展字段的内容,在整个呼叫过程中始终可见。
2024-06-14 15:03:59 280
原创 opensips 3.5的DB部署
opensips 3.X的DB部署方式较之前版本有很大的不同。本文以opensips 3.5 为例,说明部署的过程。当OpenSIPS安装完成后,需要进一步做什么?最大的可能就是部署配套的DB。因为很多功能离不开它,比如用户鉴权、注册信息持久化、dialog信息维护,等等。你可以通过opensips-cli来部署db。在部署之前,你需要先安装它,如何安装请参考。本人。
2024-06-03 08:00:00 753
原创 利用audacity和ffmpeg制作测试音频文件
大部分地方使用的都是小端字节序,如果需要的是小端,那么可以直接用audacity,而不需要再用ffmpeg转换。具体导出方法如下所示,导出格式选择:其它无压缩音频文件,采样率16000,Header选择RAW,Encoding选择Signed 16-bit PCM。最近要用SIPP测试一个场景,需要发送双声道/16K采样率/16bit量化的PCM流,但是下载的素材往往不能满足参数要求。-acodec pcm_s16be: 输出pcm格式,采用signed 16格式,大端字节序(小端的话使用le)
2024-05-27 17:48:15 809
原创 从WEBM文件中提取音频
要从WEBM文件中提取音频,可以使用ffmpeg这个强大的多媒体处理工具。-q:a 4:设置音频压缩质量为中等(范围从0(无损)到51(最低质量),高质量通常需要更高的值)。-c:a libmp3lame:指定输出音频编码器为MP3(使用libmp3lame)。-i input.webm:指定输入文件。output.mp3:输出文件的名称。
2024-05-17 14:36:08 389
原创 dstat 与系统 I/O
知道系统运行了哪些服务也许并不能告诉你是谁拖慢了系统。top 命令可以报告CPU占用情况以及I/O等待时间,但这可能也不足以找出导致系统过载的任务。跟踪I/O以及上下文切换有助于揪出问题的源头。dstat 实用工具可以为你指出系统潜在的瓶颈。
2024-04-29 10:57:58 320
原创 Linux 调度优先级
Linux中的每个任务都有其优先级。这个优先级的范围从-20到19。优先级越低(-20),分配给任务的CPU时间就越多。默认的优先级是0。并非所有的任务都需要使用相同的优先级。交互式应用要求快速响应,通过 crontab 运行的后台任务只需要在下次被调度运行之前执行完毕就行。nice 命令可以修改任务的优先级。它能以指定的优先级启动任务。降低任务的优先级会释放出资源给其他任务。默认情况下任务的优先级会是10。如果要设置高优先级,比如-18。
2024-04-26 17:02:53 467 1
原创 libwebsockets的SMB 多线程
libwebsockets内在支持SMB多线程。它的用法很简单,在源码包中,有个实例可以参考:minimal-http-server-eventlib-smp.c。在lws_context_creation_info结构体中,有两个成员用于说明启用SMB线程模型。它们的缺省值为0,表示使用单线程。设置count_threads值为n,告诉LWS你有几个服务线程同时作用于context。无论起多少个线程,socket的监听依然是集中在一个线程下的。
2024-04-19 13:57:10 330
原创 Tmux 使用笔记
命令行的典型使用方式是,打开一个终端窗口,连接计算机,在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session)。会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。
2024-04-09 15:25:34 602
原创 vim搜索设置高亮
最近生产环境中,用VIM打开log后,发现搜索时字符串没有高亮显示。这种方式仅用于当前打开的文档,如果退出VIM后重新打开,还是不生效的。如果是自己的环境,直接在vimrc里加上。
2024-03-23 13:09:35 518
原创 FreeSwitch资源库
感谢杜老师的分享:GitHub - rts-cn/awesome-freeswitch: A curated list of awesome FreeSWITCH resources, modules, libraries and software. FreeSWITCH资源精选。
2024-03-16 15:54:31 336
原创 CentOS 7 devtoolset编译addressSanitizer版本失败的问题解决
这两天,要用Google的addressSanitizer检验内存问题,加上编译参数后,却发现编译不通过。系统是有安装libasan的,但是版本和devtoolset版本不同。在我的一个Cent OS7开发环境中,按。显然,在编译检测时,发现ibasan连接时找不到文件。的方法升级GCC版本到8.3.1。安装完毕后,重新编译就成了。
2024-03-09 10:38:10 815
原创 呼叫中心的ACD
ACD(Automatic Call Distribution)即自动呼叫分配设备。是把接入的呼叫按特定的转接规则和分配策略转接到正确的座席。其性能的优劣直接影响到呼叫中心的效率和顾客的满意度,是呼叫中心有别于一般的热线电话系统、自动应答系统、电话录音系统或其它类似号称呼叫中心但是其实不是真正呼叫中心的重要标志。
2024-03-01 16:46:58 458
转载 [转]WebRTC 人声检测与舒适噪音
早期版本的舒适噪音的格式定义在RFC 1890中,这个版本的格式只包含一个字段,就是噪音级别。舒适噪音生成器在接收端根据发送到给的参数,来产生类似接收端的舒适噪音, 用来模拟发送方的噪音环境。接收方在收到新的CN包后,会更新产生舒适噪音的参数。如果B具有VAD检测功能,那么B就可以在不说话的时候,发送特殊标记的语音流或者通过减少语音流发送的频率,来减少无意义语音的发送。除此以外,人声检测还能用于减少网络中语音包传输的数据量,从而极大的降低语音的带宽,极限情况下能降低50%的带宽。很少可能是两个人都说话的。
2024-01-27 13:32:32 493
原创 Windows git diff + beyound compare 文件夹比较
使用git difftool 命令时,发现,行为表现为一次打开一个差异文件,关闭窗口后自动打开下一个差异文件,如果需要在列表间切换,很不方便。那么,有什么办法进行文件夹比较吗?最近使用git 配置对比工具为beyound compare。
2024-01-13 15:16:42 677
原创 VIM合并两行
VIM删除命令不能直接删除换行符,如果需要把两行合并为一行,那么可以用下面命令。上面命令直接合并当前行和下面一行,之间加空格作为分隔符。如果需要连续重复操作,可以在命令前加数字n。重复命令.对合并操作也是生效的。
2024-01-06 13:41:04 911
原创 Linux报错:audit: backlog limit exceeded
今天,一台虚拟机上操作昨天打开的连接一直没响应,新打开连接连接不上。SSH校验不通过。通过IT的后台,可以看到满屏的audit服务记录的审计事件超出默认(或设置)数量 ,达到或超出容量的审计缓冲区队列也可能导致实例锁定或持续无响应状态。audit服务配置。
2023-12-29 10:52:12 1540
翻译 第十二讲 打包Debug 及Release
默认条件下,CMake的模型是一个build目录仅包含一个配置,它可以是Debug、Release、MinSizeRel或RelWithDebInfo。但是,设置CPack来绑定多个build目录,以构建同一工程的多个配置是可行的。首先,我们需要确保debug和release所构建和使用的库具有不同的名字,可以用名字前缀来区分。现在,debug 和release的工程目录已经准备好了,我们可以用一个自定义配置文件来封装不同的工程配置。现在,我们需要分别设置debug和release的工程环境。
2023-12-23 13:20:42 243
原创 Vim 搜索多个关键字并高亮
在查看代码或日志的时候,经常会需要搜索某个关键字。VIM搜索时,会把关键字高亮显示,还是比较方便的。可是,一个关键字往往是不够的,能否支持多个关键字查找呢?
2023-12-13 16:37:09 3189
原创 Linux地址空间随机化
ASLR(Address Space Layout Randomization)在2005年被引入到Linux的内核 kernel 2.6.12 中,早在2004年就以补丁的形式引入。内存地址的随机化,意味着同一应用多次执行所使用内存空间完全不同,也意味着简单的缓冲区溢出攻击无法达到目的。
2023-11-29 13:28:01 682
原创 Centos 64位环境下编译32位C程序
但是,在编译过程中,往往会碰到这样的错误:atal error: gnu/stubs-32.h: No such file or directory。在64位平台下,默认编译的是64位程序。如果需要编译32位程序,需要指定gcc 编译选项“-m32”。第一次编译32位程序,很可能有如下错误提示:cannot find -lgcc_s。
2023-11-10 08:43:10 1082
原创 CentOS 7升级gcc/G++版本
Centos 7默认gcc版本为4.8,有时需要更高版本,只需要执行几条命令,无需下载源码编译编译。开发包缺省安装在/opt/rh下,每个版本的根目录下都有个enable脚本。选择需要的版本即可。注意,如果想安装7.*版本的,就改成devtoolset-7-gcc*,以此类推。这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本。
2023-11-02 13:16:00 1913
FreeSWITCH clustering with OpenSIPS
2020-04-22
FreeSWITCH Cookbook
2013-07-01
Asterisk: The Definitive Guide, 3rd Edition
2013-01-25
FreeSWITCH 1.0.6
2012-04-13
VoiceXML基础教程
2011-09-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人