SIP - 请求报头字段



授权

授权报头字段用于在用户代理 (UA) 向服务器的请求中携带凭据。

它可以作为对包含挑战信息的401 未授权响应的回复发送。

事件

此报头字段用于SUBSCRIBENOTIFY方法,以指示该方法正在使用哪个事件包。

  • 在 SUBSCRIBE 中,它列出了客户端想要订阅的事件包。

  • 在 NOTIFY 中,它列出了通知包含状态信息的事件包。

加入

Join 报头字段用于在 INVITE 中请求将对话(会话)与现有对话(会话)加入。

  • Join 报头字段的参数以类似于 Replaces 报头字段的方式通过呼叫 ID、To 标签和 From 标签来标识对话。

  • 如果 Join 报头字段引用两个用户代理之间的点对点对话,则 Join 报头字段实际上是将呼叫转换为会议呼叫的请求。

  • 如果对话已经是会议的一部分,则 Join 报头字段是将其添加到会议中的请求。

代理授权

Proxy-Authorization 报头字段用于在用户代理 (UA) 向服务器的请求中携带凭据。

  • 它可以作为对包含挑战信息的 407 代理身份验证必需响应的回复发送。

  • 接收包含 Proxy-Authorization 报头字段的请求的代理会搜索其自身的领域,如果找到则处理该条目。

  • 如果凭据正确,则在将其转发到下一个代理时,请求中会保留任何剩余的条目。

代理需求

Proxy-Require 报头字段用于列出用户代理 (UA) 需要代理支持才能处理请求的功能和扩展。

  • 代理返回 420 错误扩展响应,在不支持的报头字段中列出任何不支持的功能。

  • 如果需要但不需要支持此选项,则将其列在支持的报头字段中。

最大转发数

Max-Forwards 报头字段用于指示 SIP 请求可以采取的最大跳数。

  • 转发请求的每个代理都会递减报头字段的值。

  • 接收值为零的报头字段的代理会丢弃消息,并向发件人发送 483 过多跳数响应。

  • 根据 RFC 3261,Max-Forwards 是请求中的必需报头字段。

  • 建议值为 70 跳。

优先级

UAC 使用 Priority 报头字段来设置请求的紧急程度。值为非紧急、正常、紧急和紧急情况。

引用到

Refer-To 报头字段是 REFER 请求中的必需报头字段,其中包含正在引用的 URI 或 URL 资源。它可以包含从 sip 或 sips 到 telURI 的任何类型的 URI。

被引用者

Referred-By 报头字段是 REFER 请求和由 REFER 触发的请求中的可选报头字段。

  • 它为触发请求的接收者提供信息,表明该请求是由于 REFER 和 REFER 的发起者而生成的。

  • 未签名的 Referred-By 报头字段可能会被429 提供引用者身份响应代码拒绝。

替换

Replaces 用于用新呼叫替换现有呼叫。

  • 在已建立的对话中,接收具有与现有对话匹配的 Replaces 报头字段的另一个 INVITE 的 UA 必须接受 INVITE,使用 BYE 终止现有对话,并将所有资源和状态从现有对话转移到新建立的对话。

  • 如果 Replaces 报头字段与任何对话都不匹配,则必须使用 481 对话不存在响应来拒绝 INVITE。

请求处置

Request-Disposition 报头字段可用于请求服务器进行代理或重定向。

Example:
Request-Disposition: redirect

需要

Require 报头字段用于列出 UAC 需要 UAS 支持才能处理请求的功能和扩展。

UAS 返回 420 错误扩展响应,在 Unsupported 报头字段中列出任何不支持的功能。

Example:
Require: rel100

路由

Route 报头字段用于为请求提供路由信息。

  • RFC 3261 引入了两种类型的路由:严格路由松散路由,它们与同名的 IP 路由模式具有相似的含义。

  • 在严格路由中,代理必须使用 Route 报头字段中的第一个 URI 来重写 Request-URI,然后将其转发。

  • 在松散路由中,代理不会重写 Request-URI,而是将请求转发到 Route 报头字段中的第一个 URI 或另一个松散路由元素。

  • 在松散路由中,请求必须通过 Route 列表中的每个服务器才能根据 Request-URI 进行路由。

  • 在严格路由中,请求必须仅通过 Route 报头字段中的一组服务器进行路由,并且在每个跳跃处都会重写 Request-URI。

  • 代理或 UAC 可以通过 lr 参数的存在来判断路由集中下一个元素是否支持松散路由。

Example:
Route: sip:[email protected];lr

RAck

RAck 报头字段用于对 PRACK 请求的响应中,可靠地确认包含 RSeq 报头字段的临时响应。

  • 其值为 CSeq 和临时响应中的 RSeq 的组合。

  • 对于可靠发送的每个响应,可靠序列号都会递增。

Example:
RAck: 3452337 17 INVITE

会话到期

Session-Expires 报头字段用于指定会话的到期时间。

  • 要扩展会话,任何 UA 都可以发送带有新的 Session-Expires 报头字段的 re-INVITE 或 UPDATE。

  • 呼叫建立后,它将出现。

SIP-If-Match

SIP-If-Match 报头字段是 SIP 发布机制的一部分。它包含在旨在刷新、修改或删除先前发布状态的 PUBLISH 请求中。

  • 报头字段包含状态信息,该状态信息在对先前 PUBLISH 的 2xx 响应中的 SIP-ETag 报头字段中返回。

  • 如果实体标签不再有效,服务器将返回 412 条件请求失败响应。

Example:
SIP-If-Match: 56jforRr1pd

订阅状态

Subscription-State 报头字段是 NOTIFY 请求中的必需报头字段。它指示订阅的当前状态。定义的值包括活动、待处理或终止。

Example:
Subscription-State: terminated; reason = rejected
session_initiation_protocol_headers.htm
广告