丁常坤,夏 兵,王江淮,程 磊
(科大國(guó)創(chuàng)云網(wǎng)科技有限公司客服PBU,合肥 230088)
從最早的基于聲能與電能相互轉(zhuǎn)換并用話音電流來(lái)傳輸信息的電話通信,到如今基于網(wǎng)絡(luò)與軟件來(lái)實(shí)現(xiàn)的視頻通話,可以說(shuō)遠(yuǎn)程信息傳輸?shù)氖侄问撬腥硕紩?huì)密切關(guān)注的事情,而在現(xiàn)今社會(huì),視頻通話所占比重更是越來(lái)越大。越來(lái)越多的企業(yè)在與客戶(hù)建立溝通橋梁時(shí)選擇了視頻通話的方式?;诖耍谝曨l通話服務(wù)相關(guān)領(lǐng)域,如何保證一個(gè)視頻通話能夠迅速且有序地建立、實(shí)時(shí)且流暢的維持就成了重點(diǎn)。
科大國(guó)創(chuàng)軟件股份有限公司是致力于云計(jì)算、大數(shù)據(jù)、物聯(lián)網(wǎng)和人工智能等領(lǐng)域的研發(fā)及應(yīng)用,打造軟硬件一體化智能產(chǎn)品的高科技上市企業(yè)。立足行業(yè)需求、解決行業(yè)重點(diǎn)問(wèn)題,在實(shí)時(shí)視頻的接入與排隊(duì)問(wèn)題方面,科大國(guó)創(chuàng)軟件股份有限公司投入了多名專(zhuān)業(yè)技術(shù)人員,著眼實(shí)際、聚焦關(guān)鍵,為相關(guān)企業(yè)提供一個(gè)良好的解決方案,提升客戶(hù)的使用體驗(yàn),幫助相關(guān)企業(yè)打造好一個(gè)穩(wěn)定可靠的視頻通話服務(wù)。
實(shí)時(shí)視頻接入與排隊(duì)技術(shù)能夠?yàn)槠髽I(yè)提供許多便利之處,尤其后疫情時(shí)代對(duì)客戶(hù)的要求越來(lái)越高,構(gòu)建電話、文字、視頻三種媒體于一體的融媒體客服,豐富媒體服務(wù)形式,拓展服務(wù)渠道和服務(wù)影響面,協(xié)同互轉(zhuǎn)、能力共享,整體提升客服交互能力,推進(jìn)融媒體客服生態(tài)良性建設(shè)。
實(shí)時(shí)視頻接入與排隊(duì)技術(shù)能夠基于互聯(lián)網(wǎng),通過(guò)PC 或手機(jī)之間實(shí)時(shí)傳送人的語(yǔ)音和圖像,這種便利的技術(shù)手段,自然也是眾多行業(yè)關(guān)注的一個(gè)重點(diǎn)。從最早發(fā)展起來(lái)的PC?to?PC 形式,到逐漸成為市場(chǎng)熱點(diǎn)的Phone?to?Phone 形式,融媒體客服通話的迅速普及是在持續(xù)發(fā)生著的。對(duì)視頻通話熱點(diǎn)趨勢(shì)的關(guān)注,也使得眾多企業(yè)持續(xù)著這方面的軟件開(kāi)發(fā)。
科大國(guó)創(chuàng)軟件股份有限公司以中國(guó)科技大學(xué)為技術(shù)依托,以擅長(zhǎng)的基于網(wǎng)絡(luò)的軟件技術(shù)、數(shù)據(jù)庫(kù)技術(shù)、云計(jì)算技術(shù)、移動(dòng)互聯(lián)技術(shù)、系統(tǒng)集成技術(shù)、智能控制技術(shù)、網(wǎng)絡(luò)終端產(chǎn)品的研究與開(kāi)發(fā)技術(shù),立足于實(shí)際,以提供良好、完整的融媒體客服通話服務(wù)能力為目標(biāo),重點(diǎn)解決融媒體客服通話的實(shí)時(shí)接入與排隊(duì)問(wèn)題,在已取得一定成果的現(xiàn)階段,繼續(xù)深耕與研究,為相關(guān)企業(yè)提供一個(gè)優(yōu)秀的產(chǎn)品與服務(wù)。
伴隨著后疫情時(shí)代線上服務(wù)的崛起,融媒體客服蓬勃發(fā)展,風(fēng)險(xiǎn)投資成本也給該產(chǎn)業(yè)的繁榮注入了動(dòng)力。目前融媒體客服還處于發(fā)展初期階段,未來(lái)一段時(shí)間內(nèi),基于客服呼叫平臺(tái)和WebRTC 的實(shí)時(shí)視頻接入與排隊(duì)技術(shù)將在融媒體應(yīng)用中發(fā)揮作用,融合視頻客服、電話客服、文字客服等客服接入方式,實(shí)現(xiàn)三種方式無(wú)縫切換,提升渠道協(xié)同交互能力。
客服呼叫平臺(tái)是一個(gè)電話軟交換平臺(tái),具有很強(qiáng)的可伸縮性,支持跨平臺(tái)、擴(kuò)展性良好、配置靈活,包含了SIP 服務(wù)器、STUN 服務(wù)器、視頻轉(zhuǎn)發(fā)服務(wù)等??梢宰鳛楹艚兄行模ㄅ抨?duì)機(jī))、交換機(jī)、多媒體網(wǎng)關(guān)以及多媒體服務(wù)器等使用。
客服呼叫平臺(tái)由一個(gè)穩(wěn)定的核心以及外圍模塊組成,外圍模塊根據(jù)它的功能和用途的不同又分為EndPoint、Codec、Application 等不同的類(lèi)別。內(nèi)部使用線程模型來(lái)處理高并發(fā)的請(qǐng)求,每個(gè)連接都在單獨(dú)的線程中進(jìn)行處理,不同的線程通過(guò)Mutex互斥訪問(wèn)共享資源,通過(guò)消息和異步事件等方式進(jìn)行通信。
WebRRTC 指的是網(wǎng)頁(yè)實(shí)時(shí)通信(web real?time communication),可以讓用戶(hù)在基于瀏覽器的基礎(chǔ)上實(shí)現(xiàn)實(shí)時(shí)通信。WebRTC無(wú)須在瀏覽器上安裝,不需要任何插件,通過(guò)在瀏覽器調(diào)用JavaScript接口,雙方建立連接后,在瀏覽器上實(shí)現(xiàn)網(wǎng)頁(yè)端的數(shù)據(jù)交互,完成通信[1]。WebRTC 通過(guò)接口創(chuàng)立的信道并不像WebSocket一樣,雙方建立實(shí)時(shí)通信是通過(guò)信令的交互,建立瀏覽器之間(peer?to?peer)的信道,通過(guò)信道我們可以發(fā)送任何的數(shù)據(jù),比如文件、文本、視頻等不同類(lèi)型的數(shù)據(jù),不需要經(jīng)過(guò)服務(wù)器。
整體的架構(gòu)分為應(yīng)用層和核心層。應(yīng)用層主要提供的是相關(guān)業(yè)務(wù)邏輯的API,核心層提供應(yīng)用層需要的核心API。
(1)第一層為C++ API,其中最主要的是PeerConnection,這個(gè)接口需要重點(diǎn)學(xué)習(xí)和掌握。
(2)第二層為Session層,為上下文管理層,應(yīng)用里的音頻和視頻及非音視頻的數(shù)據(jù)處理邏輯都可以在這層進(jìn)行。
(3)第三層為引擎和傳輸層,包括音頻引擎和視頻引擎,以及音視頻的傳輸,這也是整個(gè)架構(gòu)中最重要的一層。
(4)第四層與硬件相關(guān),包括音視頻的采集和網(wǎng)絡(luò)的IO。
歷年來(lái)科大國(guó)創(chuàng)以市場(chǎng)為導(dǎo)向,開(kāi)展基于客服呼叫平臺(tái)和WebRTC 的實(shí)時(shí)視頻接入與排隊(duì)技術(shù)研究,在科大國(guó)創(chuàng)的基礎(chǔ)技術(shù)和產(chǎn)品之上進(jìn)行架構(gòu)設(shè)計(jì),構(gòu)建語(yǔ)音、文字、視頻三種媒體于一體的融媒體客服,豐富媒體服務(wù)形式,拓展服務(wù)渠道和服務(wù)影響面,協(xié)同互轉(zhuǎn)、能力共享,整體提升客服交互能力??傮w架構(gòu)主要由FreeSwitch 服務(wù)、坐席服務(wù)、用戶(hù)服務(wù)、監(jiān)控服務(wù)、報(bào)表服務(wù)、以及AI機(jī)器人服務(wù)構(gòu)成。
(1)FreeSwitch服務(wù)。FreeSwitch是一個(gè)跨平臺(tái)的、伸縮性極好的、免費(fèi)的、多協(xié)議的電話軟交換平臺(tái),F(xiàn)reeSwitch 服務(wù)的主要作用是用于用戶(hù)呼叫排隊(duì)、分發(fā),以及技能隊(duì)列、分機(jī)號(hào)等管理,作為排隊(duì)機(jī)和信令服務(wù)器功能,呼叫時(shí)按照指定的排隊(duì)策略分配坐席代表[2]。
(2)坐席服務(wù)。提供給坐席工作臺(tái)服務(wù)的能力,主要包括文字、圖片、表情消息、語(yǔ)音流、語(yǔ)音通話、視頻通話等通信服務(wù),以及提供通信網(wǎng)絡(luò)檢測(cè)、桌面共享、白板、抓拍視頻圖像等功能。
(3)用戶(hù)服務(wù)。提供給用戶(hù)融媒體通信的能力,主要包括文字問(wèn)答、轉(zhuǎn)人工、文字消息、語(yǔ)音通話、視頻通話等通信服務(wù),以及提供滿意度評(píng)價(jià)、網(wǎng)絡(luò)檢測(cè)等功能。
(4)監(jiān)控服務(wù)。提供實(shí)時(shí)監(jiān)控、現(xiàn)場(chǎng)監(jiān)控、大屏監(jiān)控、特殊會(huì)話監(jiān)控的能力,主要包括客服狀態(tài)監(jiān)控、客服負(fù)載監(jiān)控、訪客排隊(duì)監(jiān)控、會(huì)話數(shù)監(jiān)控、訪客來(lái)源監(jiān)控、會(huì)話超時(shí)預(yù)警、滿意度預(yù)警等功能,監(jiān)控系統(tǒng)運(yùn)行情況、服務(wù)質(zhì)量情況。
(5)統(tǒng)計(jì)分析服務(wù)。提供融媒體通信相關(guān)的統(tǒng)計(jì)分析能力,主要包括當(dāng)前會(huì)話、歷史會(huì)話、質(zhì)檢統(tǒng)計(jì)、消息收發(fā)量、視頻接入量、機(jī)器人使用量等統(tǒng)計(jì)分析功能。
(6)AI 機(jī)器人服務(wù)。提供自動(dòng)應(yīng)答機(jī)器人的能力,可接入APP、QQ、微信等多種載體終端,全面覆蓋用戶(hù)日常使用媒介,讓用戶(hù)隨時(shí)可用、隨處可用;AI 機(jī)器人服務(wù)通過(guò)先進(jìn)智能的人機(jī)對(duì)話引擎,精準(zhǔn)理解用戶(hù)真實(shí)意圖,并給出準(zhǔn)確且專(zhuān)業(yè)的應(yīng)答,可回復(fù)用戶(hù)文字、語(yǔ)音、圖片、視頻等多種形式,真正成為用戶(hù)的貼心助手。
(7)穿透服務(wù)。提供解決復(fù)雜公網(wǎng)環(huán)境無(wú)法穿透問(wèn)題的方案,Coturn 集成了stun+turn 協(xié)議,實(shí)現(xiàn)NAT 檢測(cè),穿透就需要通過(guò)stun 協(xié)議,NAT 檢測(cè)無(wú)法進(jìn)行穿越時(shí)就需要通過(guò)turn 服務(wù)進(jìn)行流媒體的轉(zhuǎn)發(fā)了,而Coturn 就是將兩者協(xié)議進(jìn)行整合并進(jìn)行擇優(yōu)優(yōu)化。
(8)流媒體服務(wù)。提供轉(zhuǎn)碼、組內(nèi)通訊、錄制等流媒體服務(wù)的能力,主要包括群組通信、媒體流的轉(zhuǎn)碼/錄制/廣播/路由、高級(jí)媒體處理相關(guān)的機(jī)器視覺(jué)/視頻索引/增強(qiáng)現(xiàn)實(shí)/語(yǔ)音分析。
圖1 總體架構(gòu)
實(shí)時(shí)音視頻實(shí)現(xiàn)多種接入方式,系統(tǒng)的應(yīng)用范圍廣泛,提供多渠道接入,分模塊建設(shè),系統(tǒng)復(fù)用性高,減少系統(tǒng)間的耦合性,引入容器技術(shù),采用微服務(wù)架構(gòu),可做到靈活性高,可方便擴(kuò)展。
客戶(hù)端和坐席端分別向FreeSwitch 進(jìn)行注冊(cè),客戶(hù)端發(fā)起呼叫請(qǐng)求到FreeSwitch,F(xiàn)ree?Switch 執(zhí)行內(nèi)部排隊(duì)策略,尋找空閑坐席代表,將呼叫的請(qǐng)求分發(fā)到指定的坐席代表。坐席代表在接收到客戶(hù)端的音視頻會(huì)話的請(qǐng)求后,雙方通過(guò)FreeSwitch 進(jìn)行SDP 信息交換。在完成媒體協(xié)商和網(wǎng)絡(luò)協(xié)商后,雙方開(kāi)始建立會(huì)話,音視頻會(huì)話由媒體服務(wù)器進(jìn)行傳輸。
實(shí)時(shí)音視頻的工作流程如圖2所示。
圖2 音視頻通話工作流程
(1)客戶(hù)端與座席端跟FreeSwitch 建立連接,并向FreeSwitch注冊(cè)。
(2)客戶(hù)端發(fā)起呼叫請(qǐng)求到FreeSwitch,F(xiàn)reeSwitch 執(zhí)行內(nèi)部排隊(duì)策略,尋找空閑坐席代表,將呼叫的請(qǐng)求分發(fā)到指定的坐席代表。
(3)客戶(hù)端打開(kāi)本地音頻設(shè)備,創(chuàng)建Peer?Connection。
(4)客戶(hù)端將媒體數(shù)據(jù)加入到本地流中,然后客戶(hù)端再將本地流添加到PeerConnection中。
(5)客戶(hù)端生成本地offer(SDP?媒體信息)協(xié)議。
(6)客戶(hù)端設(shè)置本地描述description。
(7)客戶(hù)端將offer(SDP?媒體信息)發(fā)送至FreeSwitch,再由FreeSwitch轉(zhuǎn)發(fā)至遠(yuǎn)端B。
(8)座席端同樣進(jìn)行步驟(2)~(5)操作后,接收客戶(hù)端發(fā)送過(guò)來(lái)的SDP 信息,進(jìn)行媒體交換,做出應(yīng)答,將座席端的SDP 信息發(fā)送至FreeSwitch,由FreeSwitch轉(zhuǎn)發(fā)至客戶(hù)端。
(9)步驟(6)、(7)主要完成了客戶(hù)端、座席端(SDP)媒體信息交換,根據(jù)SDP信息雙方創(chuàng)建相對(duì)應(yīng)的音視頻通道。
(10)開(kāi)啟candidate(網(wǎng)絡(luò)信息)數(shù)據(jù)收集(客戶(hù)端、座席端:IP 地址信息交換(本地IP 地址、公網(wǎng)IP地址))。
(11)客戶(hù)端收集本地的candidate(網(wǎng)絡(luò)信息),將candidate通過(guò)FreeSwitch發(fā)送至座席端,座席端保存客戶(hù)端的candidate(網(wǎng)絡(luò)信息)。
(12)座席端收到客戶(hù)端的candidate(網(wǎng)絡(luò)信息),做出應(yīng)答,將座席端的candidate 信息通過(guò)信令服務(wù)器發(fā)送至客戶(hù)端。
(13)在完成媒體協(xié)商和網(wǎng)絡(luò)協(xié)商后,雙方開(kāi)始建立會(huì)話,音視頻會(huì)話由媒體服務(wù)器進(jìn)行傳輸。
(1)多媒體統(tǒng)一接入。兩個(gè)客戶(hù)端如需進(jìn)行通話,需先與FreeSwitch 建立連接,客戶(hù)端與FreeSwitch 建立連接的方式是通過(guò)WebSocket 發(fā)送信令,將客戶(hù)端的信息注冊(cè)到FreeSwitch 中去,F(xiàn)reeSwitch 在這充當(dāng)?shù)氖切帕罘?wù)器,客戶(hù)端與FreeSwitch 交互發(fā)送的都是SIP 信息,實(shí)現(xiàn)APP、網(wǎng)頁(yè)、微信、QQ、微博等不同渠道不同用戶(hù)的統(tǒng)一接入[3]。
(2)多媒體統(tǒng)一排隊(duì)。FreeSwitch 的排隊(duì)流程簡(jiǎn)單來(lái)說(shuō)就是通過(guò)FreeSwitch 將客戶(hù)撥打進(jìn)的呼叫通過(guò)內(nèi)部指定的排隊(duì)策略分配到指定的坐席代表所在的終端[4]。FreeSwitch 排隊(duì)的策略有ring?all(選擇所有坐席)、long?idel?agent(選擇空閑時(shí)間最長(zhǎng)的坐席)、round?down(輪)、top?down(按固定的順序選擇)、agent?with?least?talk?time(總選擇通話時(shí)間最短的坐席)、agent?with?fewest?calls(總選擇接話次數(shù)最少的坐席)、sequentially?by?agent?order(根據(jù)梯隊(duì)和順序選擇)、random(隨機(jī)選擇)。
(3)多媒體通信。基于FreeSwitch 的信令信息交互、媒體協(xié)商,以及基于Coturn 的網(wǎng)絡(luò)協(xié)商,通過(guò)WebRtc 進(jìn)行客戶(hù)端和服務(wù)端之間P2P方式的融媒體客服通信[5]。
隨著實(shí)時(shí)視頻接入與排隊(duì)技術(shù)的發(fā)展逐漸成熟,各個(gè)領(lǐng)域都在開(kāi)展融媒體客服方向的創(chuàng)新實(shí)踐,融媒體客服應(yīng)用的范圍極為廣泛,在政企服務(wù)、視頻會(huì)議、在線教育、社交娛樂(lè)、在線醫(yī)療等行業(yè)均有較多的應(yīng)用場(chǎng)景。例如在企業(yè)應(yīng)用方面有如下相關(guān)的應(yīng)用場(chǎng)景:
(1)終端故障可視化指導(dǎo)場(chǎng)景。針對(duì)一線運(yùn)維人員工作中遇到的業(yè)務(wù)專(zhuān)業(yè)問(wèn)題和技術(shù)難點(diǎn)問(wèn)題,通過(guò)語(yǔ)音溝通、視頻溝通、屏幕展示、圖文溝通等交互,進(jìn)行終端故障可視化指導(dǎo)、排查,簡(jiǎn)化客戶(hù)服務(wù)流程、縮短業(yè)務(wù)處理時(shí)間,疑難問(wèn)題可由客服坐席遠(yuǎn)程協(xié)助指導(dǎo)完成操作,提升客戶(hù)服務(wù)效率,提高客戶(hù)體驗(yàn)。
(2)營(yíng)銷(xiāo)應(yīng)用場(chǎng)景。通過(guò)在線進(jìn)行如智能組網(wǎng)產(chǎn)品的視頻演示講解,讓客戶(hù)充分了解產(chǎn)品的內(nèi)容以及產(chǎn)品的價(jià)值,并促進(jìn)客戶(hù)與營(yíng)銷(xiāo)人員對(duì)于客戶(hù)詳細(xì)需求的溝通,提升客服產(chǎn)品認(rèn)知度。同時(shí)針對(duì)目前很多營(yíng)業(yè)廳才能辦理的業(yè)務(wù),通過(guò)在線視頻認(rèn)證等功能,引導(dǎo)客戶(hù)在線辦理,提高業(yè)務(wù)的在線辦理率,促進(jìn)企業(yè)網(wǎng)增收。
(3)復(fù)雜投訴處理場(chǎng)景。針對(duì)投訴咨詢(xún)單在線受理,在受理過(guò)程中語(yǔ)音播報(bào)信息為主,對(duì)于復(fù)雜信息或溝通不暢可文本信息發(fā)送,同時(shí)同屏核對(duì)確認(rèn)信息,讓客戶(hù)清晰了解工單的詳細(xì)信息,確??蛻?hù)訴求信息準(zhǔn)確可靠。讓客戶(hù)真實(shí)體驗(yàn)到服務(wù)過(guò)程以及服務(wù)過(guò)程中呈現(xiàn)的信息,真實(shí)可見(jiàn),提升客戶(hù)服務(wù)感知,提高客戶(hù)問(wèn)題一次性解決率。
綜上所述,傳統(tǒng)的線上語(yǔ)音服務(wù)存在著復(fù)雜信息溝通不暢、客戶(hù)感知差等多種問(wèn)題,尤其后疫情時(shí)代線上服務(wù)的要求越來(lái)越高,驅(qū)動(dòng)企業(yè)加強(qiáng)融媒體客服服務(wù)的手段。通過(guò)前文的介紹,本文提供了基于WebRTC 與FreeSwitch 技術(shù)的實(shí)時(shí)視頻接入和排隊(duì)方案,保證了視頻通話可以穩(wěn)定地接入,客戶(hù)通話按照既定策略進(jìn)入排隊(duì)機(jī),有序地被客服人員接聽(tīng),使得企業(yè)的服務(wù)效率和用戶(hù)的使用體驗(yàn)都獲得明顯提升。融媒體客服作為創(chuàng)新的客戶(hù)服務(wù)方式,是在線渠道的方便快捷和視頻面對(duì)面溝通的服務(wù)場(chǎng)景的有機(jī)融合,具備了文字溝通、在線語(yǔ)音服務(wù)溝通和視頻溝通的多媒體服務(wù)模式,實(shí)現(xiàn)三種方式無(wú)縫切換,提升渠道協(xié)同交互能力,提升客戶(hù)服務(wù)體驗(yàn),提升坐席工作效率,推進(jìn)融媒體客服生態(tài)良性建設(shè)。