視頻直播

LeanClound消息類型自定義

主要矛盾在于過去接收和發(fā)送的消息類型與現(xiàn)在接收和發(fā)送消息類型完全不一樣,次要矛盾在于過去的消息類型與現(xiàn)在的消息類型對應(yīng)的消息處理邏輯不一樣。

  • 模型架構(gòu)蔫巩。假設(shè)扁平化處理,所有鍵值對都寫成字符串的形式灶平,勢必造成我在構(gòu)建消息往外發(fā)送的時候還需要先構(gòu)建字典,然后再傳入到消息的字典中去记舆,這是我不能忍受的奴潘,是否可以去扁平化逗余,模型本身就是一個整型鍵值對特咆、一個字符串鍵值對、一個字典鍵值對录粱,如此一來構(gòu)建模型至少需要上面的是三個鍵值對又變得特別麻煩了腻格。那如果把字典這種鍵值對也包裝成模型呢,這又變成了構(gòu)建兩個模型的問題了啥繁,MJEXtension將模型轉(zhuǎn)換成字典菜职。

  • 處理邏輯。全局搜索枚舉(枚舉這種單詞還是寫長一點比較搜索起來比較方便)就能把消息類型對應(yīng)的所有處理邏輯搞定旗闽,無論什么消息類型都有一個共同點酬核,都是AVIMMessage消息類型蜜另,需要做的就是根據(jù)消息模型構(gòu)建消息,最好的就是傳入一個模型就發(fā)送消息出去嫡意,反正举瑰,我需要做的就根據(jù)一個模型構(gòu)建一個整體的ChatModel。顯示到聊天框的消息包括:普通禮物蔬螟、特效禮物嘶居、群聊、系統(tǒng)消息促煮、房間消息、第一次的點贊消息整袁、不展示在聊天框的消息包括:來了菠齿、離開、觀眾被動退出(也就是服務(wù)器關(guān)閉直播間消息)坐昙、第一次以外的點贊消息绳匀、紅包消息、彈幕消息炸客。需要主要的是消息顯示有兩種特殊疾棵,一種是禮物連擊和觀眾點贊寫在聊天框的最下面;二種是觀眾進(jìn)入房間顯示到右上角痹仙。至于其他的消息是尔,通通刷新TableView就??了。后臺發(fā)送的消息包括:普通禮物开仰、特效禮物拟枚、紅包消息、服務(wù)器關(guān)閉直播間消息众弓。每次點贊都會發(fā)消息恩溅,但是請求服務(wù)器點贊的接口只能執(zhí)行一次,因此服務(wù)器點贊的Type是7谓娃,需要顯示到聊天框脚乡,用戶第二次點贊的Type是5,不能顯示到聊天框滨达。

  • 接收消息奶稠。接收消息十分簡單,Json字符串一步就變成了大模型弦悉!先確保消息能夠被完整接收窒典,然后才是發(fā)送消息,畢竟只要接收得好稽莉,就不用擔(dān)心因為消息類型不一致所帶來的崩潰呀瀑志。

  • 發(fā)送消息。到底該如何去建立大模型呀,大模型包含小模型屬性的方法極為不科學(xué)劈猪,還是得用字典來做為屬性昧甘。

主播被動關(guān)閉直播間

  • 正常關(guān)閉直播間邏輯。退出分兩步完成战得,嚴(yán)格區(qū)分SDK層和業(yè)務(wù)層充边。先執(zhí)行SDK層的退房邏輯,成功后請求服務(wù)器關(guān)閉業(yè)務(wù)層房間常侦,成功后接收到直播間關(guān)閉的消息浇冰,然后主播和觀眾在接收到這個消息之后都跳轉(zhuǎn)到結(jié)束直播的控制器,同時退出LeanCound聊天室斷開LeanClound連接聋亡。主播點擊退出肘习,關(guān)閉SDK視頻錄制、發(fā)送服務(wù)器請求坡倔、響應(yīng)LeanClound消息漂佩、退出業(yè)務(wù)層、跳轉(zhuǎn)控制器罪塔。

  • 服務(wù)器關(guān)閉業(yè)務(wù)層房間失敗異常處理投蝉。問題在于如果主播請求服務(wù)器關(guān)閉直播時服務(wù)器無回應(yīng),直接意味著直播關(guān)不了征堪,這很要命的瘩缆,無論服務(wù)器什么錯誤沒回應(yīng),我都必須響應(yīng)主播的退出按鈕事件佃蚜,都必須跳轉(zhuǎn)控制器咳榜。所以處理就是自己構(gòu)造直播間關(guān)閉的消息群發(fā),這也正好解決了因為心跳超時直播間斷開的問題爽锥。

  • 關(guān)閉SDK房間視頻錄制失敗異常處理涌韩。心跳失敗必然是網(wǎng)絡(luò)出錯,網(wǎng)絡(luò)出錯意味著:1氯夷、SDK房間沒有視頻幀經(jīng)過臣樱,2、接收不到服務(wù)器發(fā)來的直播間關(guān)閉消息 3腮考、SDK會退出房間并銷毀實例4雇毫、關(guān)閉視頻錄制不會返回ID 5、視頻畫面卡著不動6踩蔚、點擊退出按鈕無法跳轉(zhuǎn)控制器7棚放、所有與網(wǎng)絡(luò)有關(guān)的操作都干不了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市馅闽,隨后出現(xiàn)的幾起案子飘蚯,更是在濱河造成了極大的恐慌馍迄,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件局骤,死亡現(xiàn)場離奇詭異攀圈,居然都是意外死亡,警方通過查閱死者的電腦和手機峦甩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進(jìn)店門赘来,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人凯傲,你說我怎么就攤上這事犬辰。” “怎么了冰单?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵忧风,是天一觀的道長。 經(jīng)常有香客問我球凰,道長,這世上最難降的妖魔是什么腿宰? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任呕诉,我火速辦了婚禮,結(jié)果婚禮上吃度,老公的妹妹穿的比我還像新娘甩挫。我一直安慰自己,他們只是感情好椿每,可當(dāng)我...
    茶點故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布伊者。 她就那樣靜靜地躺著,像睡著了一般间护。 火紅的嫁衣襯著肌膚如雪亦渗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天汁尺,我揣著相機與錄音法精,去河邊找鬼。 笑死痴突,一個胖子當(dāng)著我的面吹牛搂蜓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播辽装,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼帮碰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了拾积?” 一聲冷哼從身側(cè)響起殉挽,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤丰涉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后此再,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體昔搂,經(jīng)...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年输拇,在試婚紗的時候發(fā)現(xiàn)自己被綠了摘符。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,912評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡策吠,死狀恐怖逛裤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情猴抹,我是刑警寧澤带族,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站蟀给,受9級特大地震影響蝙砌,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜跋理,卻給世界環(huán)境...
    茶點故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一择克、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧前普,春花似錦肚邢、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至峻厚,卻和暖如春响蕴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背惠桃。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工换途, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人刽射。 一個月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓军拟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親誓禁。 傳聞我的和親對象是個殘疾皇子懈息,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,922評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)摹恰,斷路器辫继,智...
    卡卡羅2017閱讀 134,717評論 18 139
  • 點擊查看原文 Web SDK 開發(fā)手冊 SDK 概述 網(wǎng)易云信 SDK 為 Web 應(yīng)用提供一個完善的 IM 系統(tǒng)...
    layjoy閱讀 13,788評論 0 15
  • 原理篇 何李石:七牛直播云服務(wù)技術(shù)詳解 直播模型及其實現(xiàn) 一個通用的直播模型一般包括三個模塊:主播方怒见、服務(wù)器端和播...
    daos閱讀 25,307評論 3 45
  • 全局創(chuàng)建context? 創(chuàng)建一個全局的context姑宽,然后退出SDK層房間時不銷毀只是停止context遣耍。 SD...
    Carden閱讀 1,456評論 0 2
  • 近期舵变,要說最火的電影,非吳京的《戰(zhàn)狼2》莫屬瘦穆,這部電影刷爆了朋友圈纪隙,票房也一路高歌,連連打破國內(nèi)多項票房紀(jì)錄...
    董小姐讀書閱讀 551評論 2 4