• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于MQTT協(xié)議與Android技術(shù)的跨平臺訪客管理系統(tǒng)

      2017-03-30 11:54:14王成王躍
      物聯(lián)網(wǎng)技術(shù) 2017年3期

      王成+王躍

      摘 要:隨著訪客管理系統(tǒng)在企事業(yè)單位的逐步應(yīng)用,實現(xiàn)了來訪人員的信息化管理,但傳統(tǒng)的單機訪客系統(tǒng)仍然存在信息傳遞不及時、使用流程復(fù)雜等缺陷。文中設(shè)計了一種新型訪客管理系統(tǒng),在原有基于.NET平臺訪客管理系統(tǒng)的基礎(chǔ)上,綜合應(yīng)用MQTT協(xié)議及Android技術(shù)構(gòu)建跨平臺的訪客消息實時推送服務(wù)系統(tǒng),實現(xiàn)了來訪人員信息的及時傳遞,簡化了訪客管理系統(tǒng)使用流程。

      關(guān)鍵詞:MQTT;Android;訪客管理系統(tǒng);.NET

      中圖分類號:TP393 文獻標(biāo)識碼:A 文章編號:2095-1302(2017)03-00-03

      0 引 言

      近年來,隨著社會的不斷發(fā)展進步,信息化手段已逐漸滲透至社會各個領(lǐng)域。門衛(wèi)和前臺對來訪人員進行登記管理是安全保衛(wèi)工作的重要環(huán)節(jié)也是第一環(huán)節(jié)。然而迄今為止,我國政府機關(guān)部門、事業(yè)單位抑或絕大部分管理較完善的企業(yè),其安全保衛(wèi)及前臺來訪接待工作卻基本停留在手工書寫階段,有些單位雖然購買了訪客管理系統(tǒng),但由于系統(tǒng)使用過程復(fù)雜,導(dǎo)致來訪人員信息無法及時傳遞給受訪人,該系統(tǒng)常常處于閑置狀態(tài)。

      針對以上問題,本文提出了基于MQTT協(xié)議與Android技術(shù)訪客管理系統(tǒng)的設(shè)計方案,在原先已經(jīng)開發(fā)的基于.NET平臺訪客管理系統(tǒng)應(yīng)用的基礎(chǔ)之上,考慮現(xiàn)有Android系統(tǒng)在移動終端廣泛應(yīng)用的情況,綜合應(yīng)用物聯(lián)網(wǎng)及時通信協(xié)議及移動終端技術(shù)實現(xiàn)跨平臺的來訪人員信息的實時推送功能。

      1 系統(tǒng)架構(gòu)設(shè)計

      該訪客管理系統(tǒng)架構(gòu)主要由四個子系統(tǒng)組成,分別為基于.NET的訪客管理系統(tǒng)、基于JavaServlet的服務(wù)器系統(tǒng)、基于MQTT協(xié)議的Apollo服務(wù)器系統(tǒng)和基于Android的訪客數(shù)據(jù)查詢系統(tǒng)。平臺的基本結(jié)構(gòu)如圖1所示。

      當(dāng)有新訪客時,完整的訪客系統(tǒng)使用流程如下:

      (1)訪客需要先在門衛(wèi)處登錄訪客管理系統(tǒng)進行來訪登記,完成登記資料填寫后,數(shù)據(jù)會被保存至數(shù)據(jù)庫服務(wù)器。

      (2)系統(tǒng)自動給受訪人的Android終端發(fā)送一個通知消息,告知受訪人有訪客來訪。

      (3)受訪人打開Android終端的訪客數(shù)據(jù)查詢系統(tǒng),查看訪客信息并處理訪問請求。

      (4)訪客管理系統(tǒng)接收到訪客準(zhǔn)許進入提醒后,門衛(wèi)管理人員通知訪客可以進入。至此,基本流程執(zhí)行完畢。

      訪客系統(tǒng)的完整業(yè)務(wù)流程如圖2所示。

      2 基于MQTT的消息推送技術(shù)簡介

      消息推送是指從服務(wù)器端向移動終端發(fā)送連接請求,傳輸特定的信息。例如一些新聞客戶端,每隔一段時間都會收到一條或多條通知,這就是從服務(wù)器端傳來的推送消息。

      MQTT協(xié)議是IBM開發(fā)的一個即時通信協(xié)議,該協(xié)議支持所有平臺,可以將所有物聯(lián)網(wǎng)設(shè)備和外部連接起來,被用作傳感器和致動器的通信協(xié)議。將其作為消息推送協(xié)議的基本原理是:使用消息代理服務(wù)器(Message Broker),客戶端連接上消息代理服務(wù)器,跟服務(wù)器協(xié)商可以接受哪些類型的消息,同時也可以發(fā)布自己的消息,這些消息根據(jù)協(xié)議內(nèi)容可以被其它客戶端收到。基于MQTT協(xié)議消息收發(fā)流程如圖3所示。

      3 系統(tǒng)實現(xiàn)

      3.1 通知功能的實現(xiàn)

      3.1.1 Apollo服務(wù)器的安裝和配置

      想要實現(xiàn)基于MQTT的消息推送功能,必須先配置Message Broker服務(wù)器,這里選擇服務(wù)器Apollo1.7來搭建環(huán)境。具體搭建主要分為如下幾步:

      (1)去官方網(wǎng)站下載最新版的Apollo1.7服務(wù)器;

      (2)運行apollo.cmd 創(chuàng)建服務(wù)器實例;

      (3)在服務(wù)器實例的文件夾下配置參數(shù);

      (4)運行apollo-broker.cmd run開啟服務(wù)器,在瀏覽器中輸入服務(wù)器的IP地址,即可訪問Apollo服務(wù)器界面;

      (5)輸入之前配置好的用戶名和密碼參數(shù),即可訪問Apollo Console控制臺。

      3.1.2 MQTT客戶端的實現(xiàn)

      使用WebService服務(wù)器系統(tǒng)向Android端發(fā)送通知,可將其看成兩個MQTT 客戶端之間的通信過程,消息在傳播過程中經(jīng)過了Message Broker服務(wù)器的轉(zhuǎn)發(fā),所以需要在WebService服務(wù)器系統(tǒng)和Android端分別配置MQTT客戶端。兩邊代碼實現(xiàn)過程基本一致,都要在工程中導(dǎo)入mqtt-client-0.4.0.jar的類庫,然后使用工具類實現(xiàn)MQTT功能。

      3.2 服務(wù)器功能模塊的實現(xiàn)

      WebService服務(wù)器系統(tǒng)的功能模塊主要分為4部分,分別為響應(yīng)終端HTTP服務(wù)請求模塊、訪問數(shù)據(jù)庫模塊、將數(shù)據(jù)轉(zhuǎn)換為JSON格式的模塊和實現(xiàn)MQTT功能的模塊。

      響應(yīng)終端HTTP服務(wù)請求模塊主要通過繼承和擴展Java Servlet類來實現(xiàn)。在程序中設(shè)定響應(yīng)HTTP請求的方式,并對不同的請求參數(shù)設(shè)置不同的操作流程。數(shù)據(jù)轉(zhuǎn)換為JSON格式模塊,主要對從數(shù)據(jù)庫中取得的原始數(shù)據(jù)按照一定格式轉(zhuǎn)換為JSON格式,以便于在網(wǎng)絡(luò)中傳輸。實現(xiàn)該功能可以使用json-lib-jdk.jar開發(fā)包,其中有對應(yīng)JSON數(shù)據(jù)類型的各種工具類,可以簡化開發(fā)過程。

      3.3 訪客平臺的實現(xiàn)

      基于.NET的訪客管理系統(tǒng)作為整個系統(tǒng)的主要數(shù)據(jù)來源和管理平臺,其本身就是一套單獨的系統(tǒng),因此這里只簡單介紹與本項目相關(guān)的功能模塊。

      (1)訪客信息登記功能。該功能主要用來記錄訪客登記信息,并將這些信息存儲到數(shù)據(jù)庫中,Android終端設(shè)備可以通過WebService服務(wù)來間接獲取該數(shù)據(jù)?;?NET的訪客管理系統(tǒng)演示界面如圖4所示。

      (2)發(fā)送訪客來訪信息功能。該功能通過WebService服務(wù)器系統(tǒng)發(fā)出請求,用以給受訪人的Android客戶端發(fā)送通知消息,消息中包含了受訪人的ID標(biāo)識,客戶端通過ID標(biāo)識可以查詢該訪客的信息。Android終端收到通知信息的界面如圖5所示。

      3.4 Android客戶端功能

      Android客戶端的功能主要分為4個模塊,即Activity模塊、JSON工具類模塊、HTTP工具類模塊和MQTT功能模塊。

      (1)Activity是Android程序的組件之一,主要用于提供界面。程序中除有View的組件定義外,還有訪問數(shù)據(jù)庫的HTTP響應(yīng)請求操作和MQTT消息推送通知操作,這兩項操作都耗時較久。新版本的Android系統(tǒng)中不允許在主線程中執(zhí)行這種耗時較久的操作,因此只能新起兩個線程來分別執(zhí)行。線程之間需要使用Handler進行數(shù)據(jù)通信,所以Activity中除主線程之外,還有兩個子線程可同時進行異步操作。Activity起始界面和數(shù)據(jù)查詢后的界面如圖6所示。

      (2)JSON工具類模塊的主要功能是為對因WebService服務(wù)器響應(yīng)數(shù)據(jù)請求操作傳遞而來的JSON格式數(shù)據(jù)進行解析,將JSON格式數(shù)據(jù)轉(zhuǎn)換為自定義格式的數(shù)據(jù)。同WebService服務(wù)器使用JSON開發(fā)類庫一樣,使用標(biāo)準(zhǔn)的JSON格式轉(zhuǎn)換功能時要導(dǎo)入對應(yīng)的開發(fā)包。

      (3)HTTP工具類模塊的主要功能是向WebService服務(wù)器請求HTTP服務(wù),通過GET方式加上不同的參數(shù)形式進行對數(shù)據(jù)庫數(shù)據(jù)的查詢和添加請求。當(dāng)該請求有正確響應(yīng)時,數(shù)據(jù)以字節(jié)流的方式從服務(wù)器傳遞過來,使用HTTP工具類將字節(jié)流轉(zhuǎn)換為數(shù)據(jù),并以接口方式提供給Activity調(diào)用。

      (4)MQTT功能模塊的主要功能與WebService服務(wù)器系統(tǒng)上實現(xiàn)MQTT客戶端的功能類似,主要用來接收WebService服務(wù)器端以MQTT協(xié)議方式發(fā)送的消息,并以Android通知消息方式在終端通知欄中顯示。MQTT功能模塊必須另起一個新線程,該線程通過Handler與Activity通信。

      4 結(jié) 語

      隨著物聯(lián)網(wǎng)技術(shù)的高速發(fā)展及移動終端技術(shù)的廣泛應(yīng)用,人們對信息傳遞的及時性要求越來越高。本文提出的跨平臺訪客管理系統(tǒng)在充分調(diào)研了各個領(lǐng)域?qū)τ趤碓L人員管理實際需求的基礎(chǔ)上,采用基于MQTT的物聯(lián)網(wǎng)通信協(xié)議與Android終端開發(fā)技術(shù)解決傳統(tǒng)訪客管理系統(tǒng)信息傳遞不及時的缺陷,用以提高對來訪人員的管理效率。

      參考文獻

      [1] Lee S, Kim H, Hong D, et al. Correlation analysis of MQTT loss and delay according to QoS level[C].Information Networking (ICOIN).Bangkok,2013:714-717.

      [2]王楠,宋飛,周華春.一種基于Android平臺的即時通信方案[J].計算機應(yīng)用與軟件,2013 ,30(4):107-109,148.

      [3]屈赟,陶晡,王克儉,等.基于Android的果樹病蟲害信息推送系統(tǒng)的設(shè)計[J].科技通報,2016,32(5):86-90.

      [4]楊晴龍,王曉田,陳三,等.基于Android平臺的集成查詢系統(tǒng)的設(shè)計與實現(xiàn)[J].物聯(lián)網(wǎng)技術(shù),2016,6(1):73-75.

      [5]吉東,崔忠偉,馬虹.基于Web的高校團委信息管理系統(tǒng)設(shè)計與實現(xiàn)[J].物聯(lián)網(wǎng)技術(shù),2016,6(6):112-113.

      [6]黃鵬宇.嵌入式停車場管理系統(tǒng)設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2011.

      [7]周開利,黎娟,劉江豪.基于物聯(lián)網(wǎng)的開放實驗室信息管理系統(tǒng)[J].物聯(lián)網(wǎng)技術(shù),2014,4(7):85-87.

      [8]姜妮.基于MQTT的信息推送系統(tǒng)設(shè)計與實現(xiàn)[D].北京:中國科學(xué)院大學(xué),2015.

      永清县| 尼木县| 雷山县| 北票市| 扎兰屯市| 南投县| 桃江县| 湟源县| 安平县| 潼关县| 临邑县| 石嘴山市| 塔城市| 宿迁市| 浦东新区| 岚皋县| 宜阳县| 乡城县| 巴彦淖尔市| 房山区| 安达市| 迁安市| 涞源县| 阜新| 永康市| 灵川县| 泰来县| 朝阳区| 维西| 恭城| 湖北省| 垣曲县| 重庆市| 湖口县| 祥云县| 抚松县| 武威市| 繁昌县| 双流县| 府谷县| 绍兴县|