欧美,精品,综合,亚洲,好吊妞视频免新费观看,免费观看三级吃奶,一级a片女人自慰免费看

您當(dāng)前的位置是:  首頁 > 新聞 > 國內(nèi) >
 首頁 > 新聞 > 國內(nèi) >

最常用的18個SIP呼叫業(yè)務(wù)流程詳解-音樂等待(MoH)

2019-01-25 14:02:21   作者:james.zhu   來源:CTI論壇   評論:0  點(diǎn)擊:


  Music on Hold(MoH),我們稱之為呼叫音樂等待或者音樂等待。顧名思義,就是在等待過程中同時對等待方播放音樂媒體或者語音提示。通過音樂等待的方式會增加用戶的體驗,讓用戶不再感覺等待時間的煩躁。RFC7088專門
  定義了語音等待的規(guī)范。IPPBX的功能熱鍵可啟用MoH功能。
  音樂等待具體的實現(xiàn)方式是,當(dāng)呼叫方(Alice)呼叫被呼叫方(Bob)后,接聽以后,被呼叫方用戶(Bob)設(shè)置此呼叫為等待狀態(tài),在等待狀態(tài)時,通過媒體服務(wù)器對呼叫方播放音樂,或者其他的自定義的語音流。被呼叫方通過對媒體服務(wù)器或者音樂播放服務(wù)器發(fā)送一個REFER消息,攜帶呼叫方信息。然后媒體服務(wù)器對呼叫方發(fā)起INVITE,替換已經(jīng)創(chuàng)建的會話中的被呼叫方。然后,媒體服務(wù)器對被呼叫方(Alice)發(fā)送音樂媒體流服務(wù)。一定時間后,Bob重新設(shè)置等待的呼叫,對呼叫方(Alice)發(fā)送INVITE消息,然后替換會話中的媒體服務(wù)器,變成Bob和Alice之間的通話。注意,這里仍然使用了渲染功能,但是在F5流程中實現(xiàn),表示其等待狀態(tài)開啟。如果Alice拒絕對端的音樂播放,則Alice仍然會處于等待功能,但是會是靜音狀態(tài)(無聲音)。
  通過以上呼叫流程我們知道,完成音樂等待流程處理需要23個flow。其中,F(xiàn)5開啟音樂等待功能,F(xiàn)12開始媒體服務(wù)器替換了Bob,媒體服務(wù)器對Alice發(fā)送音樂數(shù)據(jù)流確認(rèn)。在F12的流程中使用了渲染功能,增加了對automation和byeless功能標(biāo)簽的支持。關(guān)于automation tag 的功能在rfc3840中定義,關(guān)于byeless tag 的支持在rfc4235中定義。rfc3840定義了媒體服務(wù)器的能力支持,rfc4235定義了自動對話事件包管理機(jī)制。具體的細(xì)節(jié)讀者可以參考鏈接資源。以下是一個完整的音樂等待的呼叫流程,配合了SIP消息。我們根據(jù)此圖例來進(jìn)一步說明具體的呼叫流程。
  首先是Alice對Bob發(fā)送INVITE消息(F1),表示要對Bob進(jìn)行呼叫。
  Bob對Alice發(fā)送180 振鈴消息(F2):
  緊接著,Bob對Alice發(fā)送200 ok消息(F3):
  Alice對Bob發(fā)送確認(rèn)ACK(F4),開始語音流傳輸通話。
  之后,Bob把Alice呼叫設(shè)置為語音等待。Bob重新發(fā)送一個新的INVITE攜帶了SDP,并且包含了一個a=sendonly,表示等待開啟。執(zhí)行F5流程。
  然后,Alice回復(fù)Bob 200 OK消息(F6),在SDP中增加了a=reconly 表示接受等待。
  Bob回復(fù)Alice確認(rèn)ACK,無RTP語音流。此時,Bob準(zhǔn)備開始執(zhí)行音樂媒體流服務(wù)。
  Bob對媒體服務(wù)器發(fā)送REFER消息,通知媒體服務(wù)器使用Alice替換Bob。
  媒體服務(wù)器對Bob發(fā)送202 消息,表示接受這個請求(F9)。
  然后媒體服務(wù)器發(fā)送Notify消息(F10):
  Bob發(fā)送200 OK(F11):
  接下來,媒體服務(wù)器對Alice發(fā)送INVITE消息,替換Bob(F12),注意這里的SIP消息中增加了渲染功能的支持,包括automation和byeless功能標(biāo)簽,需要啟用事件包處理,媒體服務(wù)器能力支持等渲染功能。
  以上圖例中沒有顯示contact中的渲染功能標(biāo)簽,但是在RFC5359中的音樂等待(F12)中的消息細(xì)節(jié)是:
  F12 INVITE Music Server -> Alice
  INVITE sips:a8342043f@atlanta.example.com;gr SIP/2.0
  Via: SIP/2.0/TLS server.example.com:5061
  ;branch=z9hG4bK74rf
  Max-Forwards: 70
  From: <sips:music@server.example.com>;tag=0111
  To: <sips:a8342043f@atlanta.example.com;gr>
  Call-ID: a5-75-34-12-76@server.example.com
  CSeq: 1 INVITE
  Referred-By: <sips:bob@biloxi.example.com>     Contact: <sips:music@server.example.com>;automaton
  ;+sip.byeless;+sip.rendering="no"
  Require: replaces
  Replaces: 12345600@atlanta.example.com
  ;from-tag=23431;to-tag=1234567
  Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
  Supported: replaces
  Content-Type: application/sdp
  Content-Length: …
  Alice接受媒體服務(wù)器的請求,對媒體服務(wù)器發(fā)送200 OK(F13):
  媒體服務(wù)器收到200 OK以后,對Alice發(fā)送確認(rèn)ACK消息(F14),然后對Alice發(fā)送音樂媒體流,Alice現(xiàn)在可以聽到媒體服務(wù)器對Alice播放的音樂文件。
  因為已經(jīng)播放媒體流流程開始,Alice對Bob發(fā)送BYE消息(F16):
  Bob接受來自于Alice的BYE消息,對Alice發(fā)送200 OK(F16)。
  媒體服務(wù)器對Bob發(fā)送NOTIFY消息(F17),表示媒體播放成功,并且包含一個200 OK的響應(yīng)消息。
  Bob對媒體服務(wù)器響應(yīng)了一個200 OK(F18),表示收到此提示,同時包含了dialog的確認(rèn)內(nèi)容,包括了REFER需要的call-id,to tga和from tag。
  到此為止,Alice被完全駐留在媒體服務(wù)器的會話中。接下來,Bob可能需要重新接聽Alice的電話,那么,Bob就會重新對Alice發(fā)送INVITE請求消息(F19),然后替換會話中的媒體服務(wù)器。
  Alice對Bob回復(fù)200 OK消息,表示接受替換,重新恢復(fù)到通話狀態(tài)(F20)。
  Bob最后對Alice回復(fù)確認(rèn)ACK(F21),可以恢復(fù)正常通話狀態(tài)。
  雙方通話以后,因為媒體服務(wù)器仍然和Alice有會話的綁定關(guān)系,因此為了結(jié)束媒體播放,Alice仍然需要對媒體服務(wù)器發(fā)送一個BYE消息,表示音樂等待播放結(jié)束(F22):
  媒體服務(wù)器收到200 OK以后,對Alice發(fā)送一個最后的200 OK(F23),告知媒體服務(wù)器已經(jīng)收到Alice的響應(yīng),媒體服務(wù)器正式釋放被駐留在媒體服務(wù)器的會話,解除Alice對媒體服務(wù)器的綁定關(guān)系。Bob和Alice的正常通話才算成功完成,雙方開始正式的通話過程。
  在音樂等待的處理流程中使用了REFER的method來幫助處理音樂等待,具體的RFER規(guī)范在RFC3515中定義,讀者可以查閱學(xué)習(xí)。
  我們的討論中使用了一般的IPPBX媒體服務(wù)器來替換音樂媒體服務(wù)器,用戶也可以通過第三方的音樂服務(wù)的服務(wù)器端來處理音樂文件,用戶使用過程中可能可以獲得更多的體驗。另外,很多媒體服務(wù)器也可以對其播放文件實現(xiàn)自定義處理。例如,在Asterisk/FreePBX或者FreeSWITCH開源平臺都可以通過修改配置文件來實現(xiàn)自定義的MoH文件支持。
  在上面的討論中,我們僅根據(jù)呼叫流程的正常狀態(tài)說明的整個MoH的處理過程。事實上,在MOH的實際部署過程中,讀者會遇到很多的其他的技術(shù)問題。例如,播放文件的格式支持問題,終端兼容性問題,語音播放的帶寬消耗問題,音樂播放的服務(wù)會話的管理問題,回復(fù)消息失敗問題,安全問題等。所以,一般的MoH功能僅在內(nèi)網(wǎng)環(huán)境下使用一般不會出現(xiàn)問題,如果通過第三方的媒體平臺提供所謂的比較靈活的媒體播放業(yè)務(wù),讀者一定要注意以上問題。
  參考資料:
  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,獲得有價值的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
 
【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無關(guān)。CTI論壇對文中陳述、觀點(diǎn)判斷保持中立,不對所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔(dān)全部責(zé)任。

專題

CTI論壇會員企業(yè)