95碼號被用于客服電話已是企業實力的體現,目前多用于銀行、證券、保險、民航、物流、石油石化、鐵路運輸等名企領域。這些大型的企業在全國設置有多個呼叫中心,分別受理全國各地用戶的電話咨詢業務。但是,大多數企業的呼叫中心是分布式管理,每個呼叫中心單獨落地、布線,不但在電信資源上大大浪費,難以統一管理,還會因為部分地區落地問題,影響客戶的呼入體驗。
智能云調度是玖云平臺推出的一款服務于銀行、保險、證券、物流、航空、互聯網以及其他在全國各地設有呼叫中心的大型企業客戶的語音服務產品,它可以幫助企業完成95客服號碼的申請、落地,并為該呼叫中心呼入、呼出話務統一調度、托管服務,解決了上述企業多呼叫中心資源浪費、管理難等問題。
以下是由玖云平臺的開發工程師張財,站在一名技術人員的角度詳細解析了“智能云調度”是如何幫助多呼叫中心企業的話務做合理調度的,以及智能云調度這款產品背后的設計邏輯。
問題一:如何為客戶的多個呼叫中心分配呼入話務?
智能云調度系統會為每個95客戶提供一個數據配置平臺,客戶可以在上面配置自己的數據,比如增加、刪減自己的呼叫中心,配置每個呼叫中心的服務時間、所屬區域、對應的中繼編號等。
當一個用戶132********撥打客戶的95號碼時,智能云調度系統會根據被叫95號碼去數據庫取出該號碼的所有配置信息。系統再根據主叫號碼132********再去數據庫找到其所屬的地域,如深圳、廣州、東莞等。系統根據此地域信息再去找與之匹配的所有呼叫中心,依次比較呼叫中心的服務時間是否包含當前的系統時間,如果包含,那么就確定將通話轉到該呼叫中心。
如此設計,能確保將呼叫轉到就近的呼叫中心,這樣能確保通話質量,節約用戶的成本。同時,通過比較時間,我們可以選擇服務時間相匹配的呼叫中心,確保通話能合理的分配。
問題二:是否對每條中繼設有呼叫上限?
智能云調度系統對每條中繼有呼叫上限限制,此上限值是用戶在后臺配置的,目的是避免一條中繼線路經常滿線,如果經常滿線的話,很可能影響通話體驗。
當一個invite呼叫請求到達智能云調度系統后,系統會根據此sip消息的callid分配一個會話唯一表示uuid,保存到本地內存。同時系統會根據被叫95碼號去數據庫取出相關的數據,如該呼叫中心的所有中繼線配置,根據中繼線的權重配置,取出當前權重最大的中繼線路和它的并發上限,如中繼編號0001,上限999。所有相關的數據取出來以后,系統會再發起一個tcp請求到計數服務器,將中繼編號和上限值傳給計數服務器。
計數服務器收到此請求就會去本地數據庫查找該中繼的數據,如果沒有相應的記錄,那么就增加一條新記錄,并且將其并發量參數加一。如果已經存在該中繼對應的數據,那么直接將其并發量參數加一,若此發量參數已經超過并發上限,那么計數服務器返回錯誤消息,此消息表示當前中繼已經達到上限,資源耗盡。智能云調度系統收到這個錯誤消息后,并不會因此掛斷通話,而是繼續選擇下一條可用的中繼線路,再發起一個tcp請求到計數服務器,把該中繼的中繼編號和對應的上限值傳到計數服務器。如果還失敗,那么再繼續選擇下一條,如此循環,直到計數服務返回成功的響應為止。如果所有的中繼線路都占用滿了,那么智能云調度系統會將此通話轉到一個自動代答的放音服務器,該服務器會向用戶播放語音(如“坐席繁忙,請稍后再撥”),確保用戶有良好的體驗。智能云調度系統收到計數服務器成功的響應后,會記錄當前的中繼編號到本地內存,當掛機消息來到的時候,系統會取出該中繼編號。
當一個bye消息請求到達智能云調度系統后,系統會根據此sip消息的callid查找到會話唯一表示uuid,根據此uuid,系統利用此uuid發起一個tcp請求到計數服務器,計數服務器收到此請求后,會去數據庫找到與之對應的中繼編號數據,將該中繼編號的并發數據參數減一。
問題三:如何保證一個中繼不會重復計數加一或者重復釋放減一呢?
之前已經提到過,智能云調度系統在收到一個invite呼叫請求的時候,會在內存中保存一個會話唯一標識uuid,此標識一直存在知道通話掛斷。智能云調度系統在發數據給計數服務器的時候也會帶上此uuid。計數服務器會針對此uuid和該請求的中繼編號,建立一個鍵值對,如uuid----trunkid,再增加中繼的使用計數。因為每個會話的uuid都是唯一的,所以相當于每個會話只發出一個增加計數的請求,所以也就不存在前面提到的重復計數的情況。而當智能云調度收到一個bye的sip消息后,系統會根據此sip消息的callid查找到會話唯一表示uuid,會將此uuid傳給計數服務器,計數服務器收到釋放中繼計數的請求后,會根據此uuid和鍵值對uuid----trunkid,找到相應的中繼編號trunkid,然后將該中繼編號的并發參數減一,最后釋放鍵值對uuid----trunkid。那么如果下一個同樣的uuid釋放請求到達后,就無法找到相應的鍵值對,也就無法再對該中繼編號的并發參數減一,從而達到準確計數的功能。
問題四:為何要增加一個自動代答的功能?
試想一下,你如果撥打一個服務熱線,一直沒有任何聲音提示,最后呼叫失敗而掛機,那么你肯定一臉茫然,不知道是這個號碼的問題還是你自己手機的問題。
所以,如果當一個呼叫中心的所有運營商中繼線路都走不通,或者中繼的呼叫量達到上限的時候,智能云調度系統不會在沒有任何提示的情況下給客戶掛機,而是把該通話轉到一個語言服務器,此語言服務器會提示用戶“當前呼叫中心正忙,請稍后再撥”的提示,如此,用戶會有比較好的體驗。
(新聞稿 2017-08-31)