摘 要:作為第三代移動通信系統(tǒng)的一種應用——基于定位的服務(LBS)越來越引起移動運營商的重視。如何實現(xiàn)LBS應用也引起了很多人的興趣。Push型的應用是一種首先由服務方發(fā)起,然后向用戶發(fā)送特定信息的LBS應用,如何實現(xiàn)這種應用成為服務提供者需要研究的課題。提出一種Push型的LBS應用實現(xiàn)方案,對于移動運營商具有現(xiàn)實的參考意義。
關(guān)鍵詞:LBS;Push;觸發(fā)器
中圖法分類號:TP331 文獻標識碼:A 文章編號:1001-3695(2006)10-0232-02
Implement Technique Research of LBS Application of Push Type
CAO Haibing1,XIA Ying1,GE Junwei1,BAE Haeyoung2
(1.Center of GIS Research, Chongqing University of Posts Telecommunications, Chongqing 400065, China;2.College of Computer Science Engineering, Inha University, Inchon, Korea)
Abstract:The operator eager in seeking new and innovative ways to create new revenue. Location Based Service (LBS) is an ideal way to increase the profits for the mobile operators. How to implement and deploy LBS is a critical problem facing to mobile operators. The LBS application of Push type is more intelligent and serviceinitiated, which can brings new user experiences to mobile users, and the service provider needs to consider how to implement and deploy the type application. This paper suggested an implement model of the LBS application for Push type, which gives a reference to mobile operators.
Key words:LBS(Location Based Service);Push;Trigger
人們每天的生活中無處不存在著與位置有關(guān)的信息,用這些信息為人類的生活提供一些服務,可以方便人們的日常活動,這種服務就是LBS服務。作為一種新型的應用,自從它一提出來,就引起了人們的廣泛關(guān)注,更被看作是第三代移動通信系統(tǒng)的“殺手級應用”。LBS通過特定的定位技術(shù),獲得移動終端的地理位置信息,提供給移動用戶本人、通信系統(tǒng)或第三方,為移動用戶提供與其位置相關(guān)的豐富多彩的應用。從發(fā)起LBS應用的角度出發(fā),可以將LBS應用分為Pull型和Push型。Pull型的應用是由客戶向LBS服務提供者請求位置信息,以及與位置有關(guān)的LBS服務,如典型的有請求自己位置的服務[1];Push型的應用則不然,它是由服務提供者發(fā)起的,對滿足一定條件的客戶提供一定信息的LBS服務,如與位置有關(guān)的廣告服務、基于位置的公路計費服務、基于位置的天氣服務,以及移動伙伴列表服務(Mobile Buddylist) [1~3]等。
本文對Push型的LBS應用進行分析,并在此分析的基礎上,提出一種基于觸發(fā)器的可擴展實現(xiàn)方式。將來如果LBS服務提供者設計出新的Push型應用,只要將其觸發(fā)器的定義預先加入本文定義的內(nèi)容服務器中,并對觸發(fā)條件進行定義,就可以實現(xiàn)對新應用的支持。
1 Push型LBS應用的分析
根據(jù)Push型LBS應用的特征,應用首先是由某種服務觸發(fā)的,觸發(fā)的原因是滿足這種服務預先設定的某種條件,服務觸發(fā)以后,便進入與這種服務相關(guān)的服務處理流程。
Push型LBS應用的觸發(fā)條件可以是多種多樣的,如對于移動伙伴列表服務[3],其觸發(fā)條件是當某用戶的伙伴進入離這個用戶一定的范圍內(nèi)時。那么,這種應用就要對位置數(shù)據(jù)庫的位置更新進行監(jiān)測,一旦發(fā)現(xiàn)某個位置更新滿足上面的觸發(fā)條件,就會調(diào)用與該服務相關(guān)的特定處理。又如預定時間的、基于位置的天氣預報服務[1],其觸發(fā)條件就是預先設定的時間,當時間一到立即觸發(fā)天氣預報的服務。隨著不斷有新的Push型應用出現(xiàn),觸發(fā)條件會越來越多樣。
2 Push型LBS應用的實現(xiàn)
針對Push型LBS應用的特點,本文提出一種基于觸發(fā)器的實現(xiàn)機制,并對觸發(fā)條件提出一種可以擴展的實現(xiàn)方式。圖1給出了實現(xiàn)Push型LBS應用的實現(xiàn)模型圖。
2.1 Push型LBS應用的實現(xiàn)模型
(1)服務觸發(fā)器。該模塊控制整個服務觸發(fā)流程的實現(xiàn)。當條件監(jiān)測器監(jiān)測到滿足條件時,就會通知該模塊,然后該模塊根據(jù)觸發(fā)條件,判斷是何種服務后,就通知服務處理模塊作出與該服務相關(guān)的一些事件。本服務觸發(fā)器是開放式的,可以在此加入新的Push型服務。
(2)條件監(jiān)測器。其作用就是要檢測各種各樣的服務觸發(fā)條件是否已經(jīng)滿足,當條件一滿足,它就會通知服務觸發(fā)器調(diào)用該服務。它監(jiān)測的條件可以是時間量,也可以是插入位置數(shù)據(jù)庫的位置更新,還可以是其他可以監(jiān)測到的參數(shù)。新的服務一經(jīng)加入服務觸發(fā)器,就要該模塊設置其服務觸發(fā)條件。
(3)服務處理模塊。該模塊負責處理與特定服務相關(guān)的動作,這些動作可能是一連串的事件,包括查詢用戶的位置或查詢內(nèi)容服務器,為特定的服務提供與該服務相關(guān)的內(nèi)容信息。
(4)內(nèi)容服務器。其功能是為LBS應用提供相關(guān)的內(nèi)容信息,如廣告信息、天氣信息等,以及下文將會提到的服務觸發(fā)器、監(jiān)測內(nèi)容信息等。
(5)位置數(shù)據(jù)庫。它是移動對象數(shù)據(jù)庫,負責移動對象的位置信息的存儲和管理。
2.2 服務觸發(fā)器的模型
服務觸發(fā)器的實現(xiàn)需要定義針對每一種服務的觸發(fā)條件,為實現(xiàn)可擴展性,我們定義以下觸發(fā)器來實現(xiàn)對服務的觸發(fā)。
Trigger(ST,SCon,SHand)
其中,ST是服務類型標志,SCon是觸發(fā)條件標志,SHand是服務相對應的處理流程。每一種服務有唯一的觸發(fā)器定義,將該觸發(fā)器定義放在內(nèi)容服務器中,當服務觸發(fā)器啟動時進行加載。當有服務被觸發(fā)時,立即通知服務處理模塊進行相關(guān)服務處理。
2.3 條件監(jiān)測器的模型
服務觸發(fā)條件的定義為Condition(SCon,Monitor)。其中SCon是觸發(fā)條件標志,Monitor是監(jiān)測內(nèi)容,當Monitor內(nèi)容滿足時,條件檢測器到內(nèi)容服務器中搜索觸發(fā)器的定義,查詢應該觸發(fā)哪一類的服務,然后通知服務觸發(fā)器。
2.4 監(jiān)測內(nèi)容分析
監(jiān)測內(nèi)容多種多樣,它是因應用而異的,現(xiàn)有的Push型應用需要監(jiān)測的內(nèi)容主要有兩類,即對位置信息進行監(jiān)測和對時間進行監(jiān)測。通過以下給出的兩個應用實例,對兩類監(jiān)測內(nèi)容進行闡述。
(1)基于位置的廣告促銷服務。這種服務是當用戶進入某一個商場或餐廳的特定范圍內(nèi)時,就向用戶發(fā)送促銷廣告信息。這種服務需要監(jiān)測的內(nèi)容就是位置信息。其監(jiān)測內(nèi)容的實現(xiàn)方法是:條件監(jiān)測器始終監(jiān)測特定用戶的位置更新信息,當用戶進入商場或餐廳的特定范圍之內(nèi)時,馬上觸發(fā)該服務。
(2)基于位置的天氣預報服務。這種服務是在預定的時間,向用戶發(fā)送用戶所處位置的天氣狀況信息。其監(jiān)測內(nèi)容就是時間,實現(xiàn)也很簡單,只要對時間進行監(jiān)測即可。
2.5 擴展新的應用
隨著LBS應用的發(fā)展,服務提供者將會不斷地提出新的Push型LBS應用,基于本實現(xiàn)模型,可以很容易地擴展新的LBS應用。具體的實施步驟如下:①首先對新的Push型LBS應用進行分析,得出它需要檢測的內(nèi)容。②在步驟①的基礎上,設定新的Push型LBS應用的Monitor值。③同時還需設定這種Push型應用的服務相關(guān)流程。
3 實例說明
(1)服務觸發(fā)器和條件監(jiān)測器的定義。若要實現(xiàn)這種新的應用,首先應該定義服務觸發(fā)器和條件監(jiān)測器,它們均存放在內(nèi)容數(shù)據(jù)庫中。以下是服務觸發(fā)器和條件監(jiān)測器的定義:
·服務觸發(fā)器 Trigger(Advertisement, AdCon, AdHand)
·條件監(jiān)測器 Condition(AdCon,Monitor)
這兩個部分主要是定義與觸發(fā)器和檢測器相關(guān)的一些標志,對于更加重要的Monitor,即觸發(fā)條件的定義參見下節(jié)。
(2)觸發(fā)條件的定義。基于位置的廣告促銷服務的觸發(fā)條件是:某一用戶初次進入距離某商場或餐廳一定范圍內(nèi)。那么這種應用的監(jiān)測內(nèi)容如下:
Monitor:distance(B,Object)=d and First Enter
在這里,distance(B, Object)表示B到Object的距離,B是商場或餐廳,Object是移動對象,即用戶;d是一預先測定的距離值。當用戶進入某一區(qū)域以后,就不應該再向其廣告信息,所以要對用戶是否是第一次進入進行判斷,即如上Monitor定義中對First Enter的監(jiān)測。
(3)服務流程。這種服務需要處理的事件包括查詢商場或餐廳的廣告信息和向用戶發(fā)送此類信息。當用戶滿足一定觸發(fā)條件以后,首先在內(nèi)容服務器中查詢廣告信息,然后再通過移動通信網(wǎng)絡發(fā)送給用戶。
4 小結(jié)
本文提到的Push型LBS應用是可擴展的,可以為新的Push應用提供簡單、易用的實現(xiàn)方法。同時,本實現(xiàn)模型也可以集成到大型的LBS應用平臺中,如文獻[4]中提出的ADP和文獻[5]的LORE模型,為應用提供者提供更加完善的應用開發(fā)機制,也為客戶提供了更加豐富多彩的LBS應用。
參考文獻:
[1]I K Adusei, K Kyamakya,F(xiàn) Erbas. Locationbased Services:Advances and Challenges[C].Canada:Canadian Conference on Electrical and Computer Engineering,2004.1-7.
[2]The Locationbased Services Renaissance: A New Formula for Success[EB/OL].http://www.trueposition.com/lrc/whitepapers.php,2005.
[3]X Chen,et al.An Efficient Spatial Publish/Subscribe System for Intelligent Locationbased Services[C].California:Proceedings of the 2nd International Workshop on Distributed Eventbased Systems,2003.1-6.
[4]Ying Xia, Junwei Ge, Haeyoung Bae. Design and Analysis of Generic LBS Application Developing Platform[C]. Chongqing:The 2nd Symposium on Geographic Information Systems, 2004.112114.
[5]Y Chen, X Y Chen, F Y Rao,et al.LORE:An Infrastructure to Support Locationaware Services [J]. IBM Journal of Research and Development,2004,48(5/6):601-615.
作者簡介:
曹海兵(1980-),男,山西晉城人,碩士研究生,主要研究方向為定位技術(shù)、LBS體系結(jié)構(gòu);夏英(1972-),女,四川人,副教授,碩士,主要研究方向為時空數(shù)據(jù)庫、移動定位服務;葛君偉(1961-),男,江西人,教授,博士,主要研究方向為軟件體系結(jié)構(gòu)、地理信息系統(tǒng);裴海英,男,韓國人,教授,博士,主要研究方向為數(shù)據(jù)庫、地理信息系統(tǒng)。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文