想要简化 Asterisk SIP 消息流
Want to simplify Asterisk SIP message flows
我正在尝试实现 SIP UA,为此,我研究了 SIP 调试模式下的 Asterisk 控制台。我试图从另一个分机 (B) 呼叫一个分机 (A)。
据我所知,初始消息流向 RINGING 消息,包括摘要身份验证部分。
它们是:
(B) >--->INVITE-----[Asterisk]
随后是一系列来回消息:
401 Unauthorized with NONCE
ACK
INVITE with correct Digest
TRYING
TRYING
RINGING
振铃phone (A) 摘机后,看到如下交流信息:
(A) >----> OK >-----> [Asterisk]
(A) <----< ACK<-----< [Asterisk]
[Asterisk] >----- OK ------> (B)
(A) >---(re)INVITE--> [Asterisk]
[Asterisk] <-----ACK-------< (B)
[Asterisk] >---(re)INVITE--> (B)
(A) >---TRYING -----> [Asterisk]
[Asterisk] <-----OK--------< (B)
(A) >-----OK--------> [Asterisk]
(A) <----ACK--------< [Asterisk]
我正在 (B) 端编写 UA 部分并且事先知道 A 的 SDP 并且可以生成
B 的 SDP,由我控制。我的呼叫流总是从 B 到 A。
我可以控制来自 (B) 的所有消息。
如何减少上述消息流?此外,我不完全理解在交换初始 SDP 之后直到响铃之前需要这么多消息。或者他们是?
Asterisk 将按照 SIP 标准 (rfc) 中的描述进行操作。
您无法删除邀请。您唯一能做的就是禁用早期媒体并启用 directmedia/ignore sdp 部分。
我正在尝试实现 SIP UA,为此,我研究了 SIP 调试模式下的 Asterisk 控制台。我试图从另一个分机 (B) 呼叫一个分机 (A)。
据我所知,初始消息流向 RINGING 消息,包括摘要身份验证部分。 它们是:
(B) >--->INVITE-----[Asterisk]
随后是一系列来回消息:
401 Unauthorized with NONCE
ACK
INVITE with correct Digest
TRYING
TRYING
RINGING
振铃phone (A) 摘机后,看到如下交流信息:
(A) >----> OK >-----> [Asterisk]
(A) <----< ACK<-----< [Asterisk]
[Asterisk] >----- OK ------> (B)
(A) >---(re)INVITE--> [Asterisk]
[Asterisk] <-----ACK-------< (B)
[Asterisk] >---(re)INVITE--> (B)
(A) >---TRYING -----> [Asterisk]
[Asterisk] <-----OK--------< (B)
(A) >-----OK--------> [Asterisk]
(A) <----ACK--------< [Asterisk]
我正在 (B) 端编写 UA 部分并且事先知道 A 的 SDP 并且可以生成 B 的 SDP,由我控制。我的呼叫流总是从 B 到 A。 我可以控制来自 (B) 的所有消息。 如何减少上述消息流?此外,我不完全理解在交换初始 SDP 之后直到响铃之前需要这么多消息。或者他们是?
Asterisk 将按照 SIP 标准 (rfc) 中的描述进行操作。
您无法删除邀请。您唯一能做的就是禁用早期媒体并启用 directmedia/ignore sdp 部分。