【摘要】針對(duì)礦山企業(yè)對(duì)短信發(fā)送平臺(tái)的需求,提出了一種新的短信發(fā)送系統(tǒng),該系統(tǒng)與人員定位管理系統(tǒng)實(shí)現(xiàn)了對(duì)接,可以根據(jù)自己的業(yè)務(wù)需求靈活進(jìn)行配置,實(shí)現(xiàn)針對(duì)不同人群發(fā)不同短信的功能,實(shí)際應(yīng)用表明,系統(tǒng)易于操作,有助于提高工作效率和人性化管理。
【關(guān)鍵詞】煤礦;短信平臺(tái);設(shè)計(jì)與實(shí)現(xiàn)
Abstract:This article proposes a new short message management system in order to satisfy the mining enterprisesdemands.This system has the ability to communicate with the personnel positioning system and allows flexible configurations for various business requirements.Different groups of people in a company may receive different messages.The actual practice shows that it is easy to operate this system and it can also help improve the efficiency and the level of the humanized management.
Key Words:Coal Mine;SMS Platform;Design and Implementation
1.引言
隨著企業(yè)短信的蓬勃發(fā)展,短信貓作為一種能夠自由進(jìn)行點(diǎn)對(duì)點(diǎn)通信的設(shè)備日益受到行業(yè)軟件開(kāi)發(fā)商的關(guān)注[1]。礦山企業(yè)的信息化不僅對(duì)硬件提出了更高的要求,軟件更要符合礦山企業(yè)的業(yè)務(wù)需求。本文設(shè)計(jì)并實(shí)現(xiàn)了一種利用短信貓自動(dòng)發(fā)送短信的系統(tǒng),該系統(tǒng)不僅具有大多數(shù)類(lèi)似系統(tǒng)的短信單發(fā)、群發(fā)功能,而且系統(tǒng)和井下人員定位系統(tǒng)集成,能夠針對(duì)礦上不同員工發(fā)送不同的定制內(nèi)容短信。
2.系統(tǒng)組成
煤礦短信發(fā)送平臺(tái)系統(tǒng)由短信貓、接收器、人員定位數(shù)據(jù)庫(kù)服務(wù)器、短信平臺(tái)數(shù)據(jù)庫(kù)服務(wù)器、客戶(hù)端計(jì)算機(jī)組成。其中接收器選用KJF91A接收器,負(fù)責(zé)接收人員定位有源卡的信息。短信平臺(tái)數(shù)據(jù)庫(kù)服務(wù)器用來(lái)存儲(chǔ)緩沖數(shù)據(jù)和歷史發(fā)送記錄,人員定位數(shù)據(jù)庫(kù)服務(wù)器用于存儲(chǔ)人員信息,短信貓則選用支持標(biāo)準(zhǔn)AT指令的WAVECOM GSM短信終端。
3.系統(tǒng)工作流程
煤礦短信發(fā)送平臺(tái)系統(tǒng)可以按照礦方的要求來(lái)為不同的員工發(fā)送定制內(nèi)容的短信,這里以為實(shí)時(shí)上井人員家屬發(fā)送平安短信為例,要求當(dāng)員工上井之后,實(shí)時(shí)給其家屬發(fā)送一條升井提示短信。系統(tǒng)的工作流程如圖1所示:
圖1 上井提示流程圖
接收器每接收到一名上井人員的有源卡信息后,則會(huì)插入一條記錄到人員定位數(shù)據(jù)庫(kù)PersonDayDutyRecord日考勤表中,這樣我們就可以通過(guò)該表來(lái)找出實(shí)時(shí)上井的人員發(fā)射器號(hào)。當(dāng)軟件平臺(tái)啟動(dòng)以后,會(huì)觸發(fā)兩個(gè)線程ScanThread和SendThread。ScanThread每隔500毫秒掃描得到PersonDayDutyRecord中最新增加的200條數(shù)據(jù)(考慮到實(shí)際應(yīng)用中,同時(shí)上井人數(shù)不會(huì)超過(guò)200人)放入T_Copy表中,然后與上一次掃描得到的T_Backup中的數(shù)據(jù)比較得到新的上井人員的發(fā)射器號(hào),然后通過(guò)人員定位數(shù)據(jù)庫(kù)中PeopleSender表和People表找到這些人員的聯(lián)系方式等信息放入T_Wait表(表結(jié)構(gòu)如表1所示),SendThread則會(huì)不間斷掃描T_Wait表中的數(shù)據(jù),為其中的每一條數(shù)據(jù)中指定的電話號(hào)碼發(fā)送指定內(nèi)容的信息,成功發(fā)送短信之后則將該條記錄從T_Wait中刪除,同時(shí)在歷史表T_History$$yyyyMMdd$$(表結(jié)構(gòu)如表2所示)和日志文件Log$$yyyyMMdd$$中各添加一條。
表1 T_Wait表結(jié)構(gòu)
列名 數(shù)據(jù)類(lèi)型 備注
PeoPle_id int 人員編號(hào)
People_name varchar(32) 人員姓名
Type int 短信類(lèi)型
Telephone varchar(32) 電話號(hào)碼
Time datetime 記錄生成時(shí)間
Message text 短信內(nèi)容
表2 T_History表結(jié)構(gòu)
列名 數(shù)據(jù)類(lèi)型 備注
SendTime datetime 短信發(fā)送時(shí)間
Type int 發(fā)送短信類(lèi)型
Name varchar(32) 姓名
Telephone varchar(32) 電話號(hào)碼
Message text 短信內(nèi)容
4.系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
煤礦短信發(fā)送平臺(tái)軟件采用CS結(jié)構(gòu),采用C#作為編程語(yǔ)言,數(shù)據(jù)庫(kù)使用SQL Server 2000數(shù)據(jù)庫(kù),開(kāi)發(fā)過(guò)程中通過(guò)調(diào)用DLL動(dòng)態(tài)鏈接庫(kù)中的函數(shù)來(lái)操作設(shè)備進(jìn)行短信的發(fā)送和接收,主要的函數(shù)有:
Sms_Connection(uint Com_Port, uint Com_BaudRate, String Mobile_Type);
Sms_Send(String TelNum, String Sms_Text);
Sms_Receive(String Sms_Type, String Sms_Text);
Sms_Disconnection();
其中主要參數(shù)的含義如表3所示。
表3 各個(gè)參數(shù)的意義
參數(shù)名稱(chēng) 參數(shù)意義
Com_Port 串口號(hào)(0為紅外接口,1,2,3為串口號(hào))
Com_BaudRate 波特率
Mobile_Type 返回終端型號(hào)
TelNum 要發(fā)送短信的手機(jī)號(hào)碼
Sms_Text 發(fā)送/接收的短信內(nèi)容
Sms_Type 短信類(lèi)型(0:未讀短信;1:已讀短信;2:待發(fā)短信;3:已發(fā)短信;4:全部短信)
4.1 硬件選擇
系統(tǒng)選用WAVECOM GSM短信貓作為發(fā)送終端,通過(guò)USB數(shù)據(jù)線連接到服務(wù)器,短信平臺(tái)數(shù)據(jù)庫(kù)安裝到普通研華工控機(jī)上。
4.2 數(shù)據(jù)庫(kù)設(shè)計(jì)
系統(tǒng)需要用到兩個(gè)數(shù)據(jù)庫(kù),一個(gè)是短信平臺(tái)數(shù)據(jù)庫(kù),另一個(gè)是人員定位數(shù)據(jù)庫(kù)。本文主要介紹短信平臺(tái)數(shù)據(jù)庫(kù),它主要包括4張表,其中T_Copy和T_Backup兩張表用來(lái)存儲(chǔ)上井人的發(fā)射器號(hào),通過(guò)這兩張表可以找出新上井人的發(fā)射器號(hào);T_Wait表用來(lái)存儲(chǔ)待發(fā)送人員的信息;T_History$$yyyyMMdd$$表用來(lái)存儲(chǔ)已發(fā)送的短信記錄。
4.3 系統(tǒng)主要功能模塊設(shè)計(jì)
短信平臺(tái)發(fā)送系統(tǒng)包括4個(gè)功能模塊,客戶(hù)端功能界面如圖2所示,各個(gè)功能模塊的介紹如下:
圖2 系統(tǒng)功能界面
(1)軟件配置管理
為了方便維護(hù),設(shè)計(jì)了一個(gè)程序配置界面。通過(guò)配置界面和配置文件,可以為系統(tǒng)配置人員定位服務(wù)器的IP地址;短信發(fā)送歷史記錄每頁(yè)顯示的條數(shù)、刷新時(shí)間;配置不同部門(mén)不同工種的員工發(fā)送特定內(nèi)容的短信息。
(2)短信息發(fā)送
個(gè)人短信:支持手動(dòng)為單個(gè)手機(jī)號(hào)碼發(fā)送短信息;多人短信:可以同時(shí)為多個(gè)手機(jī)號(hào)碼發(fā)送同樣內(nèi)容的短信息,多個(gè)號(hào)碼之間用“,”分隔開(kāi),也可用TXT文本導(dǎo)入多個(gè)手機(jī)號(hào)碼,號(hào)碼與號(hào)碼之間以回車(chē)分隔開(kāi);升井提示:從人員定位數(shù)據(jù)庫(kù)中檢索出實(shí)時(shí)升井人員的信息,根據(jù)配置文件中的設(shè)置來(lái)為不同人員發(fā)送內(nèi)容不同的短信;宣傳:為人員定位數(shù)據(jù)庫(kù)中所有人員發(fā)送短信息,適合于節(jié)假日通知或者宣傳短信的發(fā)送。
(3)日志查詢(xún)和顯示
短信息發(fā)送列表中可以顯示已發(fā)送的所有的短信息的歷史記錄,此記錄保存于短信平臺(tái)數(shù)據(jù)庫(kù)中,同時(shí)將異常信息和歷史記錄以文件形式保存在磁盤(pán)中,便于查詢(xún),方便軟件的維護(hù)。
5.結(jié)語(yǔ)
本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)煤礦短信發(fā)送平臺(tái)系統(tǒng),該系統(tǒng)和人員定位系統(tǒng)緊密結(jié)合,具有功能齊全,短信發(fā)送速度快,操作方法簡(jiǎn)單等特點(diǎn)。該系統(tǒng)已于2013年2月在陜西煤化工集團(tuán)某礦投入使用,礦方的日常管理更加科學(xué)、人性化。
參考文獻(xiàn)
[1]耿娜,盧建軍,王曉路.基于wavecom的煤礦瓦斯遠(yuǎn)程監(jiān)測(cè)短信業(yè)務(wù)系統(tǒng)設(shè)計(jì)[J].煤炭技術(shù),2010,29(01):106-108.
[2]賀耀宜.煤礦綜合消息統(tǒng)一預(yù)警平臺(tái)的設(shè)計(jì)[J].工礦自動(dòng)化,2008(03):89-91.
[3]劉芳.基于短信貓的短信發(fā)送平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2013,9(31):7002-7005.
作者簡(jiǎn)介:杜志剛(1986—),男,山東泰安人,碩士,助理工程師,現(xiàn)供職于天地(常州)自動(dòng)化股份有限公司,主要從事煤礦軟件方面的開(kāi)發(fā)。