劉淑影 晁 妍 王 靜 曾 濤
(阜陽師范學院, 安徽 阜陽 236037)
隨著微信的發(fā)展,許多高校在微信基礎上建立了信息門戶、統(tǒng)一身份認證、一卡通等系統(tǒng),傳統(tǒng)的數字化校園正逐漸轉型為智慧校園。學校的信息化中心是全校數據存儲中心及核心網絡設備的運行中心和存放場所,因此保障信息化中心機房的安全是智慧校園建設中非常重要的一個方面。學校信息化中心機房報警系統(tǒng)產生的報警信息,過去一般是采用短信發(fā)送。用短信發(fā)送報警信息的方式存在許多不足,因此研究開發(fā)了基于微信企業(yè)號的機房智能報警信息推送平臺。
用短信發(fā)送報警信息,就是在信息化中心機房報警系統(tǒng)中增加短信模塊,插入手機卡,然后設置幾個管理員的手機號,通過短信將報警信息發(fā)送到管理員的手機上[1-2]。短信發(fā)送報警信息,存在的主要問題是信號易受干擾和運行費用較高。
遇到特殊天氣如大風、暴雨等惡劣天氣,手機信號受影響,可能出現(xiàn)信息接收延遲甚至接收不到的問題,同時機房也容易產生異常報警。這時如果確有重要報警信息,管理員就可能錯過接收時機,而無法及時跟蹤處理問題。
報警信息的短信發(fā)送會產生費用,移動公司、電信公司及聯(lián)通公司的短信業(yè)務都是按信息推送的數目收費。學校信息化中心機房報警系統(tǒng)一般每月發(fā)送的報警信息為150條左右,每條信息至少發(fā)送到4個人的手機上,這樣每個月就要發(fā)送600條以上的短信。機房中的手機卡一旦欠費,則無法發(fā)送告警信息。而機房中的手機卡欠費又很難及時被發(fā)現(xiàn),因此這也成了一個安全隱患。
另外,單條短信字數一般要求限制在70字以內。超出字數的短信,會被切成幾條后發(fā)送,這將導致信息展示不清晰,閱讀不方便。
微信企業(yè)號是微信為企業(yè)客戶提供的移動服務,提供了企業(yè)移動應用入口。利用微信企業(yè)號,企業(yè)或第三方服務商可以快速、低成本地實現(xiàn)高質量的移動輕應用,有效簡化管理流程,提高信息溝通和協(xié)同效率。
現(xiàn)在幾乎人人都有一個微信號,學校不必再部署微信消息發(fā)送服務器,只需注冊一個校園企業(yè)號。在企業(yè)號中將報警信息對應的服務器域名加入,即可在關注此企業(yè)號的手機微信上顯示報警消息界面。通過編程將機房的報警信息取出,調用微信企業(yè)號的消息推送接口,即可實現(xiàn)將自動化機房報警信息推送到微信企業(yè)號中的功能[3]。
在微信企業(yè)號中嵌入程序方便,發(fā)送信息條數不受限制,可同時發(fā)送給多個人,而且不產生費用。企業(yè)微信是騰訊官方首推合作伙伴——微信企業(yè)號應用第一品牌,永久免費,且無需安裝App,在線即可接收消息。運用微信企業(yè)號推送機房報警信息,完全可以解決短信發(fā)送方式的信息發(fā)送不及時和成本較高的問題。
以我校信息化中心共濟智能機房為例。智能機房的報警系統(tǒng),首先通過傳感器模塊采集運行狀態(tài)的數據及故障信息,然后將采集到的數據信息進行判斷分類,將檢測到的異常數據信息根據預先定義的規(guī)則,通過報警信息推送平臺發(fā)送到管理人員和相應的異常模塊維護人員微信號上。平臺框架如圖1所示。
圖1 平臺框架
報警信息推送平臺包括4個層次:數據采集層、數據過濾層、數據發(fā)送層和用戶層(見圖2)。數據采集層與中心智能機房系統(tǒng)對接,讀取各個傳感器采集的機房的溫度、濕度和UPS狀態(tài)、市電輸入狀態(tài)、空調運行狀態(tài)、火警報警信息、設備運行狀態(tài)等信息數據。數據過濾層對采集到的數據進行過濾,轉換成統(tǒng)一格式(不同傳感器采集數據的格式不一樣)。各個模塊的實際情況不同,報警閥值也需要設置為不同的數值,對超過閥值的儀器進行報警。數據發(fā)送層接收來自過濾層的達到報警條件的信息,并負責信息的分發(fā)。用戶層采用微信客戶端的公眾號,負責接收各個模塊的報警信息。分層需要的信息如采集模塊數據、過濾規(guī)則等,保存于SQL數據庫中。
3.2.1 數據采集
以共濟智能機房管理系統(tǒng)為例。數據采集層可以通過Web Services或中間庫的方法,讀取機房管理系統(tǒng)中各模塊的數據狀態(tài)。我們采用的是中間庫的方式。采用中間庫方式,無需另外搭建Web Services服務器,只需把共濟智能機房管理系統(tǒng)數據庫中讀取各個模塊的數據抽取到中間庫中。通過數據采集程序,將共濟機房智能管理系統(tǒng)中各模塊的數據采集到中間庫。
圖2 平臺層次
3.2.2 數據過濾
對數據采集層采集到的原始數據進行加工過濾。通過預先設置好的邏輯判斷語句,去掉沒有用的信息,留下需要進行報警的數據信息,并且對各個報警信息根據情況輕重緩急分成不同的級別。重新組合信息后,將不同級別的信息映射到不同的管理員和相關人員,然后準備發(fā)送。此處信息的不同發(fā)送人員,是通過配置寫入到相應的配置文件中實現(xiàn)的。
3.2.3 數據發(fā)送
從微信企業(yè)號中獲取企業(yè)號的accessToken、企業(yè)號ID、管理組密鑰等信息,然后調用微信企業(yè)號的消息發(fā)送接口,發(fā)送方法SendQYMessage(sCorpID, corpsecret, responeJsonStr, Encoding.UTF8),將組織好的數據發(fā)送到配置好的應用平臺。根據配置的相關權限,將不同的信息發(fā)送給不同人員。比如:空調問題,既要發(fā)送到管理員手機上,同時也要發(fā)送到空調維修人的手機上;供電情況,既要發(fā)送到機房管理員手機上,也要發(fā)送到電力維修人員的手機上。此功能代碼實現(xiàn)簡單,使用定時器的方式,每隔幾分鐘讀取一次告警信息,然后發(fā)送。同樣,定時器的時間也可以存儲在配置文件中。消息發(fā)送之后,記錄當前已發(fā)送的最大序號,確保已發(fā)送的數據不會重復發(fā)送。
3.2.4 用戶層配置
系統(tǒng)的用戶層主要是用來接收數據發(fā)送通道層發(fā)送的數據。用戶層的配置也很簡單:在學校企業(yè)號管理平臺的應用與小程序中,增加接收信息的應用“告警信息”,并根據里面的要求填寫好域名等相關信息,按要求在發(fā)送程序的服務器上做好設置(如圖3所示)。
圖3 報警信息模塊配置
在企業(yè)號管理平臺中配置好應用后,相關用戶在手機微信上關注學校的企業(yè)號,其手機微信的企業(yè)號里面即可顯示報警信息模塊。發(fā)送程序發(fā)送告警消息后,手機微信上的企業(yè)號里面的告警信息模塊就可以接收到對應的告警信息(如圖4所示)。管理員在收到相關告警信息后,就可以及時對機房出現(xiàn)的問題進行處理。
圖4 手機接收報警信息
研究開發(fā)的基于微信企業(yè)號的機房智能報警信息推送平臺,在學校的應用實踐表明,系統(tǒng)穩(wěn)定,報警信息推送及時。微信方式推送的報警信息,既可以通過裝有手機卡的手機進行接收,也可以通過連接wifi的手機、平板電腦、計算機以及接入有線網的電腦進行接收。相比基于手機卡的短信報警系統(tǒng),基于微信企業(yè)號的報警信息推送平臺更能夠有效保障中心機房的安全運行。