朱駿寧,彭 偉,沈富可
(1.華東師范大學(xué) 信息化治理辦公室,上海 200062;2.華東師范大學(xué) 計(jì)算機(jī)科學(xué)與軟件工程學(xué)院,上海 200062)
在日常的教學(xué)過(guò)程、行政辦公和科研會(huì)議等不同場(chǎng)景中,參會(huì)者對(duì)遠(yuǎn)程視頻會(huì)議有著不同的需求。如在教學(xué)過(guò)程中,視頻會(huì)議常被用作支持遠(yuǎn)程教學(xué)的技術(shù)手段,所以對(duì)遠(yuǎn)端學(xué)員參會(huì)的便捷性、教師與講義畫面的靈活切換和音畫傳輸質(zhì)量上有著更高的要求;而在行政和科研會(huì)議中,往往對(duì)會(huì)議發(fā)起的即時(shí)性和便捷性,以及對(duì)會(huì)議過(guò)程中的文檔展示、協(xié)同操作等互動(dòng)性上有著更高的要求。
目前,國(guó)內(nèi)高校視頻會(huì)議系統(tǒng)的建設(shè)思路主要是以支持H.323 協(xié)議的硬件視頻會(huì)議終端為核心,建設(shè)符合網(wǎng)絡(luò)視頻會(huì)議需求的多媒體會(huì)議室。在這樣的會(huì)議室建設(shè)中,需要考慮攝像頭的安裝位置、視頻矩陣的選擇、各種信號(hào)源的靈活切換、時(shí)序電源、網(wǎng)絡(luò)設(shè)備和外圍多媒體設(shè)備如顯示器等[1]。這使得一間標(biāo)準(zhǔn)的網(wǎng)絡(luò)視頻會(huì)議室建設(shè)需要投入較高的人力、財(cái)力和時(shí)間成本,而目前預(yù)先建設(shè)的會(huì)議室,往往又很難滿足不同性質(zhì)和規(guī)模的會(huì)議,很難滿足對(duì)場(chǎng)地的大小、布局、遠(yuǎn)端畫面和文檔講義的展示方式等不同要求。另一方面,在會(huì)議連接的穩(wěn)定性和音視頻畫面的流暢度上,私有化部署的視頻會(huì)議系統(tǒng)又非常依賴基礎(chǔ)網(wǎng)絡(luò)的健壯性。國(guó)際電信聯(lián)盟電信標(biāo)準(zhǔn)分局(ITU-T)在1998 年制定了基于H.323 的松耦合擴(kuò)展協(xié)議H.332[2]以解決視頻會(huì)系統(tǒng)的規(guī)模擴(kuò)展問(wèn)題[3]。此后國(guó)內(nèi)外也開始了一些基于IP 組播的純軟件視頻會(huì)議系統(tǒng)相關(guān)研究[4]。
近年來(lái),公有的視頻會(huì)議服務(wù)逐漸流行起來(lái)。它們大多通過(guò)軟件客戶端、移動(dòng)客戶端甚至瀏覽器直接向用戶交付視頻會(huì)議服務(wù),不但使視頻會(huì)議的發(fā)起和使用更加便捷,同時(shí)也能保證較高的流暢度和清晰度。
本研究以華東師范大學(xué)視頻會(huì)議系統(tǒng)建設(shè)為例,通過(guò)設(shè)計(jì)并建設(shè)統(tǒng)一的視頻會(huì)議門戶,將公有視頻會(huì)議服務(wù)通過(guò)校內(nèi)平臺(tái)進(jìn)行服務(wù)資源的統(tǒng)一交付、使用和管理。視頻會(huì)議統(tǒng)一門戶的建設(shè)增加了視頻會(huì)議服務(wù)交付的即時(shí)性和便捷性,減小了視頻會(huì)議場(chǎng)地的建設(shè)成本和周期,降低了視頻會(huì)議服務(wù)對(duì)用戶的技術(shù)門檻和學(xué)校相關(guān)部門的管理難度和工作壓力。
華東師范大學(xué)虛擬視頻會(huì)議門戶使用了兩種不同的公有視頻會(huì)議服務(wù)。由于商業(yè)授權(quán)模式的區(qū)別,門戶系統(tǒng)分別以“直接預(yù)約”和“會(huì)議室預(yù)約”兩種方式實(shí)現(xiàn)虛擬視頻會(huì)議服務(wù)的預(yù)約功能。
(1)直接預(yù)約模式
該服務(wù)的授權(quán)方式只對(duì)超過(guò)并發(fā)數(shù)的與會(huì)者進(jìn)行限制收費(fèi)。例如,服務(wù)授權(quán)為100 人并發(fā),即全??梢酝ㄟ^(guò)門戶系統(tǒng)同時(shí)發(fā)起50 場(chǎng)有2 人同時(shí)參與的會(huì)議,或2 場(chǎng)50 人同時(shí)參與的會(huì)議,若并發(fā)人數(shù)超過(guò)100 則在事后對(duì)超出的部分另行結(jié)算。所以,學(xué)校門戶系統(tǒng)無(wú)需考慮虛擬會(huì)議室占用問(wèn)題,即預(yù)約的沖突機(jī)制,選擇該服務(wù)的用戶可以直接預(yù)約發(fā)起會(huì)議。一旦會(huì)議預(yù)約創(chuàng)建成功,學(xué)校門戶系統(tǒng)則會(huì)將信息保存在數(shù)據(jù)庫(kù)中。meeting_key 這個(gè)字段作為會(huì)議被創(chuàng)建后的唯一標(biāo)識(shí),門戶系統(tǒng)將通過(guò)該字段對(duì)會(huì)議信息進(jìn)行維護(hù)或查詢會(huì)議錄像文件。
會(huì)議預(yù)約成功后,系統(tǒng)會(huì)自動(dòng)將會(huì)議信息記錄在門戶系統(tǒng)本地的數(shù)據(jù)庫(kù)中,包括會(huì)議的URL 鏈接等,并根據(jù)用戶在預(yù)約會(huì)議時(shí)的選擇,決定是否向與會(huì)者發(fā)送包含會(huì)議信息的提醒郵件:
在會(huì)議預(yù)約的過(guò)程中,還可能因?yàn)楣蟹?wù)的授權(quán)等問(wèn)題,造成會(huì)議無(wú)法被正常創(chuàng)建,門戶系統(tǒng)則會(huì)記錄下公有系統(tǒng)返回的報(bào)錯(cuò)信息,并將會(huì)議無(wú)法創(chuàng)建的原因通過(guò)郵件方式發(fā)送給主持人,即會(huì)議的預(yù)約創(chuàng)建者:
(2)會(huì)議室預(yù)約模式
該服務(wù)的授權(quán)方式同時(shí)限制了會(huì)議的并發(fā)數(shù)及每場(chǎng)會(huì)議的與會(huì)者人數(shù)。所以,學(xué)校的門戶系統(tǒng)需考慮會(huì)議預(yù)約的沖突機(jī)制,因此我們引入了“虛擬會(huì)議室”的概念。例如,授權(quán)中并發(fā)會(huì)議的數(shù)量為10 個(gè)會(huì)議,其中5 個(gè)會(huì)議限制了與會(huì)者人數(shù)最高為25 人,其余會(huì)議限制了與會(huì)者最高人數(shù)為50 人,則我們會(huì)在門戶系統(tǒng)中設(shè)置10 個(gè)虛擬會(huì)議室,包含5 間可容納25 人的會(huì)議室和5 間可容納50 人的會(huì)議室。在預(yù)約虛擬會(huì)議室時(shí),用戶需輸入會(huì)議開始的時(shí)間及人數(shù),學(xué)校門戶系統(tǒng)則會(huì)自動(dòng)查找這個(gè)時(shí)間段內(nèi)空閑且符合人數(shù)要求的“虛擬會(huì)議室”,將該虛擬會(huì)議室標(biāo)記占用并分配給申請(qǐng)用戶。若沖突,則學(xué)校門戶系統(tǒng)會(huì)提示當(dāng)前時(shí)間段內(nèi)沒(méi)有空閑虛擬會(huì)議室,提醒用戶更改時(shí)間重新申請(qǐng),流程如圖1 所示。
圖1 會(huì)議室預(yù)約模式系統(tǒng)流程圖
具體實(shí)現(xiàn)中,系統(tǒng)主要使用了一段SQL 語(yǔ)句來(lái)解決查詢沖突問(wèn)題。該語(yǔ)句主要內(nèi)容為where start_time between 會(huì)議開始時(shí)間and 會(huì)議結(jié)束時(shí)間,以這樣的判斷語(yǔ)句來(lái)檢測(cè)是否存在會(huì)議室沖突。如圖2 所示,較寬橫線代表已有預(yù)約,較細(xì)橫線代表這次申請(qǐng)的時(shí)間,在預(yù)約過(guò)程中會(huì)有以下四種情況產(chǎn)生沖突:
①已有預(yù)約會(huì)議的開始時(shí)間“S”在本次申請(qǐng)“開始”和“結(jié)束”之間。
②已有預(yù)約會(huì)議的結(jié)束時(shí)間“E”在本次申請(qǐng)“開始”和“結(jié)束”之間。
③申請(qǐng)的“開始”時(shí)間在已有預(yù)約會(huì)議的“S”和“E”之間。
④申請(qǐng)的“結(jié)束”時(shí)間在已有預(yù)約會(huì)議的“S”之后。
圖2 會(huì)議室沖突判定邏輯圖
按照以上四種沖突情況,編寫了相應(yīng)的SQL 語(yǔ)句進(jìn)行判定以規(guī)避預(yù)約過(guò)程中可能發(fā)生的沖突情況。針對(duì)正在進(jìn)行的會(huì)議可能未按約定時(shí)間結(jié)束的問(wèn)題,門戶系統(tǒng)中還設(shè)置了可供管理員自由調(diào)節(jié)的窗口時(shí)間,即在圖2中已預(yù)約會(huì)議的結(jié)束時(shí)間“E”和本次申請(qǐng)的“開始”之間設(shè)置一個(gè)區(qū)間(如20 分鐘),以在兩場(chǎng)會(huì)議之間形成一個(gè)20 分鐘的封閉時(shí)間區(qū)間,管理員可以根據(jù)門戶系統(tǒng)中會(huì)議室的實(shí)際占用情況,動(dòng)態(tài)調(diào)整該時(shí)間區(qū)間以避免沖突或虛擬會(huì)議室資源的浪費(fèi)。同時(shí),系統(tǒng)中還會(huì)對(duì)其它可能造成沖突的情況進(jìn)行判定,如是否有虛擬會(huì)議室處于關(guān)閉狀態(tài),是否有僅供管理員分配的預(yù)留會(huì)議室等。門戶系統(tǒng)管理員則可以在系統(tǒng)后臺(tái),查看所有會(huì)議室的預(yù)約情況,如圖3 所示。
圖3 會(huì)議室預(yù)約情況展示界面
華東師范大學(xué)的信息系統(tǒng)均通過(guò)學(xué)?!肮矓?shù)據(jù)庫(kù)”賬號(hào)和密碼進(jìn)行統(tǒng)一身份認(rèn)證。在本系統(tǒng)的設(shè)計(jì)中,我們沒(méi)有簡(jiǎn)單地使用SSO 方式,而是在用戶首次登錄時(shí)將密碼臨時(shí)記錄在門戶系統(tǒng)本地,同時(shí)通過(guò)LDAP 接口去“公共數(shù)據(jù)庫(kù)”進(jìn)行驗(yàn)證。如果驗(yàn)證通過(guò),再使用會(huì)議系統(tǒng)的相關(guān)接口,為用戶在系統(tǒng)中同步創(chuàng)建賬號(hào),如圖4 所示。
圖4 身份認(rèn)證流程圖
由于“公共數(shù)據(jù)庫(kù)”使用的LDAP 無(wú)法獲取所有用戶準(zhǔn)確的郵箱信息,而會(huì)議的邀請(qǐng)、通知等功能又依賴于郵件功能,所以我們通過(guò)校內(nèi)API 接口從其它系統(tǒng)獲取用戶郵箱信息。由于獲取信息是通過(guò)SOAP 方式獲得的,因此單獨(dú)編寫了EcnuAPIClass,以調(diào)用校內(nèi)API接口:
為了使學(xué)校用戶能夠更直觀便捷地發(fā)起會(huì)議,我們?cè)跁?huì)議預(yù)約功能中增加了校內(nèi)黃頁(yè)的設(shè)計(jì),使用戶能夠在黃頁(yè)中直接查詢并將與會(huì)者加入邀請(qǐng)列表,而無(wú)需手動(dòng)輸入與會(huì)者的姓名和郵箱等信息,從而使會(huì)議預(yù)約的過(guò)程更加人性化,如圖5 所示。
考慮到目前的使用場(chǎng)景中,仍需要兼容舊版本的IE瀏覽器,我們放棄了流行的結(jié)構(gòu)化的javascript 語(yǔ)言,如VueJS,React 和Angula,而使用了bootstrap3+jquery 的組合編寫。通過(guò)編寫腳本定時(shí)運(yùn)行,將校內(nèi)教職工信息和組織結(jié)構(gòu)全部同步到門戶系統(tǒng)本地。
圖5 校內(nèi)黃頁(yè)功能界面
華東師范大學(xué)通過(guò)建設(shè)視頻會(huì)議統(tǒng)一門戶,引入了公有視頻會(huì)議服務(wù),徹底解決了傳統(tǒng)硬件視頻會(huì)議模式在高校應(yīng)用時(shí)的部署復(fù)雜度高、易用性差、對(duì)基礎(chǔ)網(wǎng)絡(luò)健壯性依賴等問(wèn)題。兩種預(yù)約模式與校內(nèi)黃頁(yè)功能的結(jié)合,使視頻會(huì)議的發(fā)起和預(yù)約過(guò)程更加便捷和人性化,使視頻會(huì)議不再是重要會(huì)議及活動(dòng)的專屬保障工作,而使其能夠真正服務(wù)于教職工的日常辦公、教學(xué)和科研。