◆彭麗麗
(蘇州科技大學外國語學院 江蘇 215009)
基于微信的高校語音實驗室監控系統的設計與實現
◆彭麗麗
(蘇州科技大學外國語學院 江蘇 215009)
為了保證語音實驗室內的服務器高效使用,就要實時了解和監控語音實驗室內的工作情況。本文提出一種基于微信的語音實驗室監控系統,管理者可以通過微信實時了解語音實驗室的健康狀況。通過實踐證明,相對傳統語音實驗室監控系統,該系統查看更方便,報警提醒更豐富。
微信;語音實驗室;監控系統
隨著國家信息化建設發展的不斷推進,教育信息化建設也得到突飛猛進的發展[1],高校數字校園基礎平臺建設基本完成。隨著應用水平的不斷提高,應用服務器的增加,高校對語音實驗室擴建需求不斷提高。再加上“互聯網+教育”模式的不斷推進,高校語音實驗室從小型語音實驗室向大型語音實驗室快速演變。因此語音實驗室的監控及管理也向正規化轉變,如何高效地監控語音實驗室運轉狀態,是高校信息化發展的重要部分。
本文描述了在.NET的架構基礎上,通過微信接口在公眾號上進行語音實驗室監控的設計與實現,該系統不僅可以查詢語音實驗室的狀態數據,而且可以對它的報警信息進行實時推送。
1.1 微信
微信,是騰訊公司推出方便用戶進行互動交流的公共平臺[2]。微信公眾平臺是騰訊針對企業、媒體、明星等團體用戶推出的一項微信用戶訂閱服務,與微信一脈相承[3]。微信公眾號分為訂閱號和服務號, 訂閱號為用戶提供信息和資訊,服務號主要為用戶提供服務。對于成功接入公眾平臺開發接口的公眾賬號,用戶發消息給公眾號,微信公眾平臺服務器會使用 HTTP 請求對接入的網址進行消息推送,第三方服務器(開發者使用的服務器)可通過響應包回復特定結構的消息,從而達到回復消息的目的[4]。
1.2 微信接口開發
在微信上,開啟“服務器配置”,獲得開發者ID(應用ID,AppID和應用密鑰APP Secret),URL填寫微信公眾平臺需要數據接收的頁面(必須以 http://開頭,目前只支持 80 端口) ,Token是微信平臺的安全認證,該認證必須為英文或數字,長度為3-32個字符[5]。
1.3 接入微信的鏈接處理
URL服務器地址是微信服務器向開發者服務器推送消息和事件的地址,URL地址對應的開發者服務器業務邏輯處理接口,一般采用HTTP協議的POST和GET方式。如果請求是POST方式,就是微信服務器代替用戶將發送的消息轉發到開發者服務器。如果是GET方式,就是微信服務器代替用戶向開發者服務器請求消息,開發者服務器負責實現業務邏輯處理和數據存儲。
當用戶在微信上發送請求給微信公眾號后,請求消息首先在微信服務器上被處理成XML數據包格式,并轉發XML給開發者服務器(URL),開發者服務器接收到XML數據包后,再以 XML數據包格式返回給微信服務器,最后再由微信服務器再推送給用戶。
當普通微信用戶向公眾賬號發消息時,微信服務器將消息以XML數據包格式推送到后臺Web端即開發者所填寫的URL上[6]。
2.1 系統架構
語音實驗室監控系統主要實現對語音實驗室工作狀況的實時監控,通過接口獲取語音實驗室的電源及溫度等信息,通過業務處理,以接口的形式,提供給微信公眾號,語音實驗室管理可以通過關注微信實時了解語音實驗室的情況。為了實現其功能,整個語音實驗室監控系統采用四層架構,從上往下分別是:應用層、數據接口層、數據處理層和數據感知層,它們的功能如下:
(1)應用層:在微信公共號上實現語音實驗室監控系統的應用。
(2)數據接口層:實現與微信公共平臺API對接。
(3)數據處理層:實現數據感知層數據的存儲接口,對電源及溫濕度等數據進行預警處理。
(4)數據采集層:實現多種通信接口,來實現采集電源、溫濕度、煙感、火感和門禁等數據以及實現與數據處理層通信。
2.2 系統功能設計
系統功能如圖1所示,系統通過數據接口實現語音實驗室監控數據的采集工作,并對數據進行處理和存儲,異常數據根據異常的重要程度,通過微信告知語音實驗室管理員。

圖1 數據接口結構
語音實驗室數據通過數據接口實現,將獲得的數據進行格式解析之后,存入數據庫,通過微信接口提供實時語音實驗室的健康狀況。因為每個語音實驗室的數據接口不同,因此本文不介紹數據接口的實現,而重點介紹微信接口的實現。
2.3 微信接口
微信接口是連接手機與監控應用系統之間的橋梁,微信客戶端請求消息到微信服務端。由于微信接口將請求的消息轉發至監控應用系統,監控應用系統回復請求到微信服務端。微信接口轉發至微信客戶端,即實現了用戶微信與監控應用系統之間相互交互。
監控應用系統實現接收數據接口傳入的語音實驗室數據,并進行數據解析和處理,存入數據庫。對外提供URL數據交互接口,微信接口通過POST或GET方式獲得對應消息的數據。
微信POST、GET接口通過Request.HttpMethod.ToUpper() == "POST"/"GET",來選擇是Post還是Get方式進行消息推送,通過調用System.Web.HttpContext.Current.Response.Write(strMsg)方式,將要推送的消息寫入到流中,進行消息的傳遞。
以蘇州科技大學外國語學院語音實驗室的云桌面語音實驗室為例,監控應用系統WeChatMSCL采用ASP.NET進行開發,使用ADO.NET連接數據庫,通過微信接口實現的語音實驗室數據監控。
平臺搭建:硬件環境,采用VMware虛擬服務器。
應用實踐:
(1)通過微信,語音實驗室管理員可以隨時查看語音實驗室的UPS狀況,語音實驗室空調工作狀況,語音實驗室的環境狀態等。
(2)當語音實驗室UPS,空調和環境狀態報警報時,WeChatMSCL系統會向語音實驗室管理員發一條微信通知消息。
本文設計一種基于微信的語音實驗室監控系統,利用微信接口方便語音實驗室管理員查詢語音實驗室的工作狀況,為語音實驗室的管理帶來便利。相對于傳統的語音實驗室監控系統,基于微信的語音實驗室監控系統更符合當下人們使用智能手機的工作習慣,相比短息,微信通知內容更加豐富。因此,基于微信的語音實驗室監控系統有一定的應用價值。
本文下一步要做的工作是實現基于微信的語音實驗室視頻監控系統。
[1]孫健,李悅,邵通.基于Blackboard平臺進行高校網絡教學建設的應用和思考[J].電腦知識與技術:學術交流,2011.
[2]韓麗娜.微信公眾平臺在高校教育領域中的應用研究[J].無線互聯科技,2015.
[3]白浩,郝晶晶.微信公眾平臺在高校教育領域中的應用研究[J].中國教育信息化,2013.
[4]陸衛忠,趙玉雪,朱云祥,忻立.基于微信公眾平臺架構的應用系統開發[J].蘇州科技學院學報(自然科學版), 2015.
[5]曲廣強,關曉輝,王建元,楊永清,孫悅.基于微信公眾平臺的教務信息查詢系統設計與實現[J].東北電力大學學報,2015.
[6]王明亮,閔新力,姬江濤,劉閱軍,高珊.基于微信的移動外勤管理系統設計與實現[J].計算機應用與軟件,2015.
國家自然科學基金資助項目(61472267)。