自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

至虛極,守靜篤

合抱之木,生於毫末;九層之臺,起於累土;千里之行,始於足下。

  • 博客(337)
  • 资源 (19)
  • 收藏
  • 关注

原创 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 203

原创 Tmux 使用笔记

命令行的典型使用方式是,打开一个终端窗口,连接计算机,在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session)。会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。

2024-04-09 15:25:34 545

原创 rz 上传文件时乱码输出到终端

今天使用Xshell上传文件, 结果屏幕疯狂输出乱码。上传时rz命令没带参数。

2024-04-03 16:53:03 107

原创 vim搜索设置高亮

最近生产环境中,用VIM打开log后,发现搜索时字符串没有高亮显示。这种方式仅用于当前打开的文档,如果退出VIM后重新打开,还是不生效的。如果是自己的环境,直接在vimrc里加上。

2024-03-23 13:09:35 125

原创 FreeSwitch资源库

感谢杜老师的分享:GitHub - rts-cn/awesome-freeswitch: A curated list of awesome FreeSWITCH resources, modules, libraries and software. FreeSWITCH资源精选。

2024-03-16 15:54:31 234

原创 CentOS 7 devtoolset编译addressSanitizer版本失败的问题解决

这两天,要用Google的addressSanitizer检验内存问题,加上编译参数后,却发现编译不通过。系统是有安装libasan的,但是版本和devtoolset版本不同。在我的一个Cent OS7开发环境中,按。显然,在编译检测时,发现ibasan连接时找不到文件。的方法升级GCC版本到8.3.1。安装完毕后,重新编译就成了。

2024-03-09 10:38:10 576

原创 呼叫中心的ACD

ACD(Automatic Call Distribution)即自动呼叫分配设备。是把接入的呼叫按特定的转接规则和分配策略转接到正确的座席。其性能的优劣直接影响到呼叫中心的效率和顾客的满意度,是呼叫中心有别于一般的热线电话系统、自动应答系统、电话录音系统或其它类似号称呼叫中心但是其实不是真正呼叫中心的重要标志。

2024-03-01 16:46:58 305

原创 VIM Buffer操作命令

有点生疏了,记录一下。

2024-02-23 14:37:16 156

转载 [转]WebRTC 人声检测与舒适噪音

早期版本的舒适噪音的格式定义在RFC 1890中,这个版本的格式只包含一个字段,就是噪音级别。舒适噪音生成器在接收端根据发送到给的参数,来产生类似接收端的舒适噪音, 用来模拟发送方的噪音环境。接收方在收到新的CN包后,会更新产生舒适噪音的参数。如果B具有VAD检测功能,那么B就可以在不说话的时候,发送特殊标记的语音流或者通过减少语音流发送的频率,来减少无意义语音的发送。除此以外,人声检测还能用于减少网络中语音包传输的数据量,从而极大的降低语音的带宽,极限情况下能降低50%的带宽。很少可能是两个人都说话的。

2024-01-27 13:32:32 130

原创 docker 操作所有容器的命令

【代码】docker 操作所有容器的命令。

2024-01-18 08:57:46 710

原创 Windows git diff + beyound compare 文件夹比较

使用git difftool 命令时,发现,行为表现为一次打开一个差异文件,关闭窗口后自动打开下一个差异文件,如果需要在列表间切换,很不方便。那么,有什么办法进行文件夹比较吗?最近使用git 配置对比工具为beyound compare。

2024-01-13 15:16:42 519

原创 VIM合并两行

VIM删除命令不能直接删除换行符,如果需要把两行合并为一行,那么可以用下面命令。上面命令直接合并当前行和下面一行,之间加空格作为分隔符。如果需要连续重复操作,可以在命令前加数字n。重复命令.对合并操作也是生效的。

2024-01-06 13:41:04 591

原创 Linux报错:audit: backlog limit exceeded

今天,一台虚拟机上操作昨天打开的连接一直没响应,新打开连接连接不上。SSH校验不通过。通过IT的后台,可以看到满屏的audit服务记录的审计事件超出默认(或设置)数量 ,达到或超出容量的审计缓冲区队列也可能导致实例锁定或持续无响应状态。audit服务配置。

2023-12-29 10:52:12 776

翻译 第十二讲 打包Debug 及Release

默认条件下,CMake的模型是一个build目录仅包含一个配置,它可以是Debug、Release、MinSizeRel或RelWithDebInfo。但是,设置CPack来绑定多个build目录,以构建同一工程的多个配置是可行的。首先,我们需要确保debug和release所构建和使用的库具有不同的名字,可以用名字前缀来区分。现在,debug 和release的工程目录已经准备好了,我们可以用一个自定义配置文件来封装不同的工程配置。现在,我们需要分别设置debug和release的工程环境。

2023-12-23 13:20:42 160

原创 Vim 搜索多个关键字并高亮

在查看代码或日志的时候,经常会需要搜索某个关键字。VIM搜索时,会把关键字高亮显示,还是比较方便的。可是,一个关键字往往是不够的,能否支持多个关键字查找呢?

2023-12-13 16:37:09 1123

翻译 第十一讲 添加导出配置

添加导出配置

2023-12-08 13:11:59 117

原创 Linux地址空间随机化

ASLR(Address Space Layout Randomization)在2005年被引入到Linux的内核 kernel 2.6.12 中,早在2004年就以补丁的形式引入。内存地址的随机化,意味着同一应用多次执行所使用内存空间完全不同,也意味着简单的缓冲区溢出攻击无法达到目的。

2023-11-29 13:28:01 354

原创 利用curl测试WSS连接的建立

【代码】利用curl测试WSS连接的建立。

2023-11-16 14:08:58 862

原创 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 913

原创 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 983

原创 根据进程pid查找该进程所属的容器

【代码】根据进程pid查找该进程所属的容器。

2023-10-30 17:24:31 190

翻译 第十讲 选择静态库还是动态库

如果你这时构建工程,你可能会发现链接失败,因为我们的代码中结合了一个没有位置独立的静态库和一个位置独立的(动态)库。的缺省行为,在没有显式指定类型(静态库,共享库,模块或对象)的前提下,控制库的构建。通过CMake文档,你能找出一个合适的模块来简化它吗?在教程里,我们将显式要求SqrtLibrary实现为静态库。里,我们需要创建一个SqrtLibrary,它会在构建安装过程中根据。为此目的,我们需要在顶层。的代码,让它变成一个真正的库,它封装了。库,我们需要修改库的实现逻辑。做些许修改,它不再使用。

2023-10-20 13:15:21 100

翻译 第九讲 : 打安装包

假设我们的工程已经完工,可以发布给其他人使用了。这和我们之前第五讲的内容不同,当时的安装是直接从源码构建的。在这一讲里,我们将创建一个安装包,它支持二进制安装及软件包管理功能。为此,我们会用到CPack来创建平台特定的安装包。接下来,设置一些CPack变量,它们存储了工程的版权和版本信息。模块,它将会使用之前设定的变量,还有当前系统的一些其它属性来设置安装包。像ZIP这样的归档生成器会归档压缩所有需要安装的文件。最后,安装得到的安装包,并验证安装的软件是否工作正常。接下来,和往常一样构建工程,并执行。

2023-09-28 15:44:34 96

原创 sed的不同执行方式

匹配root或nobody,或mail: 1.2 用\换行Shell的换行符依然有效,这有利于提高长命令的可读性。1.3 用 { }组合语句块2. sed脚本文件如果需要复用一组sed命令,可以把它们写入一个脚本文件,然后用命令行参数-f调用。数据文件data.txt内容:脚本文件cmd.sed执行命令sed脚本的注释行以井号#打头。为上面的脚本加上注释:如果sed脚本 的首行的前两个字符为#n,那么sed会自动使用-n选项(不打印),这时打印需要脚本中

2023-09-22 09:19:12 148

原创 nm: unimrcpserver: no symbols

elf(Executable and Linkable Format)文件有两个符号表,“.symtab”和“.dynsym”。“.dynsym”只保留“.symtab”中的全局符号(global symbols )。命令strip可以去掉elf文件中“.symtab”,但不会去掉“.dynsym”。近日使用官方的包安装了一个unimrcp的环境。想看一下和自己编译的符号表有什么不同。但是用nm查看时却显示不出来。还可以用readelf或 objdump。

2023-09-14 13:57:37 138

原创 sed正则表达式

很多linux命令支持正则表达式,sed也不例外。

2023-09-08 08:00:00 397

翻译 第八讲8 : 添加自定义命令和预生成文件

CMake 教程。

2023-09-01 16:28:13 63

原创 sed替换命令

sed替换命令

2023-08-22 09:00:55 2943

原创 sed 语法和基础命令

sed命令

2023-08-18 17:31:21 128

翻译 第七讲 : 添加系统探测

CMake教程 探测系统依赖性

2023-08-11 15:53:07 66

翻译 第六讲 : 添加测试 Dashboard的支持

把我们的测试结果提交到dashboard是很酷的,CMake也能支持,实现起来也很简单。我们已经为工程定义了一些测试,。现在,我们只需要执行这些测试用例,并把结果提交给CDash就可以。

2023-08-03 16:13:29 76

原创 unimrcp server的session资源分配与回收

这一行mrcp_session_t* session = sofia_agent->sig_agent->create_server_session(sofia_agent->sig_agent);又跳转到 mrcp_server_sig_agent_session_create()函数,它在mrcp_server.c里实现。这个nua_callback批向mrcp_sofia_event_callback()函数,它在mrcp_sofiasip_server_agent.c里实现。它分发处理SIP消息。

2023-07-27 18:08:30 302

原创 asan runtime does not come first in initial library list 问题解决

asan

2023-07-21 13:34:09 2578

翻译 第五讲 : 安装及测试

通常情况下,只构建可执行文件是不够的,我们还需要把它安装到系统上。通过CMake我们可以用命令指定安装规则。在CMake里为构建工程添加本地安装支持很简单,仅需要做两件事:指定安装位置和需要安装的目标文件。

2023-07-20 17:43:48 63

原创 Libwebsockets 多线程的注意事项

Libwebsockets 多线程注意事项

2023-07-07 16:15:17 1140 1

翻译 第四讲 : 添加生成器表达式

在构建系统生成过程中使用生成器表达式()

2023-06-29 15:18:20 101

翻译 第三讲 : 为库添加使用要求

CMake为库添加使用要求。

2023-06-20 13:03:42 61

翻译 使用lws编码的注意事项

lws库编程注意事项

2023-06-18 08:00:00 1369

原创 CMake指定C++版本

现在使用CMake的项目越来越多,由于历史原因,编译C++代码时,往往需要指定C++的版本。这里记录CMake编译时指定C++版本的几种方法。

2023-06-13 15:48:27 3200

翻译 第二讲: 添加库

通过前面一讲,我们已经学会了如何通过CMake建立一个基础工程。在这一讲里,我们将学习如何在工程里创建和使用库。我们还将了解如何把库设置为可选库。

2023-06-08 09:19:08 142

SDM(MRCP-SERVER)公共云镜像使用.pdf

阿里云MRCP SERVER作用手册

2021-09-15

FreeSWITCH 1.8.pdf

VoIP and WebRTC with FreeSWITCH: The definitive source.

2020-07-21

FreeSWITCH clustering with OpenSIPS

Opensis与FreeSwitch集成的框架说明,英文版本。适合部署参考。OpenSIPS Summit 2018 - Giovanni Maruzzelli - FreeSWITCH clustering with OpenSIPS (done well)

2020-04-22

SIP_ Understanding the Session Initiation Protocol 4 ediation.docx

SIP协议工具书。很好的参考。英文第四版。SIP开发必备。

2019-08-29

FreeSWITCH 1.2

Book Description FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice and chat-driven products, scaling from a soft-phone to a PBX and even up to an enterprise-class soft-switch. It is always exciting to design and build your own telephony system to suit your needs, but the task is time-consuming and involves a lot of technical skill. FreeSWITCH 1.2 comes to your rescue to help you set up a telephony system quickly and securely using FreeSWITCH. It is rich with practical examples and will give you all of the information and skills needed to implement your own PBX system. Book Details Publisher: Packt Publishing By: Anthony Minessale, Michael S Collins, Darren Schreiber, Raymond Chandler ISBN: 978-1-78216-100-4 Year: 2013 Pages: 428 Language: English File size: 4.5 MB File format: PDF

2014-05-21

SIP协议精解

SIP协议基础,一些精简的描述,适合初学者的一本书。

2014-04-03

思科有关七号信令的教程

思科有关七号信令的教程。基础知识。介绍七号信令的基本功能。

2014-04-03

FreeSWITCH Cookbook

freeswitch官方的第二本书,案例描述,E文的。主要案例: Configure users and phones as well as connections to VoIP providers and even Google Voice Control FreeSWITCH remotely with the powerful event socket interface Route inbound and outbound calls Handle call detail records, which includes inserting CDRs into a database Enable text-to-speech conversion in your voice applications Monitor calls via the FreeSWITCH Web interface

2013-07-01

JsSIP demo

JsSIP - 提供的一个兼容WebRTC的JS SIP库,原来托管在github上的一个demo,现在原项目地址似乎不可用了,备份一个。

2013-05-24

Asterisk: The Definitive Guide, 3rd Edition

Design a complete VoIP or analog PBX with Asterisk, even if you have no previous Asterisk experience and only basic telecommunications knowledge. This bestselling guide makes it easy, with a detailed roadmap to installing, configuring, and integrating this open source software into your existing phone system. Ideal for Linux administrators, developers, and power users, this book shows you how to write a basic dialplan step by step, and quickly brings you up to speed on the latest Asterisk features in version 1.8. Integrate Asterisk with analog, VoIP, and digital telephony systems Build a simple interactive dialplan, and dive into advanced concepts Use Asterisk’s voicemail options—including a standalone voicemail server Build a menuing system and add applications that act on caller input Incorporate a relational database with MySQL and Postgre SQL Connect to external services such as LDAP, calendars, XMPP, and Skype Use Automatic Call Distribution to build a call queuing system Learn how to use Asterisk’s security, call routing, and faxing features

2013-01-25

Asterisk Cookbook

Asterisk has a wealth of features to help you customize your PBX to fill very specific business needs. This short cookbook offers recipes for tackling dialplan fundamentals, making and controlling calls, and monitoring channels in your PBX environment. Each recipe includes a simple code solution you can put to work immediately, along with a detailed discussion that offers insight into why and how the recipe works. This book focuses on Asterisk 1.8, although many of the conventions and information presented are version-agnostic. These recipes include solutions to help you: Authenticate callers before moving on in your dialplan Redirect calls received by your auto-attendant Create an automatic call-back service Initiate hot-desking to login to and accept calls at any office device Monitor and interrupt live calls to train new employees at a call center Record calls from your Asterisk dialplan

2013-01-25

RFC4028中文版

RFC 4028的中文翻译版本。SIP keep alive机制的定义。VOIP开发必备的工具文档。

2012-10-22

FreeSWITCH 1.0.6

关于freeswitch经典书箱,英文版的。 Install and configure a complete telephony system of your own even if you are using FreeSWITCH for the first time In-depth discussions of important concepts like the dialplan, user directory, and the powerful FreeSWITCH Event Socket The first ever book on FreeSWITCH, packed with real-world examples for Linux/Unix systems, Mac OSX, and Windows, along with useful screenshots and diagrams Best practices and expert tips from the FreeSWITCH experts, including the creator of FreeSWITCH, Anthony Minessale Book Details Language : English Paperback : 320 pages [ 235mm x 191mm ] Release Date : July 2010 ISBN : 1847199968 ISBN 13 : 978-1-847199-96-6 Author(s) : Anthony Minessale, Darren Schreiber, Michael S. Collins Topics and Technologies : All Books, Networking & Telephony, Open Source

2012-04-13

RPM详细教程

详尽的RPM应用教程,包括使用和制作。linux开发必备工具

2011-09-23

Linux常用的压缩及解压缩命令

Linux常用的压缩及解压缩命令。SHELL编程必备

2011-09-22

VoiceXML基础教程

VoiceXML基础教程针对VoiceXML初学者编写,其由浅入深地介绍VoiceXML的主要内容,包括VoiceXML的历史背景与现状、VoiceXML的脚本设计基础等。

2011-09-22

awk学习笔记

awk工具的使用详解。SHELL编程的必备手册。

2011-09-13

Prentice.Hall.PTR.UNIX.Shells.by.Example.4th.Edition

Shell Example

2008-07-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除