蘇斌
【摘要】廣播技術(shù)運(yùn)維服務(wù)平臺(tái)是一個(gè)完全自主設(shè)計(jì)開(kāi)發(fā),以實(shí)現(xiàn)高效的廣播播控業(yè)務(wù)管理、精準(zhǔn)的技術(shù)服務(wù)為目的,確保安全播出的平臺(tái)。其中播控運(yùn)維管理模塊實(shí)現(xiàn)了本臺(tái)播出二部技術(shù)業(yè)務(wù)的統(tǒng)一管理;廣播部導(dǎo)播綜合管理模塊能夠?yàn)楦鲝V播部提供及時(shí)的技術(shù)服務(wù);上下游聯(lián)絡(luò)機(jī)制模塊以播出信號(hào)鏈路為路由,實(shí)現(xiàn)了上下游技術(shù)部門(mén)的聯(lián)絡(luò)溝通。每個(gè)功能模塊既可獨(dú)立運(yùn)行,也可在不同PC上同時(shí)運(yùn)行多個(gè)實(shí)例,通過(guò)臺(tái)內(nèi)辦公網(wǎng)訪問(wèn)統(tǒng)一的數(shù)據(jù)庫(kù),模塊之間也可實(shí)現(xiàn)數(shù)據(jù)交換。此平臺(tái)于2018年10月正常運(yùn)行至今。
【關(guān)鍵詞】自主設(shè)計(jì)開(kāi)發(fā);安全播出;經(jīng)濟(jì)務(wù)實(shí);統(tǒng)一管理;精準(zhǔn)服務(wù);數(shù)據(jù)庫(kù)管理
中圖分類號(hào):TN929? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ?DOI:10.12246/j.issn.1673-0348.2021.08.028
廣播播控的業(yè)務(wù)管理盡管已經(jīng)采用了一些電子化的方式,但并沒(méi)有將部門(mén)各項(xiàng)技術(shù)管理工作有機(jī)地結(jié)合在一起,不利于管理工作的量化。同時(shí),各廣播部導(dǎo)播的日常工作中,各種日志、數(shù)據(jù)報(bào)表等都沒(méi)有統(tǒng)一的管理機(jī)制,各類技術(shù)服務(wù)需求缺乏高效的與技術(shù)部門(mén)的對(duì)接機(jī)制,技術(shù)部門(mén)上下游之間的播出信號(hào)聯(lián)絡(luò)確認(rèn)機(jī)制也需進(jìn)一步完善。為此,我們確定自主設(shè)計(jì)開(kāi)發(fā)一個(gè)高效的廣播技術(shù)運(yùn)維服務(wù)平臺(tái)。
1. 系統(tǒng)設(shè)計(jì)
1.1 系統(tǒng)架構(gòu)
1.2 總體設(shè)計(jì)
本平臺(tái)包括播控運(yùn)維管理模塊、廣播部導(dǎo)播綜合管理模塊、上下游技術(shù)聯(lián)絡(luò)機(jī)制(播出信號(hào)雙向確認(rèn)模塊)3個(gè)部分。播出運(yùn)維管理模塊、廣播部導(dǎo)播綜合管理模塊均能夠收集、存儲(chǔ)本部門(mén)的各種工作數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行分析、統(tǒng)計(jì),以體現(xiàn)工作中的優(yōu)點(diǎn)和短板,對(duì)日常工作加以指導(dǎo)、修正,提高部門(mén)的工作管理水平,提高安全播出保障能力。此外,這2個(gè)模塊之間還能夠進(jìn)行數(shù)據(jù)交換,為各廣播部提供精準(zhǔn)的技術(shù)服務(wù)。上下游聯(lián)絡(luò)機(jī)制模塊能夠?qū)崿F(xiàn)上下游各技術(shù)部門(mén)之間的信息溝通,實(shí)現(xiàn)播出信號(hào)的雙向確認(rèn)。
1.3 設(shè)計(jì)目標(biāo)
滿足需求的同時(shí),平臺(tái)要設(shè)計(jì)得盡量簡(jiǎn)潔;UI設(shè)計(jì)、界面配色充分反映該部門(mén)的特點(diǎn);軟件操作簡(jiǎn)便,最大程度減少鍵盤(pán)輸入操作,最大程度降低學(xué)習(xí)成本;無(wú)需修改庫(kù)、數(shù)據(jù)表,無(wú)需修改程序代碼,即可滿足今后業(yè)務(wù)功能改變;各模塊不僅可以單機(jī)運(yùn)行,也可多機(jī)同時(shí)運(yùn)行多個(gè)實(shí)例,通過(guò)臺(tái)內(nèi)辦公網(wǎng)訪問(wèn)統(tǒng)一的數(shù)據(jù)庫(kù),并在各模塊之間實(shí)現(xiàn)數(shù)據(jù)交換;平臺(tái)采用多用戶、多層權(quán)限訪問(wèn)方式,嚴(yán)格控制不同權(quán)限用戶的操作范圍;運(yùn)行平臺(tái)的PC禁止直連外網(wǎng),需設(shè)置防火墻,安裝殺毒軟件。
2. 功能設(shè)計(jì)
2.1 播控運(yùn)維管理模塊
為播控運(yùn)維管理模塊設(shè)計(jì)了人員管理、值班管理、轉(zhuǎn)播管理、維護(hù)管理、設(shè)備器材、培訓(xùn)考核、文件資料等功能模塊。其中每個(gè)功能模塊都含有若干子功能。 轉(zhuǎn)播管理包括轉(zhuǎn)播調(diào)度、轉(zhuǎn)播日志、轉(zhuǎn)播統(tǒng)計(jì)及其它調(diào)度文件的管理;維護(hù)管理包括每年各項(xiàng)維護(hù)計(jì)劃、各種維護(hù)日志、系統(tǒng)與設(shè)備的測(cè)試、各廣播部提出的維護(hù)申請(qǐng)等管理;設(shè)備器材包括部門(mén)所有設(shè)備、器材的資產(chǎn)管理、調(diào)撥借用等;培訓(xùn)考核管理包括部門(mén)全體員工的培訓(xùn)與考核記錄及量化統(tǒng)計(jì)。
2.2 廣播部導(dǎo)播綜合管理模塊
為導(dǎo)播綜合管理模塊設(shè)計(jì)了人員管理、值班管理、轉(zhuǎn)播管理、播出管理、維護(hù)申請(qǐng)等子功能。廣播部可通過(guò)維護(hù)申請(qǐng)功能隨時(shí)向技術(shù)部門(mén)提出維護(hù)要求;播控運(yùn)維管理中的維護(hù)申請(qǐng)功能則實(shí)現(xiàn)維護(hù)申請(qǐng)的接收、呈現(xiàn),2個(gè)維護(hù)功能之間能夠?qū)崿F(xiàn)各項(xiàng)維護(hù)工作的進(jìn)度反饋、完成情況等數(shù)據(jù)交換。播出管理包括節(jié)目播出表單、節(jié)目網(wǎng)絡(luò)互動(dòng)等,人員管理、值班管理和轉(zhuǎn)播管理與上述類似,不再贅述。
2.3 上下游技術(shù)部門(mén)聯(lián)絡(luò)機(jī)制
為上下游技術(shù)部門(mén)聯(lián)絡(luò)機(jī)制設(shè)計(jì)了播出信號(hào)雙向確認(rèn)功能。以播出信號(hào)鏈路為路由,實(shí)現(xiàn)此路由上各部門(mén)之間的播出信號(hào)的一鍵雙向確認(rèn)。
3.數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)采用SQL Server,通過(guò)ODBC訪問(wèn)。
3.1 建立完善的數(shù)據(jù)庫(kù)
在大量需求分析和功能設(shè)計(jì)的基礎(chǔ)上,為3個(gè)功能模塊設(shè)計(jì)了各自的數(shù)據(jù)庫(kù),3個(gè)模塊共計(jì)建立了近70張數(shù)據(jù)表。建立哪些數(shù)據(jù)表、數(shù)據(jù)表中建立哪些字段、每個(gè)字段的數(shù)據(jù)類型及長(zhǎng)度都經(jīng)過(guò)仔細(xì)斟酌,以提供安全可靠的數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)查詢服務(wù),并避免在后期的代碼編寫(xiě)中增減或修改表結(jié)構(gòu)為開(kāi)發(fā)工作帶來(lái)麻煩。在這里無(wú)法展示所有的數(shù)據(jù)表,挑選其中2張如圖3、圖4所示
3.2 設(shè)置數(shù)據(jù)表關(guān)系
對(duì)于數(shù)據(jù)庫(kù)來(lái)說(shuō),數(shù)據(jù)是什么不是最重要的,數(shù)據(jù)之間的關(guān)系才是最重要的。為此,在各個(gè)數(shù)據(jù)表之間選擇所需字段設(shè)置了相應(yīng)關(guān)系,將所有數(shù)據(jù)形成一個(gè)有機(jī)的整體,在存儲(chǔ)、刪除數(shù)據(jù)時(shí)均嚴(yán)格遵守?cái)?shù)據(jù)之間的關(guān)系。值班日志表中的當(dāng)班AID字段與員工信息表中的員工ID字段這對(duì)關(guān)系如圖5所示;值班日志表中的當(dāng)班班別字段與值班類別表中的值班類別字段這對(duì)關(guān)系如圖6所示。
3.3 輔助數(shù)據(jù)表
建立輔助數(shù)據(jù)表的目的就是為了實(shí)現(xiàn)在不修改數(shù)據(jù)表結(jié)構(gòu),不修改程序代碼的情況下,平臺(tái)也能夠適應(yīng)今后業(yè)務(wù)變化的需要。
3.4? 數(shù)據(jù)的備份與恢復(fù)
為了保證數(shù)據(jù)安全,制定了數(shù)據(jù)庫(kù)備份計(jì)劃。每天零點(diǎn)30分后臺(tái)自動(dòng)執(zhí)行,通過(guò)網(wǎng)絡(luò)備份到另一臺(tái)PC上,備份方式為完整備份。每周二下午整理一次備份文件。
4.軟件代碼編寫(xiě)
軟件開(kāi)發(fā)環(huán)境采用了Microsoft Visual Studio,整個(gè)代碼編寫(xiě)始終遵循前文所述的設(shè)計(jì)目標(biāo)。在整個(gè)代碼編寫(xiě)中,使用了眾多的技術(shù):采用WebBrowser控件實(shí)現(xiàn)多種文檔、圖片的加載呈現(xiàn);采用Excel類實(shí)現(xiàn)Excel文檔的載入與導(dǎo)出;采用Chart控件實(shí)現(xiàn)餅圖、柱狀圖對(duì)數(shù)據(jù)統(tǒng)計(jì)結(jié)果的呈現(xiàn);采用NetStream類實(shí)現(xiàn)辦公網(wǎng)內(nèi)的網(wǎng)絡(luò)通訊和數(shù)據(jù)交換;自定義多個(gè)類結(jié)構(gòu)、函數(shù)、子過(guò)程,實(shí)現(xiàn)屏幕分辨率自適應(yīng)、防程序多次運(yùn)行、無(wú)操作自動(dòng)注銷等小功能。播控運(yùn)維管理模塊的主界面如圖7所示。導(dǎo)播綜合管理模塊的主界面如圖8所示;播出信號(hào)雙向確認(rèn)的主界面如圖9所示。
9. 播出信號(hào)雙向主界面
由于篇幅有限,這里只介紹如何使用二進(jìn)制數(shù)據(jù)流雙向轉(zhuǎn)換,將文檔、圖片存入Image字段,并可從Image字段中重新生成原文件。同時(shí),文檔和圖片均可用WebBrowser控件呈現(xiàn)。這種方法實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,代碼運(yùn)行穩(wěn)定,執(zhí)行效率較高。下列代碼并不是完整的代碼,只是實(shí)現(xiàn)此功能的關(guān)鍵代碼。
Dim DiaoDustream As New ADODB.Stream? '定義用于加載轉(zhuǎn)播調(diào)度的數(shù)據(jù)流
Dim rsDiaoDu As New ADODB.Recordset? '定義用于存儲(chǔ)轉(zhuǎn)播調(diào)度的記錄集
DiaoDustream.Type=ADODB.StreamTypeEnum.adTypeBinary? '設(shè)置數(shù)據(jù)流
DiaoDustream.Open()? '打開(kāi)數(shù)據(jù)流
DiaoDustream.LoadFromFile(具休路徑/文檔名)? '將文檔轉(zhuǎn)換成數(shù)據(jù)流
WebBrowser1.Navigate(具休路徑/文檔名, False)? '將這個(gè)文檔在WebBrowser控件中呈現(xiàn)出來(lái)
rsDiaoDu.Fields("調(diào)度單").Value=DiaoDustream.Read? '將數(shù)據(jù)流讀到字段中
以上是將文檔轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)流并存儲(chǔ)到字段中的過(guò)程。再次強(qiáng)調(diào)這不是完整的代碼,rsDiaoDu記錄集的產(chǎn)生及寫(xiě)入數(shù)據(jù)庫(kù)都省略了。寫(xiě)入數(shù)據(jù)庫(kù)時(shí)應(yīng)把文檔的擴(kuò)展名同時(shí)存入某字段,以方便今后從數(shù)據(jù)庫(kù)生成原文檔時(shí)使用。生成原文件如下列代碼。
DiaoDustream.Mode=ADODB.ConnectModeEnum.adModeReadWrite? '? ? ? ? ?設(shè)置數(shù)據(jù)流的讀寫(xiě)模式
DiaoDustream.Type=ADODB.StreamTypeEnum.adTypeBinary? ? '? ? ? ? ? 設(shè)置數(shù)據(jù)流
DiaoDustream.Open()? ' 打開(kāi)數(shù)據(jù)流
DiaoDustream.Write(rsDiaoDu.Fields("調(diào)度單").Value)? '? ? ? ? ? ? ? ?將字段內(nèi)容寫(xiě)入數(shù)據(jù)流
DiaoDustream.SaveToFile(具體路徑/文檔名,DODB.SaveOptionsEnum.adSaveCreateOverWrite)? '生成原文件
WebBrowser1.Navigate(具休路徑/文檔名,F(xiàn)alse)? '將這個(gè)文檔在WebBrowser控件中呈現(xiàn)出來(lái)
生成原文件時(shí),擴(kuò)展名一定要與原來(lái)相同,否則就會(huì)出現(xiàn)亂碼。
5. 使用情況
自2018年10月開(kāi)始,各模塊已在3個(gè)部門(mén)投入使用,運(yùn)行穩(wěn)定,安全機(jī)制完善。本平臺(tái)的建成,提高了資源利用效率,實(shí)現(xiàn)了系統(tǒng)、資源、業(yè)務(wù)流程的智能化管控,更好地滿足了廣播節(jié)目、技術(shù)業(yè)務(wù)需求,符合總臺(tái)媒體融合戰(zhàn)略部署。
平臺(tái)操作方便、快捷,用戶體驗(yàn)舒適、流暢,解決了工作中的實(shí)際問(wèn)題,經(jīng)濟(jì)、務(wù)實(shí)、高效,減輕了工作人員的壓力,保障了安全播出,獲得了各使用部門(mén)的一致好評(píng)。
本平臺(tái)完全由播出二部技術(shù)人員自主設(shè)計(jì)開(kāi)發(fā)。這種開(kāi)發(fā)形式成本低,維護(hù)、升級(jí)方便,開(kāi)發(fā)出的產(chǎn)品更符合本部門(mén)的實(shí)際工作情況。同時(shí)也鍛煉了隊(duì)伍,提高了技術(shù)的業(yè)務(wù)水平。
參考文獻(xiàn):
[1]Thomas Nield.Getting Started with SQL. OReilly Media,2016.
[2]Lars Powers,Mike Snell.Visual Studio技術(shù)大全. 人民郵電出版社.