本發(fā)明涉及互聯(lián)網(wǎng)彈幕式視頻直播技術(shù)領(lǐng)域,更具體地,涉及一種網(wǎng)絡(luò)直播禮物展示及構(gòu)建方法。
背景技術(shù):
目前,禮物的設(shè)計(jì)之初的目的是增進(jìn)觀眾與主播之間的互動(dòng),觀眾給喜歡的主播贈(zèng)送禮物,是對(duì)主播的一種認(rèn)同感,主播自己也有成就感。有利于直播網(wǎng)站平臺(tái)的良好運(yùn)營(yíng)。
在實(shí)際的網(wǎng)絡(luò)直播平臺(tái)運(yùn)營(yíng)中,直播內(nèi)容存在很多分類。例如:有很多人都是玩游戲,他們的直播內(nèi)容都是以游戲內(nèi)容為為主;有很多人都在自拍,他們的直播內(nèi)容是表現(xiàn)自己展示自己為主;有的直播內(nèi)容是敘事紀(jì)實(shí),他們的直播內(nèi)容就是在記錄生活。
傳統(tǒng)的禮物展示展示通常會(huì)在全部房間展示相同的互動(dòng)禮物,網(wǎng)站更新維護(hù)替換需要上新禮物時(shí)需要開發(fā)人員人工替換,既浪費(fèi)了網(wǎng)站開發(fā)人力成本,又會(huì)造成很大的風(fēng)險(xiǎn),因?yàn)槊看伍_發(fā)代碼的更迭都會(huì)導(dǎo)致服務(wù)運(yùn)行的穩(wěn)定性。大多數(shù)的直播網(wǎng)站主播的直播房間禮物單一。直播內(nèi)容千變?nèi)f化,有些主播的個(gè)性又與眾不同,統(tǒng)一的禮物設(shè)計(jì)無法滿足直播領(lǐng)域?qū)?nèi)容多姿多彩的要求。所以主播網(wǎng)站運(yùn)營(yíng)方迫切需要提供一種對(duì)不同房間實(shí)現(xiàn)禮物定制的功能,滿足主播的定制要求。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為克服上述問題或者至少部分地解決上述問題,提供一種網(wǎng)絡(luò)直播禮物展示方法。
根據(jù)本發(fā)明的一個(gè)方面,提供一種網(wǎng)絡(luò)直播禮物展示方法,其特征在于,包括:
步驟1,基于被訪問的直播房間信息,判斷所述直播房間是否關(guān)聯(lián)有禮物模板信息;
步驟2,在所述直播房間關(guān)聯(lián)有禮物模板信息時(shí),基于所關(guān)聯(lián)的禮物模板信息,調(diào)用與所述禮物模板相關(guān)聯(lián)的禮物;或者在所述直播房間不關(guān)聯(lián)禮物模板信息時(shí),則判斷所述直播房間是否關(guān)聯(lián)有房間分類信息;
步驟3,在所述直播房間關(guān)聯(lián)的房間分類信息關(guān)聯(lián)有禮物模板信息時(shí),基于所述直播房間關(guān)聯(lián)的禮物模板信息,調(diào)用相應(yīng)禮物。
根據(jù)本發(fā)明的另一個(gè)方面,提供一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法,包括:
S01,分別建立直播房間信息模型、禮物模板信息模型和禮物模型信息模型;
S02,分別建立所述直播房間信息模型和所述禮物模板信息模型的關(guān)聯(lián)關(guān)系、所述禮物模板信息模型和所述禮物模型信息模型的關(guān)聯(lián)關(guān)系。
本申請(qǐng)?zhí)岢鲆环N網(wǎng)絡(luò)直播禮物展示及構(gòu)建方法,通過個(gè)性化的針對(duì)不同類型的房間設(shè)定不同的禮物模板,禮物的數(shù)量和內(nèi)容可以隨意更替;不同分類下的房間展示不同的禮物內(nèi)容,還能夠根據(jù)房間設(shè)定一套禮物,房間的禮物與房間所屬分類下的禮物同時(shí)存在的情況下優(yōu)先選擇展示房間禮物,做到為房間定制禮物,讓主播有一種自豪感和歸屬感。在滿足觀眾用戶與主播的內(nèi)容互動(dòng)的同時(shí),滿足某些主播的個(gè)性化和運(yùn)營(yíng)人員特殊性運(yùn)營(yíng)的需求。
附圖說明
圖1為根據(jù)本發(fā)明實(shí)施例一種網(wǎng)絡(luò)直播禮物展示方法的整體流程示意圖;
圖2為根據(jù)本發(fā)明實(shí)施例一種網(wǎng)絡(luò)直播禮物展示方法的整體示意圖;
圖3為根據(jù)本發(fā)明實(shí)施例一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法整體流程示意圖;
圖4為根據(jù)本發(fā)明實(shí)施例一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法所構(gòu)建的數(shù)據(jù)庫表單結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。以下實(shí)施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。
術(shù)語說明:
普通用戶(觀眾):登陸一個(gè)直播網(wǎng)站房間的用戶;
房間:一種提供彈幕式視頻直播的在線虛擬房間;
房主(主播):提供彈幕式視頻直播房間的擁有者;
房間分類:按照房間直播內(nèi)容或者直播性質(zhì)來區(qū)分的一種歸類方法;
超管(管理員):直播網(wǎng)站運(yùn)營(yíng)方有特定的權(quán)限的管理人員;
禮物:提供給普通用戶的用于贈(zèng)送給自己喜歡的主播的虛擬獎(jiǎng)品;
一對(duì)一:關(guān)系數(shù)據(jù)庫中兩個(gè)表之間的一種關(guān)系,該關(guān)系中第一個(gè)表中的單個(gè)行只可以與第二個(gè)表中的一個(gè)行相關(guān),且第二個(gè)表中的一個(gè)行也只可以與第一個(gè)表中的一個(gè)行相關(guān),例如一個(gè)學(xué)生只有一個(gè)名字,他不會(huì)有第二個(gè)名字,他的名字就是對(duì)應(yīng)這名學(xué)生的唯一標(biāo)記。
一對(duì)多/多對(duì)一的關(guān)系:一對(duì)多或者多對(duì)一存在最普遍的映射關(guān)系,簡(jiǎn)單來說就如同班和學(xué)生的關(guān)系——從學(xué)生的角度來說一個(gè)班級(jí)由多個(gè)學(xué)生組成,即一對(duì)多;從學(xué)生的角度來說,多個(gè)學(xué)生屬于一個(gè)班級(jí),即為多對(duì)一;
多對(duì)多的關(guān)系:多對(duì)多的關(guān)系也很常見,打個(gè)比方就好比學(xué)生與選修課之間的關(guān)系——一個(gè)學(xué)生可以選擇多門選修課,而每個(gè)選修課又可以被多名學(xué)生選擇;
關(guān)系型數(shù)據(jù)庫:建立在關(guān)系模型基礎(chǔ)上的數(shù)據(jù)庫,借助于集合代數(shù)等數(shù)學(xué)概念和方法來處理數(shù)據(jù)庫中的數(shù)據(jù)。現(xiàn)實(shí)世界中的各種實(shí)體以及實(shí)體之間的各種聯(lián)系均用關(guān)系模型來表示。標(biāo)準(zhǔn)數(shù)據(jù)查詢語言SQL就是一種基于關(guān)系數(shù)據(jù)庫的語言,這種語言執(zhí)行對(duì)關(guān)系數(shù)據(jù)庫中數(shù)據(jù)的檢索和操作。關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合、關(guān)系完整性約束三部分組成。以下實(shí)現(xiàn)步驟以MySQL作為主要數(shù)據(jù)庫說明。
如圖1,示出本發(fā)明具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物展示方法整體流程示意圖。結(jié)合圖2所示,總體上包括:步驟1,基于被訪問的直播房間信息,判斷所述直播房間是否關(guān)聯(lián)有禮物模板信息;
步驟2,在所述直播房間關(guān)聯(lián)有禮物模板信息時(shí),基于所關(guān)聯(lián)的禮物模板信息,調(diào)用與所述禮物模板相關(guān)聯(lián)的禮物;或者在所述直播房間不關(guān)聯(lián)禮物模板信息時(shí),則判斷所述直播房間是否關(guān)聯(lián)有房間分類信息;
步驟3,在所述直播房間關(guān)聯(lián)的房間分類信息關(guān)聯(lián)有禮物模板信息時(shí),基于所述直播房間關(guān)聯(lián)的禮物模板信息,調(diào)用相應(yīng)禮物。
在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物展示方法,所述步驟1前還包括:分別建立直播房間數(shù)據(jù)庫表單、禮物模板數(shù)據(jù)庫表單、禮物模型數(shù)據(jù)庫表單、房間分類數(shù)據(jù)庫表單和模板-禮物數(shù)據(jù)庫表單。
利用禮物模板標(biāo)識(shí)字段將所述直播房間數(shù)據(jù)庫表單與所述禮物模板數(shù)據(jù)庫表單相關(guān)聯(lián);利用禮物模板標(biāo)識(shí)字段將所述禮物模板數(shù)據(jù)庫表單分別于所述房間分類數(shù)據(jù)庫表單、模板-禮物數(shù)據(jù)庫表單相關(guān)聯(lián);利用房間分類標(biāo)識(shí)字段將所述直播房間數(shù)據(jù)庫表單與所述房間分類數(shù)據(jù)庫表單相關(guān)聯(lián);利用禮物標(biāo)識(shí)字段將所述模板-禮物數(shù)據(jù)庫表單與所述禮物模型數(shù)據(jù)庫表單相關(guān)聯(lián)。
在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物展示方法,所述步驟1還包括:判斷所述被訪問的直播房間數(shù)據(jù)庫表單中禮物模板標(biāo)識(shí)字段值是否為空。
在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物展示方法,所述步驟2中在所述直播房間關(guān)聯(lián)有禮物模板信息時(shí),基于所關(guān)聯(lián)的禮物模板信息,調(diào)用與所述模板相關(guān)聯(lián)的禮物還包括:根據(jù)所述被訪問的直播房間數(shù)據(jù)庫表單中禮物模板標(biāo)識(shí)字段查找到與其相關(guān)聯(lián)的禮物模板數(shù)據(jù)庫表單;基于所述禮物模板數(shù)據(jù)庫表單中禮物模板標(biāo)識(shí)字段查找與所述直播房間數(shù)據(jù)庫表單相關(guān)聯(lián)的所有禮物模型表單,基于所述禮物模型表單調(diào)用對(duì)應(yīng)禮物。
在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物展示方法,所述步驟2中在所述直播房間不關(guān)聯(lián)禮物模板信息時(shí),判斷所述直播房間是否關(guān)聯(lián)有房間分類信息還包括:判斷所述被訪問的直播房間數(shù)據(jù)庫表單中房間分類標(biāo)識(shí)字段值是否為空。
在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物展示方法,所述步驟3還包括:判斷與所述直播房間數(shù)據(jù)庫表單相關(guān)聯(lián)的房間分類數(shù)據(jù)庫表單中禮物模板字段值是否為非空,基于與所述直播房間數(shù)據(jù)庫表單相關(guān)聯(lián)的房間分類表單中禮物模板字段查找與其相關(guān)聯(lián)的相應(yīng)禮物并調(diào)用。
如圖3,示出本發(fā)明具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法整體流程示意圖??傮w上包括:S01,分別建立直播房間信息模型、禮物模板信息模型和禮物模型信息模型。
S02,分別建立所述直播房間信息模型和所述禮物模板信息模型的關(guān)聯(lián)關(guān)系、所述禮物模板信息模型和所述禮物模型信息模型的關(guān)聯(lián)關(guān)系。
在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法,還包括:建立房間分類信息模型和模板-禮物信息模型;分別建立所述直播房間信息模型和所述房間分類信息模型的關(guān)聯(lián)關(guān)系、所述房間分類信息模型和所述禮物模板信息模型的關(guān)聯(lián)關(guān)系、所述禮物模板模型和所述模板-禮物信息模型關(guān)聯(lián)關(guān)系、模板-禮物信息模型關(guān)聯(lián)關(guān)系。
如圖4所示,在本發(fā)明另一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法,還包括:分別建立直播房間數(shù)據(jù)庫表單、房間分類數(shù)據(jù)庫表單、禮物模板數(shù)據(jù)庫表單、模板-禮物數(shù)據(jù)庫表單和禮物模型數(shù)據(jù)庫表單。
利用禮物模板標(biāo)識(shí)字段將所述直播房間數(shù)據(jù)庫表單與所述禮物模板數(shù)據(jù)庫表單相關(guān)聯(lián);利用禮物模板標(biāo)識(shí)字段將所述禮物模板數(shù)據(jù)庫表單分別于所述房間分類數(shù)據(jù)庫表單、模板-禮物數(shù)據(jù)庫表單相關(guān)聯(lián);利用房間分類標(biāo)識(shí)字段將所述直播房間數(shù)據(jù)庫表單與所述房間分類數(shù)據(jù)庫表單相關(guān)聯(lián);利用禮物標(biāo)識(shí)字段將所述模板-禮物數(shù)據(jù)庫表單與所述禮物模型數(shù)據(jù)庫表單相關(guān)聯(lián)。
在本發(fā)明又一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法,還包括:能夠通過修改各個(gè)數(shù)據(jù)庫表單間的關(guān)聯(lián)字段,從而調(diào)整各個(gè)數(shù)據(jù)庫表單間的關(guān)聯(lián)關(guān)系。
在本發(fā)明又一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法,還包括:所述數(shù)據(jù)庫表單為SQL數(shù)據(jù)庫表單。
在本發(fā)明又一個(gè)具體實(shí)施例中,一種網(wǎng)絡(luò)直播禮物的展示構(gòu)建方法,包括如下具體步驟:
啟動(dòng)一個(gè)MySQL服務(wù),構(gòu)建一個(gè)禮物實(shí)體模型,該模型中必須包含以下屬性:標(biāo)記唯一的標(biāo)識(shí),表示禮物特征的名稱和禮物價(jià)格屬性,其他增值屬性非必須,如圖4所示。
在服務(wù)中封裝一個(gè)newGiftObject的方法,方法執(zhí)行一條SQL語句在MySQL服務(wù)中構(gòu)建禮物模型gift:
創(chuàng)建一個(gè)模板實(shí)體模型,模型中必須包含標(biāo)記唯一的標(biāo)識(shí),表示模板特征的名稱和對(duì)該模板的表述,其他屬性非必須,如圖4所示。
在服務(wù)中封裝一個(gè)newTemplateObject的方法,方法執(zhí)行一條SQL語句在MySQL服務(wù)中構(gòu)建模板模型template:
模板是將一個(gè)事物結(jié)構(gòu)規(guī)律予以固定化標(biāo)準(zhǔn)化的一個(gè)成果,以下模板均表示由一類禮物組成的可供房間使用的一個(gè)組合,在一個(gè)模板模型當(dāng)中,具備一個(gè)或者多個(gè)禮物模型,也可以說,多個(gè)禮物模型組成一個(gè)組合,與模板模型映射。模板與禮物是一對(duì)多的關(guān)系,多對(duì)多的關(guān)系必須創(chuàng)建第三個(gè)虛擬模型,用于記錄模板模型與禮物模型的映射關(guān)系。創(chuàng)建一個(gè)禮物模型和模板模型的關(guān)系模型,模型中必須設(shè)定標(biāo)記模板模型唯一的標(biāo)識(shí)和禮物模型中的唯一標(biāo)識(shí),關(guān)系如圖4所示。
在服務(wù)中封裝一個(gè)createTemplateGiftRelation方法,方法執(zhí)行一條SQL語句在MySQL服務(wù)中構(gòu)建禮物模型和模板模型的關(guān)系模型template_gift:
每一個(gè)模板模型都能夠通過模板禮物映射模型找到映射的禮物模型,如下圖表示,通過模板模型中的唯一標(biāo)記到模板禮物關(guān)系映射模型查找對(duì)應(yīng)的映射記錄,每一條映射記錄都會(huì)保存唯一的禮物模型中的唯一標(biāo)識(shí)。通過模板實(shí)體找到與其匹配的一個(gè)或者多個(gè)禮物實(shí)體。由模板唯一標(biāo)識(shí)查找禮物模型數(shù)據(jù)的對(duì)應(yīng)關(guān)系如圖4所示。
封裝一個(gè)getGiftDataByTemplateId的方法,方法執(zhí)行一條SQL語句在MySQL服務(wù)中通過模板模型的標(biāo)識(shí)(template_id)查找與之匹配的禮物實(shí)體:
封裝一個(gè)方法updateRoomWithTemplateId,方法執(zhí)行一條SQL語句在MySQL服務(wù)中為原有的房間模型(room)創(chuàng)建一個(gè)模板標(biāo)識(shí)(template_id)屬性:
該屬性與模板實(shí)體中的唯一屬性形成映射關(guān)系,為房間新增或者修改模板標(biāo)識(shí)的同時(shí),與之對(duì)應(yīng)的模板也會(huì)隨著標(biāo)識(shí)的更新而變化。房間模型中設(shè)定一個(gè)屬性表示模板標(biāo)識(shí),該標(biāo)識(shí)與模板模型中唯一標(biāo)識(shí)符對(duì)應(yīng),由房間模型中設(shè)定的模板標(biāo)識(shí),保存在房間模型中的模板標(biāo)示只能夠在模板模型中的唯一標(biāo)識(shí)的集合中選擇,定位到模板模型中的唯一實(shí)體屬性,通過房間模板中設(shè)定的模板標(biāo)識(shí)屬性,可以找出模板模型中該標(biāo)識(shí)唯一存在的一類模板模型屬性。通過房間實(shí)體找到與之匹配的模板實(shí)體。
封裝一個(gè)方法getTemplateIdByRoomId通過房間標(biāo)識(shí)(room_id),查找該實(shí)體設(shè)定的模板標(biāo)識(shí)(template_id),方法會(huì)在MySQL服務(wù)中執(zhí)行一條SQL:
通過方法getTemplateIdByRoomId可以通過房間模型的標(biāo)識(shí)查找出一個(gè)與之匹配的模板模型的標(biāo)識(shí),將獲取到的模板模型標(biāo)識(shí)在內(nèi)存中保存為變量templateId。
創(chuàng)建一個(gè)分類實(shí)體模型,該模型中必須包含以下屬性:標(biāo)記唯一屬性的ID,表示分類特點(diǎn)的名稱,還需要一個(gè)描寫該分類特征的說明。分類模型需要與模板模型產(chǎn)品關(guān)聯(lián),它們之間的關(guān)系是一對(duì)一的,在一對(duì)一的關(guān)系型模型當(dāng)中,在第一個(gè)模型中需要保存第二個(gè)模型中的唯一標(biāo)識(shí)符,所以在分類實(shí)體模型當(dāng)中還需要一個(gè)模板模型唯一標(biāo)識(shí)符屬性,如圖4所示。
在服務(wù)中封裝一個(gè)newCateObject的方法,方法執(zhí)行一條SQL語句在MySQL服務(wù)中構(gòu)建分類模型cate:
為原有的房間模型創(chuàng)建一個(gè)分類模型標(biāo)識(shí)的屬性,執(zhí)行SQL的語句如下。
封裝一個(gè)方法updateRoomWithCateId,方法執(zhí)行一條SQL語句在MySQL服務(wù)中為原有的房間模(room)型創(chuàng)建一個(gè)分類標(biāo)識(shí)(cate_id)屬性:
該屬性與分類實(shí)體中的唯一屬性形成映射關(guān)系,為房間新增或者修改分類標(biāo)識(shí)的同時(shí),與之對(duì)應(yīng)的分類也會(huì)隨著標(biāo)識(shí)的更新而變化。房間模型中設(shè)定一個(gè)屬性表示分類標(biāo)識(shí),該標(biāo)識(shí)與分類模型中唯一標(biāo)識(shí)符對(duì)應(yīng),由房間模型中設(shè)定的分類標(biāo)識(shí),保存在房間模型中的分類標(biāo)識(shí)只能夠在分類模型中的唯一標(biāo)識(shí)的集合中選擇,定位到分類模型中的唯一實(shí)體屬性,通過房間模板中設(shè)定的分類標(biāo)識(shí)屬性,可以找出分類模型中該標(biāo)識(shí)唯一存在的一類分類模型屬性。通過房間實(shí)體找到與之匹配的分類實(shí)體。
封裝一個(gè)getCateIdByRoomId的方法,在MySQL服務(wù)中執(zhí)行一條SQL用于通過房間標(biāo)識(shí)(room_id)查找分類標(biāo)識(shí)(cate_id):
通過方法getCateIdByRoomId可以通過房間模型的唯一標(biāo)識(shí)查找出一個(gè)與之匹配的分類模型的標(biāo)識(shí),將獲取到的模板模型標(biāo)識(shí)在內(nèi)存中保存為變量cateId。
在分類模型中設(shè)定一個(gè)屬性表示模板標(biāo)識(shí),該標(biāo)識(shí)與模板模型中唯一標(biāo)識(shí)符對(duì)應(yīng),保存在分類模型中的模板標(biāo)示只能夠在模板模型中的唯一標(biāo)識(shí)的集合中選擇,由分類模型中設(shè)定的模板標(biāo)識(shí),定位到模板模型中的唯一實(shí)體屬性,通過分類模型中的一類屬性可以找出對(duì)應(yīng)的模板模型的一類屬性。通過分類實(shí)體找到與之匹配的模板實(shí)體。
封裝一個(gè)方法getTemplateIdByCateId通過分類標(biāo)識(shí)(cate_id),查找該實(shí)體設(shè)定的模板標(biāo)識(shí)(template_id),方法會(huì)在MySQL服務(wù)中執(zhí)行一條SQL:
通過方法getTemplateIdByCateId可以通過分類模型的標(biāo)識(shí)查找出一個(gè)與之匹配的模板模型的標(biāo)識(shí),將獲取到的模板模型標(biāo)識(shí)在內(nèi)存中保存為變量templateId2。
通過方法getTemplateIdByRoomId使用房間標(biāo)識(shí)查找模板標(biāo)識(shí)templateId,再通過方法getGiftDataByTemplateId使用templateId查找禮物實(shí)體數(shù)據(jù)giftList;通過方法getTemplateIdByCateId使用分類標(biāo)識(shí)查找模板標(biāo)識(shí)templateId2,再通過方法getGiftDataByTemplateId使用templateId2查找禮物實(shí)體數(shù)據(jù)giftList2。如果giftList和giftList2兩者都存在數(shù)據(jù),優(yōu)先giftList。最后將這些禮物實(shí)體數(shù)據(jù)保存在一個(gè)數(shù)組當(dāng)中,通過服務(wù)器視圖(view)模塊渲染到頁面,供用戶看到。
最后,本申請(qǐng)的方法僅為較佳的實(shí)施方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。