SUSCRIBE message类似于无线电协议中的"Measurement Control" 或 "Information Request"。它要求另一方报告任何特定事件或特定状态。
Notify类似于无线电协议中的“Measurement Report”或“Information Report”。基本上,它传递SUBSCRIBE消息所请求的信息。(关于SUBSCRIBE/NOTIFY过程的正式描述,请参见RFC3265会话发起协议(SIP)-特定事件通知).
Overall sequence for SUBSCRIBE and NOTIFY goes as follows.
SUBSCRIBE支持哪些事件呢?
当然,SUBSCRIBE中最常用的事件是'reg'(用于注册状态检查),但是还有其他事件可用。有关这些事件的正式信息可在会话发起协议(SIP)事件类型名称空间中获得。以下是我在我的领域(在IMS中使用SIP)经常看到的事件列表。
Event
Description
Reference
regRequest for IMS/SIP Registration StatusRFC 3680
presenceRequest for presence information (commonly used in RCS)RFC 3856
winfoRequest for Watcher information (commonly used in RCS)RFC 3857
xcap-diffRequest for Xcap-Diff information (commonly used in RCS)RFC 3875
NOTIFY 中的订阅状态
当Notifier(通常是CSCF)并没有出现错误的情况(例如,481,400,500)时,通知者除了在消息体中提供详细的订阅信息外,还发送带有特定订阅状态信息的NOTIFY消息(参见参见“RFC3265 3.2.4”)。订阅者通知行为”了解更多细节)。
Subscription-State
Description
active这意味着订阅被接受(在大多数情况下,也被授权)。
pending
这意味着Notifier已收到订阅,但还没有足够的策略信息来授予或拒绝订阅
terminated这意味着订阅已终止,可以将其指定为如下reason代码
deactivated
这意味着订阅结束(终止),但订阅者(UE)应该立即用新的订阅重试。
probation这意味着订阅结束(终止),但客户端应该在稍后的某个时间重试。
rejected这意味着由于授权策略的更改,订阅结束(终止)。客户端不应该重试。
timeout这意味着订阅结束(终止),因为它在过期之前没有刷新。客户端可以立即重试。
giveup
这意味着由于通知方无法及时获得授权,订阅结束(终止)
noresource
这意味着订阅结束(终止),因为被监视的资源不再可用。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。