SIP协议之NOTIFY控制SIP终端通话

  在SIP协议的应用中,可以通过NOTIFY消息控制终端接听来电或保持通话。

一、原理

  终端收到带内的NOTIFY消息后,按NOTIFY消息中event头域指定的事件对关联的通话做出相应的动作。“带内”NOTIFY消息指的是NOTIFY与要控制的通话有相同的对话信息(callID、from-tag、to-tag)。

Event: talk表示接听, hold表示保持

NOTIFY消息示例:

NOTIFY sip:[email protected]:5062 SIP/2.0
From: ;tag=007473EA-BEFE-1375-B81D-D220040AAA77-31556972
To: ;tag=1558945400
Call-ID: [email protected]
CSeq: 2 NOTIFY
Content-Length: 0
Via: SIP/2.0/UDP 10.4.32.212:5060;branch=z9hG4bK007473FE-BEFE-1375-B81D-D220040AAA77-91751959
Contact: 
Event: talk
Subscription-State: active
Max-Forwards: 70

二、实例分析

2.1 NOTIFY接听

  终端收到来电后,进入到振铃状态,此时,收到notify消息(event:talk),终端完成接听
在这里插入图片描述
SIP协议之NOTIFY控制SIP终端通话_第1张图片
SIP协议之NOTIFY控制SIP终端通话_第2张图片
SIP协议之NOTIFY控制SIP终端通话_第3张图片

2.2 NOTIFY 保持

  终端收到来电后,进入到振铃状态,此时,收到notify消息(event:hold),终端发起保持
在这里插入图片描述
SIP协议之NOTIFY控制SIP终端通话_第4张图片
SIP协议之NOTIFY控制SIP终端通话_第5张图片

你可能感兴趣的:(SIP/VOIP,notify,talk,hold,event,sip)