专为易燃易爆环境设计的扩音电话
基于SIP协议的网络电话机
基于SIP协议的IP对讲机
实现不同通信网络之间的互联互通。
为应急通信系统提供应急广播设备
专用的应急指挥通中心通信调度设备
提供寻呼、广播、对讲、电话、报警等功能...
集成了语音、视频、即时消息、会议的通信平台...
基于电话通信技术,为企业提供客服呼叫方案...
用于实时调度和指挥工作,快速响应和协调沟通...
为制造业、矿业、石油化工、等场所,构建可靠的通信方案...
为高速公路、地铁、隧道等交通场所提供应通信方案...
处理客户的查询、投诉、技术支持、订单处理...
专门为处理紧急情况而设计的通信系统
专门设计用于危险环境中的通信系统
公司动态简介
行业知识简介
博客
2017-03-24
Asterisk中的SIP协议使用时非常广泛的,基本上目前的软交换大部分都使用了SIP协议。平时我们使用了SIP电话呼叫,用户感觉非常简单。事实上,可能很多Asterisk用户不了解其背后的流程处理。以前的章节我们介绍了IAX的呼叫流程,SIP电话呼叫流程事实上也和IAX2的呼叫流程差不多。
视频中讲解了SIP的呼叫流程,大家可以通过观看视频了解更多:
接下来,我们尝试使用稍微通俗一点的语言给大家介绍一下呼叫流程中几个主要的部分:
呼叫流程图:这里我们假设用户已经搭建好了两台Asterisk服务器,双方的分机可以成功注册,服务器之间可以通过SIP trunk 互通,双方使用同一语音编码,双方服务器终端都在同一网段。我们测试的流程是从电话 1 通过Server A 呼叫到Server B上的电话 2。
发起呼叫流程是通过几个协商过程来反复进行的,这里我们忽略了具体的编码协商,支持能力等等问题。电话 1 首先发起呼叫,电话 1 第一次发送 INVITE 信息,asterisk A 回复 401,告诉电话 1 发安全认证消息,我不会随便让你呼叫的。 然后 电话 1 发送ACK。好吧 ,我发送安全信息给你。然后电话 1 再发送 INVITE消息,携带安全信息认证。Asterisk A 收到电话 1 消息以后,Asterisk A 通知电话 1 已经收到 电话 1 消息,同时Server A 通过拨号规则判断电话的呼叫路由状态,发现此电话是呼叫到Server B,于是对Server B 发出 INVITE消息,告诉Server B,兄弟,这个电话是打到你那里的。Server B 收到了Server A的 INVITE消息以后,马上回复 Server A 一个 100 Trying, 大哥等等,我需要找我系统里面的的电话 2。同时,Server B 对电话 2 发出一个INVITE 消息,电话 2 收到了INVITE 以后,也马上回复Server B 一个100 Tyinging, 电话 2 表示我收到Server B 大哥的呼叫了,同时电话 2 振铃,电话终端播放一个振铃音,提醒用户电话2 振铃了,快接电话。然后 电话 2 发出一个 180 Ringing 回复到Server B,然后到 Server A,最后到了 电话 1。 电话 1 会听到一个回铃音。紧接着电话 2 发送 200 OK,电话 1 回复 ACK。电话 2 收到ACK 以后,说明双方都无其他问题。双方正式建立了RTP的互通,开始了语音传输。
挂机过程。如果双方通话结束,双方任意一方可以挂机,发送 BYE 消息以后,对端发送 200 OK。到此,双方通话结束。
在整个呼叫过程中,,我们简单介绍了呼叫发起,呼叫协商,查询路由,发送不同消息的整个流程,最后到挂机结束。在呼叫流程中,提醒用户一定要注意观察呼叫过程中每个终端,服务器发送的信息内容。另外,这里忽略了语音编码的协商问题,网络NAT问题,拨号规则的呼叫路由问题。这些问题需要在实际环境中做进一步的分析。如果用户希望了解更多SIP呼叫流程的技术细节,建议用户结合用户通过实际呼叫环境来抓包分析。
联系我们
028-83110277
IP电话机、视频电话机供应商
手机:
成都世讯电科信息技术有限公司是一家多媒体融合通信解决方案及运营服务提供商,公司专注于为广大用户提供简单高效的通信产品和真正符合行业用户需求的行业应用解决方案,让用户享受到个性化、私密性强又具开放性、兼容性强又易于管理的高科技服务,帮助用户实现办公及运营通信的现代化与网络信息化。
公司拥专注于IP多媒体解决方案的应用与实施,有IP多媒体通信系统(IPBX)、IP多媒体通信平台定制与搭建(运营、对讲广播、门禁、调度、音视频会议及与视频监控交互式应用等)、IP电话机、视频电话机、项目租赁、云通信及系统集成等服务。
电话:028-83110277
Q Q:86313858