OPTIONS——SIP学习笔记(七)
来源:互联网 发布:开淘宝需要什么 编辑:程序博客网 时间:2024/05/01 06:29
SIP方法OPTIONS允许UA查询其它UA和代理服务器的能力。这就允许客户端不必“Ringing”对方,即可发现关于支持的方法、内容类型、扩展和编码等信息。
Request-URI确定OPTIONS请求的目标,它可以识别其他的UA和SIP服务器。如果OPTIONS寻址到代理服务器,那么Request-URI设置为没有用户部分,和REGISTER请求的Request-URI设置一样。换言之,服务器接收到Max-Forwards头字段为0的OPTIONS请求,可能不管Request-URI而直接响应请求。
OPTIONS请求可以作为建立对话的一部分发送,查询在对话中以后可能使用的对等物的能力。
构造OPTIONS请求
遵循SIP请求的标准规则来构造OPTIONS请求。
OPTIONS请求可能出现Contact头字段。
Accept头字段应该包括UAC希望从响应中接收到的消息体类型。典型地,这用来设置一种用于描述UA媒体能力的格式。
OPTIONS请求的响应,假定为在原始请求Request-URI的范围内的。然而,仅当OPTIONS作为建立对话的一部分发送时,它才能保证生成OPTIONS响应的服务器可以接收到将来的请求。
处理OPTIONS请求
使用标准规则来构造OPTIONS响应。选择的响应代码必须和INVITE请求已经选择的一样。这允许OPTIONS请求用于确定UAS的基本状态,指示UAS是否接受INVITE请求。
在对话中接收到OPTIONS请求生成200响应,和对话外构造的一样,对对话没有任何影响。
由于代理处理OPTIONS和INVITE请求的不同,OPTIONS的使用有局限性。分发的INVITE请求可能返回多个200响应,而分发的OPTIONS请求只
返回一个200响应,因为代理使用处理non-INVITE处理机制处理的。
如果代理服务器生成OPTIONS响应,那么代理返回200响应,列出服务器的能力。此响应不包括消息体。
Allow、Accept、Accept-Encoding、Accept-Language、Supported头字段应该出现在OPTIONS请求的200响应中。如果代理产生此响应,因为代理是方法不可知的,Allow头字段应该视作模糊的而被忽略。Contact可能出现在200响应中,并和3XX响应有相同的语义,即它们可能列出到达用户的一系列可选的名字和方法。Warning头字段也可能出现。
消息体也可能在OPTIONS请求中发送,其类型由OPTIONS请求的Accept头字段确定(如果Accept头字段不存在,默认值为application/sdp)。如果此类型包括可以描述媒体能力的类型,那么,UAS应该为此目的在响应中包括消息体。
ZhaiPillary
2015/06/07 于上海
博客地址:http://blog.csdn.net/pillary
- OPTIONS——SIP学习笔记(七)
- SIP概述——SIP学习笔记(一)
- SIP协议结构——SIP学习笔记(三)
- SIP Message——SIP学习笔记(四)
- SIP的请求/响应事务模型——SIP学习笔记(二)
- 查询能力(SIP OPTIONS)
- 查询能力(SIP OPTIONS)
- 注册——SIP学习笔记(六)
- NGN学习笔记3——软交换中的协议1--SIP、SIP-I/SIP-T/BICC
- NGN学习笔记3——软交换中的协议1--SIP、SIP-I\SIP-T\BICC
- 通用用户代理行为——SIP学习笔记(五)
- VOLTE学习笔记(二)——IMS相关标识及SIP知识
- SIP学习笔记
- Sip学习笔记
- SIP学习笔记
- SIP学习笔记
- SIP学习笔记
- SIP学习笔记
- nginx 安装配置 for window
- JavaWeb学习总结(五十)——文件上传和下载
- eclipse快捷键设置问题
- 如果你也面试 07 restrict
- LeetCode之4Sum(经典)
- OPTIONS——SIP学习笔记(七)
- 牛腩新闻发布系统概要
- 数据库 物化视图详解
- C#中Winform程序调用WebService方法
- “红蓝眼人”问题中旅行者说的话的作用
- hdu 1159 Common Subsequence(最长公共子序列)
- php跨平台—绝对路径(获取绝对路径、定义常量、使用常量引入文件示例)
- Looksery Cup 2015 A
- linux解压