• <strike id="fdgpu"><input id="fdgpu"></input></strike>
    <label id="fdgpu"></label>
    <s id="fdgpu"><code id="fdgpu"></code></s>

  • <label id="fdgpu"></label>
  • <span id="fdgpu"><u id="fdgpu"></u></span>

    <s id="fdgpu"><sub id="fdgpu"></sub></s>
    您當前的位置是:  首頁(yè) > 新聞 > 國內 >
     首頁(yè) > 新聞 > 國內 >

    最常用的18個(gè)SIP呼叫業(yè)務(wù)流程詳解-呼叫詢(xún)轉

    2019-01-29 09:36:02   作者:james.zhu   來(lái)源:CTI論壇   評論:0  點(diǎn)擊:


      Transfer - Attended,我們稱(chēng)之為呼叫詢(xún)轉。簡(jiǎn)單來(lái)說(shuō),Alice呼叫Bob,通過(guò)通話(huà),Alice可能需要把電話(huà)轉接到Carol,然后Bob把Alice設置為等待狀態(tài)。Bob繼續呼叫Carol,同時(shí)對Carol聲明Bob需要把電話(huà)轉接給Alice。Bob與Carol的通話(huà)接通后,替換雙方之間的會(huì )話(huà)。Carol對Bob掛機。然后Alice對Bob發(fā)送一個(gè)報告,說(shuō)明Alice和Carol的電話(huà)轉接已經(jīng)成功。Bob對Alice掛機。
      通過(guò)上面的介紹,讀者可能已經(jīng)發(fā)現,Transfer-Unattended(Blind Transfer)和Transfer-Attended之間是有所不同的。最大的不同之處在于盲轉過(guò)程中,電話(huà)轉接到終端不會(huì )詢(xún)問(wèn)第三方是否可以轉接,不關(guān)心轉接到第三方是否同意或者接受這個(gè)電話(huà)轉接(所以稱(chēng)之為“盲”)。而詢(xún)轉則有所不同,它和會(huì )轉接到第三方提前詢(xún)問(wèn),是否接受這個(gè)電話(huà)的轉接,然后再進(jìn)行電話(huà)轉接流程(所以稱(chēng)之為“詢(xún)”)。
      另外,在上面的例子中,Bob插入了Replace 頭Refer-To URL。具體的Replace 頭的規范,讀者可以參考RFC3891。注意,Refer-To URL是一個(gè)Contact URL,它是詢(xún)轉接受方(Carol)在F10中返回的200 OK響應消息中的Contact URL。這樣可以保證正確的Carol的URL可達。在F10流程中,Contact URL中的參數gr表示Contact URL是一個(gè)GRUU,它表示是一個(gè)dialog之外的全球路由方式(RFC5627)。
      GRUU具有以下幾個(gè)特征:首先,它定義了指定的具體的用戶(hù)代理。其次,從理論上來(lái)說(shuō),可以支持全球路由方式。最后,它的存活周期很長(cháng)。我們簡(jiǎn)單查看一下關(guān)于GRUU的使用方式。如果支持了GRUU的SIP終端登錄的話(huà),其請求可能被復制出幾個(gè)不同的終端設備地址。
      但是,如果對某一臺指定的設備發(fā)送請求消息的話(huà),請求消息會(huì )根據不同的設備URL來(lái)發(fā)送,它會(huì )專(zhuān)門(mén)發(fā)送到指定的終端設備,例如,sip:user@domain;opaque=user:epid:UghFocauauCHBHoLhAAA;gruu
      那么,其他的設備就不會(huì )收到這個(gè)請求消息。
      在一些關(guān)于SIP的其他應用中,例如SBC的部署環(huán)境中,GRUU也支持了公開(kāi)的GRUU和臨時(shí)的GRUU,區別在于其存活周期的設定不同。具體的語(yǔ)法示例如下:
      pub-gruu=" Sip:userA@home.net;gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6"
      ;temp-gruu="sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@home.net;gr";
      在詢(xún)轉過(guò)程中,如果示例中的Bob不知道Contact URL中的gruu,Bob必須自己修復這個(gè)問(wèn)題。如果觸發(fā)的INVITE失敗,Bob必須重新使用refer帶Refer-To URL來(lái)連接Carol,但是需要支持另外一個(gè)要求條件,Replace頭中必須棄用Refer-To頭。


      以上是關(guān)于電話(huà)詢(xún)轉到呼叫流程圖,處理過(guò)程需要27個(gè)具體的步驟。現在,我們配合詳細的SIP消息來(lái)進(jìn)一步解釋以上流程。
      首先是Alice對Bob發(fā)起INVITE請求,進(jìn)行呼叫(F1):
      然后,Bob對Alice發(fā)送180 振鈴(F2):
      緊接著(zhù),Bob對Alice發(fā)送 200 OK(F3):
      Alice對Bob發(fā)送ACK確認消息(F4),雙方呼叫接通。
      Bob對Alice發(fā)送INVITE消息,開(kāi)啟等待狀態(tài)(F5)。
      Alice對Bob發(fā)送200 OK(F6):
      Bo對Alice發(fā)送ACK確認(F7):
      然后,Bob對Carol發(fā)送INVITE請求消息,要求完成Alice的電話(huà)轉接:
      Carol回復Bob一個(gè)180振鈴(F9):
      緊接著(zhù),Carol回復Bob一個(gè)200 OK(F10),注意,這里的參數已經(jīng)增加了一個(gè)gruu。
      Bob對Carol回復了一個(gè)ACK確認消息(F11),開(kāi)始媒體流。
      經(jīng)過(guò)Bob和Carol通話(huà)以后,Bob告訴Carol,Alice想和Carol直接通話(huà),Carol同樣和Alice通話(huà)。Bob將此通話(huà)設置為等待狀態(tài),邀請Alice和Carol通話(huà)。
      Carol對Bob發(fā)送200 OK(F13):
      Bob收到Carol的ACK消息(F14),Bob和Carol最終確定轉接。
      然后Bob對Alice發(fā)送REFER消息,開(kāi)始通知Carol的地址:
      Alice收到202 接受消息(F16),表示接受這個(gè)轉接。
      緊接著(zhù),Alice繼續對Bob發(fā)送NOTIFY消息(F17),通知Bob一個(gè)訂閱事件,告知Alice電話(huà)轉接的流程處理狀態(tài)。
      Bob收到Alice 200 OK(F18):
      獲悉了Bob已經(jīng)知道訂閱事件以后,Alice開(kāi)始對Carol發(fā)送INVITE請求(F19),并且替換了Bob。
      Carol對Alice 發(fā)送200 OK(F20):
      然后,Alice對Carol發(fā)送ACK確認消息(F21),開(kāi)始RTP語(yǔ)音流,轉接完成。
      因為,Alice和Carol已經(jīng)開(kāi)始RTP流的交互,所以緊接著(zhù),Carol需要對Bob進(jìn)行掛機處理。因此,Carol對Bob發(fā)送BYE消息,雙方掛機(F22)。
      Bob對Carol發(fā)送200 OK,執行掛機處理(F22):
      到現在為止,Alice仍然需要告訴Bob電話(huà)轉接狀態(tài),因此,Alice對Bob發(fā)送第二個(gè)NOTIFY事件,通知Bob電話(huà)已經(jīng)完全成功轉接(F24):
      Bob發(fā)送一個(gè) 200 OK消息,表示收到從事件(F25):
      然后Bob對Alice掛機,發(fā)送BYE消息(F26):
      最后,Alice對Bob發(fā)送200 OK(F27),詢(xún)轉正式流程結束。
      參考資料:
      https://tools.ietf.org/html/rfc4579
      https://www.rfc-editor.org/rfc/rfc5359.txt
      https://tools.ietf.org/html/rfc7088
      https://www.rfc-editor.org/rfc/rfc3515.txt
      https://tools.ietf.org/html/rfc3840
      https://tools.ietf.org/html/rfc3891
      https://support.sonus.net/display/SBXDOC51/GRUU+Support
      www.freepbx.org.cn
      https://svn.resiprocate.org/viewsvn/resiprocate/main/resip/recon/MOHParkServer/doc/MOHParkServer_User_Documentation.pdf?revision=8937&view=co
      http://ijsetr.com/uploads/463152IJSETR13872-273.pdf
      https://tools.ietf.org/html/rfc3665
      https://tools.ietf.org/html/rfc3265
      https://tools.ietf.org/html/rfc3515
      https://tools.ietf.org/html/rfc4317


      關(guān)注微信公眾號:asterisk-cn,獲得有價(jià)值的Asterisk行業(yè)分享
      Asterisk freepbx 中文官方論壇:http://bbs.freepbx.cn/forum.php
      Asterisk freepbx技術(shù)文檔: www.freepbx.org.cn
      融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com
      Asterisk/FreePBX中國合作伙伴,官方qq技術(shù)分享群(3000千人):589995817
    【免責聲明】本文僅代表作者本人觀(guān)點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對文中陳述、觀(guān)點(diǎn)判斷保持中立,不對所包含內容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

    專(zhuān)題

    CTI論壇會(huì )員企業(yè)

    亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 乐业县| 安乡县| 盐亭县| 昭通市| 丹巴县| 富锦市| 万州区| 宽城| 垣曲县| 武乡县| 衢州市| 申扎县| 杂多县| 同德县| 陇西县| 永川市| 余干县| 东乌珠穆沁旗| 秀山| 射洪县| 廊坊市| 方正县| 青铜峡市| 芒康县| 兴安盟| 灵山县| 尉犁县| 行唐县| 林口县| 湛江市| 中宁县| 湟源县| 泽普县| 贡觉县| 金阳县| 库车县| 陇川县| 介休市| 黎城县| 永和县| 微博| http://444 http://444 http://444 http://444 http://444 http://444