0%

SIP协议

会话初始协议(Session Initiation Protocol)是一个控制发起、修改和终结交互式多媒体会话的信令协议。

SIP是一个基于文本的协议,这一点与HTTP和SMTP类似。我们来对比一组简单的HTTP请求与SIP请求。

1
2
3
4
5
HTTP:
GET /index.html HTTP/1.1

SIP:  
INVITE sip:seven@freeswitch.org.cn SIP/2.0

两者类似,请求均有三部分组成:在HTTP请求中,GET指明一个获取资源(文件)的动作,/index.html则是资源的地址,最后HTTP/1.1是协议版本号;而在SIP中,INVITE表示发起一次呼叫请求,seven@freeswitch.org.cn为请求的地址,也称为SIP URI或AOR(Adress of Record,用户的公开地址),第三部分的SIP/2.0也是版本号。其中,SIP URI类似一个电子邮件地址,其格式为“协议:名称@主机”。这里SIP URI格式中的“协议”与HTTP和HTTPS相对应,也有SIP和SIPS两种(后者是加密的,如sips:seven@freeswitch.org.cn);“名称”可以是一串数字的电话号码,也可以是字母表示的名称;而“主机”可以是一个域名,也可以是一个IP地址。

阅读全文 »

算两个日期之间的天数

1
2
3
SELECT TO_DAYS('2023-03-23') - TO_DAYS('2023-02-02');

SELECT DATEDIFF('2023-03-23', '2023-02-02');
阅读全文 »

FreeSWITCH架构

FreeSWITCH由一个稳定的核心(Core)及一些外围模块组成。这些外围的模块根据其功能和用途的不同又分为Endpoint、Codec、Dialplan、Application等不同的类别。

FreeSWITCH是由一个稳定的核心及外围的可加载模块组成的。核心代码经过精心设计及严格测试,保证了它的稳定性。外围的模块则保证了它的可扩展性。核心与模块间通过Public API通信,而模块间通过事件系统(Event)通信,事件机制消除了模块间的耦合,进一步增加了其可伸缩性。

阅读全文 »

在Linux环境下看过查看过日志的朋友都知道tail -f 命令的用法,可以一直跟踪日志的输出,一旦有新日志产生就直接刷新在屏幕上,对我们调试程序,跟踪Bug有很大的帮助。但在win环境下,一般只能打开程序查看日志,有日志产生时,也只能关闭再打开,翻到底部查看新产生的日志。

阅读全文 »

什么是FreeSWITCH

FreeSWITCH是一个开源的电话交换平台。世界上第一个跨平台的、伸缩性极好的、免费的、多协议的电话软交换平台。

阅读全文 »