王丹彤
(浙江廣播電視集團(tuán),浙江 杭州 310005)
近年來,全國廣播電視媒體大力推動(dòng)媒體深度融合,自主平臺(tái)建設(shè)取得新進(jìn)展、新成效。但總體來看,自主平臺(tái)建設(shè)的主導(dǎo)地位在實(shí)踐中還未充分體現(xiàn),大量的人力物力仍然投入在低產(chǎn)出的傳統(tǒng)媒體業(yè)務(wù)。堅(jiān)持大屏主流、小屏優(yōu)先,增強(qiáng)互聯(lián)網(wǎng)思維,將主要資源和力量轉(zhuǎn)移到建設(shè)、發(fā)展自主可控的平臺(tái),已成為主流媒體的必然選擇和重大任務(wù)。
融合媒體平臺(tái)構(gòu)建涉及思維創(chuàng)新、資產(chǎn)重組、資源整合、平臺(tái)再造、渠道開拓以及形態(tài)創(chuàng)新等系統(tǒng)性的改革[1]。在媒體深度融合發(fā)展的探索過程中,不斷有新型技術(shù)融入媒體生產(chǎn)管理平臺(tái)中加持新聞生產(chǎn)管理發(fā)布。為適應(yīng)新型媒體行業(yè)環(huán)境發(fā)展而打造新的媒體生產(chǎn)管理平臺(tái)時(shí),從廣播電視行業(yè)的業(yè)務(wù)性質(zhì)來看,無論怎樣建設(shè)或是改革,都需滿足內(nèi)容生產(chǎn)所必備的功能,即采、編、發(fā)、用、管、存。
為避免在平臺(tái)建設(shè)時(shí)對于通用型功能如采集(媒介上載)、使用(媒介下載)、管理(媒介展示)的重復(fù)開發(fā)消耗過多時(shí)間,本文介紹基于低代碼架構(gòu)下通用型融合媒體類自定義組件及邏輯流的開發(fā)與實(shí)現(xiàn),以滿足內(nèi)容生產(chǎn)使用管理過程中必要功能的快速搭建及復(fù)用。
廣播電視行業(yè)深度融合發(fā)展過程中,對于廣電技術(shù)支撐的綜合能力在不斷加強(qiáng)。比如云資源、云計(jì)算、自然語言分析、機(jī)器學(xué)習(xí)、內(nèi)容標(biāo)簽體系、搜索引擎、流式數(shù)據(jù)處理、分布式存儲(chǔ)以及分布式檢索等,關(guān)鍵技術(shù)是影響媒體融合的重中之重。要實(shí)現(xiàn)各種媒介資源、生產(chǎn)要素的有效整合,形成一體化的組織結(jié)構(gòu)、傳播體系和管理體制,并最終實(shí)現(xiàn)內(nèi)容、平臺(tái)、管理的互聯(lián)互通,最終都要通過關(guān)鍵技術(shù)的突破來實(shí)現(xiàn)。
現(xiàn)階段,越來越多的平臺(tái)通過低代碼架構(gòu)開發(fā)平臺(tái)、快速地搭建平臺(tái)。低代碼架構(gòu)不單單可有效地調(diào)用、嵌入以上提及的關(guān)鍵技術(shù),為加速廣播電視行業(yè)融合媒體平臺(tái)的搭建或能力擴(kuò)容,對于日常通用業(yè)務(wù)實(shí)現(xiàn)的必要流程而言,基于低代碼架構(gòu)實(shí)現(xiàn)的功能性自定義組件及邏輯流,通過復(fù)用以提高開發(fā)的敏捷性,同樣是隨著技術(shù)迭代而考慮的要素[2]。
在通用組件無法滿足業(yè)務(wù)需要時(shí),可通過自定義頁面組件滿足特定的樣式規(guī)范、交互動(dòng)作、數(shù)據(jù)邏輯。在提升組件與業(yè)務(wù)需求契合度的同時(shí),減少組件開發(fā)及運(yùn)維的成本并提高組件的可復(fù)用性,能夠?yàn)楹罄m(xù)開發(fā)同類型應(yīng)用復(fù)用相關(guān)組件提供便利?;诘痛a架構(gòu)的自定義邏輯流可根據(jù)業(yè)務(wù)場景定義并串聯(lián)應(yīng)用內(nèi)的頁面模型和數(shù)據(jù)模型,實(shí)現(xiàn)應(yīng)用內(nèi)的邏輯交互[3]。
融合媒體平臺(tái)所包含的自定義組件及邏輯流設(shè)計(jì)思路及實(shí)現(xiàn)目標(biāo)如下。
廣播電視行業(yè)融合媒體平臺(tái)的業(yè)務(wù)流程一般包含采集匯聚、制作使用及分發(fā)管理,如圖1 所示。采集匯聚存在媒介上載、預(yù)約收錄、媒資回遷及新聞通聯(lián)等來源,制作使用包含媒介下載、稿件生產(chǎn)及素材剪輯等方法,分發(fā)管理可對媒介展示、修改編目或多渠道分發(fā)等操作?!懊浇樯陷d”“媒介下載”及“媒介展示”屬于廣播電視行業(yè)融合媒體平臺(tái)常見的通用型功能,在不同業(yè)務(wù)范圍的平臺(tái)中,皆可對該項(xiàng)功能進(jìn)行復(fù)用[4]。
圖1 廣播電視行業(yè)內(nèi)容采編發(fā)流程圖
盡管“媒介上載”“媒介下載”及“媒介展示”是廣播電視行業(yè)融合媒體平臺(tái)的通用型功能,但在信息技術(shù)(Information Technology,IT)行業(yè)中,其具有具體業(yè)務(wù)場景使用習(xí)慣及需求的特點(diǎn)。因此,本文基于低代碼架構(gòu)的平臺(tái)開發(fā),采用自定義組件及邏輯流的方式實(shí)現(xiàn)上述通用型功能,如圖2 所示。
圖2 低代碼框架開發(fā)平臺(tái)架構(gòu)圖
媒介展示通過自定義組件開發(fā),實(shí)現(xiàn)素材在內(nèi)容庫中的展示及操作;媒介下載通過前端自定義邏輯流開發(fā)實(shí)現(xiàn),滿足用戶對展示后的媒介進(jìn)行下載操作;媒介上傳通過后端邏輯流開發(fā)實(shí)現(xiàn),達(dá)到素材通過本地上傳至平臺(tái)滿足采集匯聚的效果。
基于低代碼架構(gòu)的平臺(tái)開發(fā)作為標(biāo)準(zhǔn)化輸出,通過可視化的方式搭建平臺(tái),利用各類物料開發(fā)應(yīng)用,敏捷高效地完成對應(yīng)用的搭建、運(yùn)維、運(yùn)營等全生命周期的管理,可有效縮短項(xiàng)目執(zhí)行周期,便于后期維護(hù)。通用型的媒介展示自定義組件、素材下載自定義后端邏輯流及素材上傳自定義前端邏輯流,通過定制開發(fā)和維護(hù)一組標(biāo)準(zhǔn)的自定義業(yè)務(wù)組件和邏輯流,標(biāo)準(zhǔn)化的方式實(shí)現(xiàn),可有效地實(shí)現(xiàn)能力復(fù)用,降低開發(fā)及維護(hù)成本。
本節(jié)分別展開說明通用型融合媒體類的功能,通過自定義組件、自定義前端邏輯流及自定義后端邏輯流的方法實(shí)現(xiàn)。
在融合媒體類的媒介展示部分,主要需體現(xiàn)媒介的標(biāo)題、入庫者、入庫時(shí)間、媒介時(shí)長、審核狀態(tài)及出庫狀態(tài)等必要的基礎(chǔ)信息。因此,在低代碼架構(gòu)的自定義組件中,可通過基礎(chǔ)數(shù)據(jù)類型將對應(yīng)字段進(jìn)行匹配,根據(jù)媒介展示功能所使用到的字段實(shí)現(xiàn)互動(dòng)[5]。該功能的動(dòng)態(tài)數(shù)據(jù)源將通過內(nèi)容檢索應(yīng)用程序編程接口(Application Programming Interface,API)獲取到的數(shù)據(jù)以上下文的方式傳遞至組件中,將其拆分、逐個(gè)字段獲取后進(jìn)行匹配并呈現(xiàn)在頁面中,如圖3 所示。
圖3 媒介展示(自定義組件)邏輯圖
在內(nèi)容的生產(chǎn)制作管理過程中,當(dāng)用戶勾選媒介進(jìn)行下一步分發(fā)、下載、編輯或點(diǎn)擊素材媒介查看媒介詳情的時(shí)候,將通過自定義組件交互的onClick 事件觸發(fā),進(jìn)一步觸發(fā)邏輯流或跳轉(zhuǎn)頁面動(dòng)作,如圖4 所示。自定義組件的便利性還在于,當(dāng)形成標(biāo)準(zhǔn)化的展示及數(shù)據(jù)交互模塊時(shí),如需對頁面展示效果(如主題、排版)進(jìn)行調(diào)整,可通過配置文件進(jìn)行各個(gè)模塊的長寬高以及顏色調(diào)整。
融合媒體類平臺(tái)應(yīng)用中針對媒介下載是必不可少的功能。對于需與前端交互實(shí)現(xiàn)動(dòng)態(tài)頁面交互、處理事件、更新和檢索服務(wù)器數(shù)據(jù)等,可通過自定義前端邏輯流基于JavaScript 編寫標(biāo)準(zhǔn)化的處理邏輯,以便在不同場景下的融合媒體類平臺(tái)皆可應(yīng)用[6]。
基于低代碼架構(gòu)的自定義前端邏輯流開發(fā)流程如圖5 所示。
圖5 媒介下載(自定義前端邏輯流)開發(fā)流程圖
首先創(chuàng)建自定義前端邏輯流,引用Commons FileUpoload 組件的下載功能作為調(diào)用方法。當(dāng)用戶點(diǎn)擊媒介觸發(fā)下載操作時(shí),根據(jù)配置映射的媒介contentId、fileURL 以及size 等參數(shù),獲取所需下載媒介的基礎(chǔ)信息。在創(chuàng)建好的前端邏輯流中開發(fā)下載操作的代碼。通過API 獲取fileURL,將文件讀入數(shù)據(jù)流中,設(shè)置編碼格式,設(shè)置響應(yīng)頭,循環(huán)獲取數(shù)據(jù)流中的數(shù)據(jù),下載完成后關(guān)閉數(shù)據(jù)流。將實(shí)現(xiàn)下載功能的代碼在本地完成構(gòu)建后,即可上傳至低代碼架構(gòu)開發(fā)平臺(tái),執(zhí)行并驗(yàn)證功能的完整性。
對于媒介上載功能,本文以自定義后端邏輯流的方式基于Java 編寫,通過調(diào)用Commons FileUpoload 組件的上傳功能,實(shí)現(xiàn)媒介的單個(gè)、批量、限制文件類型和大小的功能,如圖6 所示。
圖6 媒介上傳頁面
用戶上傳媒介,需經(jīng)過表單頁面、瀏覽器、服務(wù)器3 個(gè)環(huán)節(jié)。首先,瀏覽器提供給用戶1 個(gè)包含媒介上傳元素的表單頁面,用戶選定媒介后提交請求,媒介數(shù)據(jù)和其他表單信息被瀏覽器編碼并上傳至服務(wù)器端。服務(wù)器端解碼上傳的內(nèi)容,提取出超文本標(biāo)記語言(Hyper Text Markup Language,HTML)表單中的信息,將文件數(shù)據(jù)存入磁盤。當(dāng)媒介以數(shù)據(jù)流的形式提交到服務(wù)器端之后,使用common FileUpload 組件完成數(shù)據(jù)流的獲取和解析。組件中封裝了底層操作并提供相應(yīng)的API,可以調(diào)用SevletFileUpload API 實(shí)現(xiàn)文件上傳功能。此類媒介的上傳功能通過自定義后端邏輯流實(shí)現(xiàn),可封裝為標(biāo)準(zhǔn)化的組件,適用于各類融合媒體平臺(tái)涉及素材匯聚的部分。
本文描述的基于低代碼架構(gòu)開發(fā)平臺(tái)實(shí)現(xiàn)的通用型自定義組件和邏輯流的功能已形成標(biāo)準(zhǔn)化組件及邏輯流,在涉及媒介展示、上傳、下載功能的平臺(tái)中皆可復(fù)用。目前,在浙江廣播電視省級融合媒體平臺(tái)建設(shè)中,已有不少基于低代碼架構(gòu)開發(fā)的平臺(tái)復(fù)用該項(xiàng)通用型自定義組件及邏輯流功能,大大縮短了開發(fā)周期并節(jié)省了項(xiàng)目開發(fā)成本。