7月24日,第三屆全球互聯(lián)網(wǎng)通信云大會(huì)(WICC 2021)在北京成功召開(kāi),數(shù)千開(kāi)發(fā)者共赴通信云技術(shù)盛宴。本次會(huì)議中,“開(kāi)發(fā)者服務(wù)生態(tài)”被作為重要議題引起了全產(chǎn)業(yè)鏈的廣泛關(guān)注。作為大會(huì)主辦方,全球互聯(lián)網(wǎng)通信云領(lǐng)導(dǎo)廠商融云不但提出了為什么要服務(wù)好開(kāi)發(fā)者的觀點(diǎn),而且還帶來(lái)了怎樣構(gòu)建開(kāi)發(fā)者服務(wù)生態(tài)的解決方案。
例如,在“場(chǎng)景化賦能與創(chuàng)新”技術(shù)分論壇中,融云前端高級(jí)架構(gòu)師臧其龍發(fā)表了《基于語(yǔ)聊房場(chǎng)景化 SDK,探索新一代 PaaS 服務(wù)的演進(jìn)方向》的主題演講,他以融云語(yǔ)聊房Demo為載體,通過(guò)解析語(yǔ)聊房場(chǎng)景的業(yè)務(wù)邏輯和技術(shù)關(guān)鍵點(diǎn),傳遞了真正能讓開(kāi)發(fā)者“開(kāi)箱即用”的產(chǎn)品理念,這不僅是開(kāi)發(fā)者服務(wù)生態(tài)的解決方案之一,還成為技術(shù)分論壇的開(kāi)發(fā)者關(guān)注亮點(diǎn)。
圖1:融云前端高級(jí)架構(gòu)師臧其龍發(fā)表演講
細(xì)致入微,剝離出場(chǎng)景背后的核心業(yè)務(wù)邏輯
在技術(shù)分論壇中,臧其龍首先解釋了封裝首款基于場(chǎng)景化Demo的初衷,“由于年初Clubhouse和Tiya兩款語(yǔ)聊房產(chǎn)品的示范效應(yīng),帶動(dòng)泛娛樂(lè)領(lǐng)域?qū)Ω黝愓Z(yǔ)聊房App旺盛的市場(chǎng)需求。融云針對(duì)這一熱點(diǎn)需求,選擇以語(yǔ)聊房產(chǎn)品作為探索新一代 PaaS 服務(wù)的切入點(diǎn)。”
當(dāng)進(jìn)一步剖析語(yǔ)各類聊房App的功能后,臧其龍發(fā)現(xiàn),雖然它們長(zhǎng)相各異,但場(chǎng)景結(jié)構(gòu)大體相似。其業(yè)務(wù)邏輯可定義為:以上麥下麥的形式來(lái)管理用戶發(fā)布或者訂閱音頻流邏輯的SDK。所謂上麥,即用戶開(kāi)啟發(fā)布音頻流的能力,房間其他人可以聽(tīng)到麥位上人的音頻;下麥則是用戶轉(zhuǎn)變?yōu)槠胀ㄓ脩?,只能?tīng)別人發(fā)布的音頻流,自己不能發(fā)布。
因此,融云出品的語(yǔ)聊房產(chǎn)品遵循這一定義,抽象出語(yǔ)聊房App中的所有功能,形成了較為完整的場(chǎng)景化SDK,并且基于此提供相應(yīng)的Demo,便于開(kāi)發(fā)者“開(kāi)箱即用”。這也是融云首次將IM和RTC的雙重能力在底層完全打通封裝成一個(gè)SDK接口,提供給開(kāi)發(fā)者。
隱藏技術(shù)設(shè)計(jì)難點(diǎn),開(kāi)發(fā)者只需關(guān)注自身業(yè)務(wù)訴求
融云在研發(fā)過(guò)程中,通過(guò)對(duì)語(yǔ)聊房產(chǎn)品的邏輯分析發(fā)現(xiàn),在業(yè)務(wù)場(chǎng)景實(shí)現(xiàn)方面,關(guān)鍵的技術(shù)難點(diǎn)來(lái)自于三個(gè)方面:
圖2:語(yǔ)聊房Demo設(shè)計(jì)技術(shù)關(guān)鍵點(diǎn)
第一,如何實(shí)現(xiàn)麥位狀態(tài)的云端存儲(chǔ)與通知。麥位狀態(tài)的變更必然要通知到語(yǔ)聊房房間內(nèi),包括觀眾和主播在內(nèi)的所有人,并且App也需要根據(jù)麥位狀態(tài)的變化,更新UI呈現(xiàn)。
要實(shí)現(xiàn)這一功能,必須面對(duì)復(fù)雜的業(yè)務(wù)流程,比如,如何訂閱流?如何訂閱主播的流?如果麥位上的角色從觀眾切換到主播后,也要面臨如何去發(fā)布流的問(wèn)題。在融云語(yǔ)聊房場(chǎng)景化的SDK中,這些復(fù)雜細(xì)節(jié)已經(jīng)全部基于融云聊天室屬性管理(KV)完成,因此,開(kāi)發(fā)者不必關(guān)心訂閱流的邏輯,不必關(guān)心設(shè)置、刪除、獲取以及設(shè)置回調(diào)等屬性變化和麥位狀態(tài)變化,只需通過(guò)一個(gè)EnterSeat接口,在收到回調(diào)后,刷新UI,兩步操作即可全部實(shí)現(xiàn)。
第二,如何實(shí)現(xiàn)邀請(qǐng)上麥和排麥請(qǐng)求。這主要涉及App中的邀請(qǐng)機(jī)制和申請(qǐng)機(jī)制,例如在語(yǔ)聊房主播邀請(qǐng)一個(gè)或多個(gè)觀眾合唱的場(chǎng)景中,面臨主播發(fā)出邀請(qǐng),受邀觀眾收到邀請(qǐng),選擇同意、取消或者拒絕的流程。這時(shí),邀請(qǐng)機(jī)制能否及時(shí)送達(dá)、及時(shí)接收十分重要,一旦消息丟失、亂序,都會(huì)直接影響到用戶體驗(yàn)。
在融云語(yǔ)聊房SDK中,利用融云IM信令,通過(guò)調(diào)用RequestSeat實(shí)現(xiàn)請(qǐng)求上麥,管理員會(huì)在收到RequestSeatListDidChange回調(diào),拿到申請(qǐng)連麥的人員列表后,選擇Accept、reject,甚至cancel來(lái)處理請(qǐng)求。那么相應(yīng)發(fā)起申請(qǐng)的觀眾端,就會(huì)收到RequestSeatDidAccept或者reject。也就是說(shuō),細(xì)節(jié)已被全部隱藏,開(kāi)發(fā)者只需要通過(guò)非常直白的命名,在5分鐘甚至更短的時(shí)間內(nèi),就能理解整個(gè)流程的實(shí)現(xiàn)方式。
第三,如何設(shè)計(jì)API。臧其龍強(qiáng)調(diào)應(yīng)該要設(shè)計(jì)出簡(jiǎn)捷但不簡(jiǎn)單的API接口,既要求設(shè)計(jì)簡(jiǎn)捷方便開(kāi)發(fā)者調(diào)用,又必須覆蓋所有功能。為此,融云在設(shè)計(jì)時(shí)秉持三個(gè)原則:
貼近業(yè)務(wù)。不能過(guò)度抽象脫離業(yè)務(wù),這一點(diǎn)剛好與一般SDK設(shè)計(jì)原理相反;
可擴(kuò)展。覆蓋所有語(yǔ)聊房的場(chǎng)景,包含狼人殺等特殊場(chǎng)景,所以在特定模型上增加了擴(kuò)展,比如麥位的extra;
簡(jiǎn)潔易用。屏蔽多余邏輯,例如屏蔽用戶手動(dòng)訂閱流等。
這樣一來(lái),開(kāi)發(fā)者如果只需要上麥下麥和通話場(chǎng)景,而無(wú)需“禮物”、“點(diǎn)贊”等功能,使用融云語(yǔ)聊房場(chǎng)景化SDK,只要兩個(gè)回調(diào)就能夠?qū)崿F(xiàn)。如若加上“禮物”、“點(diǎn)贊”以及單群聊場(chǎng)景,只需將voice room mode模塊完整地拖到自己的rss項(xiàng)目里,也只要5分鐘就可以滿足需求。因此,融云語(yǔ)聊房場(chǎng)景化 SDK & Demo,極大節(jié)約了開(kāi)發(fā)者的研發(fā)成本,包括時(shí)間成本和人員成本,是一款真正意義上的“開(kāi)箱即用”產(chǎn)品。
融云下一階段發(fā)力重點(diǎn),提供更多場(chǎng)景化Demo
使用融云這款語(yǔ)聊房場(chǎng)景化SDK的另一個(gè)好處是它提供了安全審查能力。臧其龍向開(kāi)發(fā)者承諾:包括融云語(yǔ)聊房SDK、IMLib SDK在內(nèi)的所有用戶,在使用中大可以把工作重心放在產(chǎn)品核心能力研發(fā)上,融云的安全審查能力可對(duì)圖、文、音、視全面設(shè)防,為客戶提前排除業(yè)務(wù)風(fēng)險(xiǎn)。實(shí)際上,不僅僅是這款產(chǎn)品,融云的IMKit和RTC都提供了同樣的語(yǔ)音鑒黃、視頻鑒黃能力,并且可以針對(duì)敏感信息第一時(shí)間進(jìn)行后臺(tái)攔截。
對(duì)于未來(lái),臧其龍透露,不同場(chǎng)景的覆蓋,是下一階段融云的重要發(fā)力點(diǎn)。為幫助開(kāi)發(fā)者獲得高質(zhì)量的產(chǎn)品使用體驗(yàn),融云認(rèn)為僅僅提供SDK和API接口都是“不負(fù)責(zé)任”的做法,因?yàn)獒槍?duì)某一特定場(chǎng)景,開(kāi)發(fā)者往往要在上百個(gè)SDK中,尋找適合自己業(yè)務(wù)邏輯的某幾十個(gè)或十幾個(gè)SDK,這對(duì)開(kāi)發(fā)者來(lái)說(shuō),絕非易事。
因此,針對(duì)直播場(chǎng)景、會(huì)議場(chǎng)景、在線教育場(chǎng)景等多個(gè)熱門(mén)場(chǎng)景,融云將逐步為其提供場(chǎng)景化Demo,進(jìn)一步簡(jiǎn)化開(kāi)發(fā)者的開(kāi)發(fā)成本。貼近開(kāi)發(fā)者,提煉并滿足開(kāi)發(fā)者的共性需求,做開(kāi)發(fā)者值得信賴的伙伴,這是融云的初心,不會(huì)改變。
結(jié)語(yǔ)
本屆WICC,融云在技術(shù)分論壇提出要基于語(yǔ)聊房場(chǎng)景化 SDK,探索新一代 PaaS 服務(wù)的演進(jìn)方向:隨著SDK數(shù)量增多,PaaS 通信云廠商要深入理解不同行業(yè)的業(yè)務(wù)層,展開(kāi)場(chǎng)景化能力的比拼。融云率先推出了語(yǔ)聊房場(chǎng)景化Demo產(chǎn)品,實(shí)踐并引領(lǐng)著PaaS 通信云賽道新的增長(zhǎng)點(diǎn)。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。 )