开发者

Notify SIP proxy call has ended

The SIP "BYE" message is usually delivered from one SIP user agent to the other directly if the call is finished. How then can a SIP proxy, switch or exchange monitor i开发者_StackOverflowf a call has ended?


If a proxy is interested in a call - in particular, it wants to know about BYEs - it requests its addition to the SIP route by adding a Record-Route header.

The SIP RFC has some example call flows illustrating the use of the header, but briefly, dialog-establishing requests (like INVITE, REFER, etc.) en route to the callee pass through various proxies. These add themselves to the route set of the dialog. When the callee constructs its response - or sends its own in-dialog request - it adds these servers' URIs to the messages it sends as Route headers. (I'm skipping some hairy details around Route headers and the Request-URI and RFC 2543 compatibility.)

Alternatively, a UA may be configured to use a certain chain of proxies: when it sends its INVITE, it will use Route headers (and the Request-URI) to force the message to travel a particular route.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜