簡介
本檔案介紹思科客戶語音入口網站(CVP)在呼叫的會話刷新引數方面的角色和限制。
必要條件
需求
本文件沒有特定需求。
採用元件
本文中的資訊係根據以下軟體和硬體版本:
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
CVP充當入口和語音XML(VXML)網關、思科統一通訊管理器(CUCM)或任何其他出口終端之間的背靠背使用者代理(B2BUA)。會話計時器在CVP兩端的兩個端點之間協商。它會將所有接頭從一條腿傳遞到另一條腿。
在呼叫中,CVP會自行向輸入支路發起REINVITE請求,其中有三個點:
- 完成IVR後,CVP將REINVITE傳送到主叫方進行回鈴。
- 在代理(或由於重新查詢而導致的後續代理分支)應答後,CVP向入口分支傳送REINVITE
- Whisper完成後,CVP會向輸入支路傳送REINVITE。
問題
如果在入口和IVR端點之間協商了以前的會話計時器(CVP介於兩者之間),如果CVP跳過REINVITE中會話計時器相關的標頭,則端點可以假設其他端點為刷新器。因此,由於舊會話過期,呼叫將被丟棄(例如:30分鐘時呼叫中斷)。 此圖說明情境:
在CVP 11.6中,CVP會處理列出的案例中的會話報頭。在所有其他情況下,CVP都可以將這些報頭從一個分支傳輸到另一個分支。
case Ingress-UAC刷新引數刷新引數
應請求提供支助
------------------------------------------------------------------
1 Y無uas或uac
2 Y uac uac
3年UAS
以下是在座席回答問題時引入的更改:
- CVP根據應答請求中的內容確定應答哪個代理分支,並根據該應答請求確定必須在報頭中向入口傳送的內容。
- 當CVP重新向入口發起REINVITE(CVP發起代理轉接或密語完成後),它根據200 OK中從CUCM收到的內容將角色分配給入口。詳情見表1.1。
- 對於傳送到密語支路的INVITE,您可以忽略或根據200 OK從CUCM收到的內容設定刷新。密語支路在VXML網關上有15s計時器。因此,這不是問題。
以下是座席腿接聽呼叫(無低語)的各種情況:
表1.1
入口在初始INVITE中傳送 |
IVR響應 |
什麼是CUCM |
200 OK中的CUCM響應 |
CVP向Ingress傳送重新INVITE的內容 |
Session-Expires:<值> |
Session-Expires:<value>;refresher=uac |
Session-Expires:<值> |
Session-Expires:<value>;refresher=uac |
Session-Expires:<value>;refresher=uas |
Session-Expires:<值> |
Session-Expires:<value>;refresher=uas |
Session-Expires:<值> |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uac |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uac |
Session-Expires: <value>;refresher=uac |
Session-Expires:<value>;refresher=uac |
Session-Expires: <value>;refresher=uac |
Session-Expires:<value>;refresher=uac |
Session-Expires:<value>;refresher=uas |
從表1.1中,CVP可在收到200 OK時確定代理端的角色。對於所有情況,REINVITE向ingress轉變角色以確保更新得到處理。
啟用密語時,代理分支已應答(已交換INVITE/200/ACK),CVP向入口傳送REINVITE,一旦收到200 OK,REINVITE就會傳送到代理。
對於REINVITE for ingress,請使用表1.1;對於REINVITE for agent,請使用下表:
來自ingress 200 OK的內容用於重新邀請 |
CVP重新邀請至代理時必須傳送的內容 |
Session-Expires: <value>;refresher=uac |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uas |
Session-Expires:<value>;refresher=uac |
解決方案
從入口處收到初始INVITE時可使用以下任一選項:
Session-Expires: <value>
Session-Expires: <value>;refresher=uac
Session-Expires:<value>;refresher=uas
理想情況下,為了保持配置簡單,解決方案級別建議是將入口網關配置為refresher=uac,以便CVP接收的INVITE具有定義的角色,否則200 OK from IVR確定角色。
解決此問題的方法見文檔錯誤。
入口上需要的Session-Expires配置
特定用途可在此處處理:
- 會話刷新協商的兩段之間存在差異,導致呼叫在30分鐘時斷開。標籤當CUCM傳送原因為=41的BYE。
- 不同之處在於Telco不刷新會話,而CUCM希望將會話刷新作為強制引數(需要:計時器)(Telco-----CUBE----CVP----CUCM)。
- 在這種情況下,CVP或入口網關(CUBE)需要扮演會話刷新者的角色,以將刷新INVITE傳送到CUCM。
- 但CVP無法生成刷新INVITE。它只在CUBE和CUCM之間傳遞。
- 因此,您需要在此將CUBE設定為刷新程式。
- 要使CUBE成為刷新程式,可以將此配置應用於CUBE並監控30分鐘的呼叫。drop。這不會影響生產,並且立即應用配置更改。
conf t
voice service voip
sip
min-se 1800 session-expires 1800
session refresh
end
特定場景中的常見問題:
1.當座席聽到低聲通知時,誰是刷新者。 在這種情況下,CVP是座席和密語支路的UAC,Session-Expires值是多少?
在這種情況下,呼叫者/入口網關將被指定為刷新者。
2.當CVP已經知道何時啟動客戶端事務或伺服器事務時,為什麼CVP必須儲存來自入口的刷新。CVP不支援會話刷新,當它將REINVITE作為刷新程式傳送到入口時,它始終可以動態修改/新增報頭?
目前,CVP不支援第三種組合,其中CUCM/VXML網關負責刷新。無論哪種情況,CVP都需要儲存有關誰負責更新角色的資訊,即GW或CUCM。因此,它在出站請求和響應中包含刷新引數。