从整理几款sip phone,到简单修改播放声音文件,发现少了最基本的环境搭建及源码的认识,现在重新记录下。
1.sip简要介绍
这里提及一些sip相关的必要知识,方便对该协议有个整体的了解,同时也可以为后续相关的应用开发提供准备。更详细的内容可以参考对应的RFC文档(RFC3261等等)。sip(Session Initiation Protocol)会话初始协议,简单来说就是负责多媒体通信(两个或者多个终端)会话的建立、修改和终止,而且是一个应用层控制协议。可以看到它是不足以支撑完整的多媒体会话的,但它可以方便的通过与SDP(会话描述协议,协商采用的协议)、RTP(实时传输协议)等结合提供完整多媒体通信功能。后面在介绍这款Java sip phone(peers)的源码框架时会看到。
单就sip协议来说(RFC3261),sip协议的功能实现用户的注册,会话的邀请或者接受会话,会话参数服务的修改,会话的结束等(没有用官方的用户定位等功能描述,需要的可以自己查看),因此需要注册服务器、代理服务器实现用户注册,位置查找,进而实现会话邀请等sip消息(主要就是请求和响应两种)的转发,对应的客户端有UserAgent(包括UAC:UserAgent Client和UAS:UserAgent Server )来负责实现会话的邀请和响应等。
sip协议栈如下图所示,但据说只是逻辑实体,真正的实现上可能会有所重合的
1.sip简要介绍
这里提及一些sip相关的必要知识,方便对该协议有个整体的了解,同时也可以为后续相关的应用开发提供准备。更详细的内容可以参考对应的RFC文档(RFC3261等等)。sip(Session Initiation Protocol)会话初始协议,简单来说就是负责多媒体通信(两个或者多个终端)会话的建立、修改和终止,而且是一个应用层控制协议。可以看到它是不足以支撑完整的多媒体会话的,但它可以方便的通过与SDP(会话描述协议,协商采用的协议)、RTP(实时传输协议)等结合提供完整多媒体通信功能。后面在介绍这款Java sip phone(peers)的源码框架时会看到。
单就sip协议来说(RFC3261),sip协议的功能实现用户的注册,会话的邀请或者接受会话,会话参数服务的修改,会话的结束等(没有用官方的用户定位等功能描述,需要的可以自己查看),因此需要注册服务器、代理服务器实现用户注册,位置查找,进而实现会话邀请等sip消息(主要就是请求和响应两种)的转发,对应的客户端有UserAgent(包括UAC:UserAgent Client和UAS:UserAgent Server )来负责实现会话的邀请和响应等。
sip协议栈如下图所示,但据说只是逻辑实体,真正的实现上可能会有所重合的