管理位置信息的系統和方法
2023-05-31 03:01:36 2
/<!ATTLISTRegionInnerRadiusCDATA″0″><!ATTLISTRegionOuterRadiusCDATA″0″><!ATTLISTRegionStartAngleCDATA″0″><!ATTLISTRegionStopAngleCDATA″360″><!ATTLISTRegionLevelOfConfidenceCDATA″100″><!ELEMENTTowerIDEMPTY><!ATTLISTTowerIDPositionTimeCDATA#REQUIRED><!ATTLISTTowerIDNameCDATA#REQUIRED><!ATTLISTTowerIDTypeCDATA#REQUIRED>位置聚集器20按預置間隔,通過HTTP詢問尋呼機適配器422和其它適配器和位置源。位置聚集器20檢索尋呼機適配器422的當前一系列跟蹤設備和在LocationXML下的位置。膝上型計算機403運行服務程序,周期性地向無線集線器適配器423作出HTTP請求,以授權無線集線器適配器423向位置聚集器20報告膝上型計算機403的位置。無線集線器413是帶有內置網絡伺服器的無線LAN集線器(如可從CiscoSystems公司、AppleComputer公司、CompaqComputer公司、Intel公司、LucentTechnologies公司或3Com公司購買到的那種),內置網絡伺服器顯示可用於配置集線器和觀看有關集線器的信息的網頁。無線集線器適配器423(多線程小服務程序(servlet))含有背景線程,背景線程按預置間隔,向像無線集線器413那樣的任意個無線LAN集線器作出HTTP請求,以檢索包含附加客戶機的表格和它們在每個集線器的網絡上的網際網路協議(IP)地址的HTML網頁。然後,把這個信息分解成其密鑰是每個無線集線器413客戶機的IP位址和其值是每個客戶機正在使用的集線器的集線器散列表,此外,在無線集線器適配器423中,存在管理輸入HTTP請求的線程。在這個無線集線器適配器423中,存在兩種這樣的請求。第一種是從膝上型計算機403接收的那種請求。這些請求僅僅允許伺服器向位置聚集器20公開膝上型計算機403的位置(通過背景線程獲得)。具體地說,在每個HTTP首標中檢查原始IP位址。把這個IP位址和接收時間存儲在授權散列表中。接收的另一種HTTP請求來自位置聚集器20。每當無線集線器適配器423接收這樣的請求時,它就通過授權散列表重複,並且針對(根據預置值)最近已經發送了授權書的每個IP位址,檢索來自無線集線器413的散列表的相應集線器信息。然後,適當地把這個信息分解成locationXML。位置聚集器20在預置間隔上,通過HTTP詢問集線器適配器423和其它適配器和位置源。位置聚集器20檢索集線器適配器423的當前一系列跟蹤設備和在LocationXML下的位置。圖6是顯示可在示範性實施例中實現的、獲取和聚集位置信息的一種進程的流程圖。在如圖1、3、4和5所示的位置聚集器20內,進程從步驟610開始。在步驟620中,產生稱為「輪詢線程」的任意個輪詢進程(作為例子,顯示了三個601、602和603)。在步驟630中,每個輪詢線程通過HTTP輪詢位置數據的位置源。每個輪詢線程確定所述位置數據的哪些是新的(判定640)。每個輪詢線程把任何新位置數據發送(步驟650)給映射進程。後面會結合圖7對稱為「映射線程」的映射進程作進一步描述。重複步驟630、640和650,直到輪詢線程終止為止。這樣,位置數據不斷得到更新。圖7是顯示可在示範性實施例中實現的、獲取和聚集位置信息的、與如圖6所示的那種類型有關的另一種進程的流程圖。連同如圖6所示的、像601、602和603那樣的輪詢線程一起,映射線程701從步驟710開始,並且從像601、602和603那樣的輪詢線程接收新位置數據。映射線程701把新位置數據映射到用戶730。接著,本例包括可選的「超時(timeout)」步驟(判定740),讓映射線程等待一段時間(步驟750)。下面將對此加以說明。在等待規定時間之後,在判定740中選擇「是」分支,並且映射線程把用戶組織的、位置數據的集合發送(步驟760)到邏輯進程,該邏輯進程在通過用戶應用程式,把信息提供給用戶之前,對數據進行評估(例如,排序或過濾操作)。「超時」步驟(判定740)被設置成保證在一個「循環(round)」內,從如圖6所示的、像601、602和603那樣的輪詢線程接收到多段新位置數據。換句話說,如果包括多段新位置數據,那麼,步驟760提供的輸出更有價值。為了接收多段新位置數據,映射線程701最好等待到像601、602和603那樣的多個輪詢線程把任何新位置數據發送(步驟650)給映射線程701。超時的值需要在通過步驟760公布多少段新位置數據和那些公布的時間間隔之間做出折衷。重複上面步驟720、730和760,直到在判定770中選擇「是」分支和映射線程終止於步驟780為止。這樣,位置數據的集合不斷得到更新。位置數據的集合是像圖8中的例子那樣的條目的集合,該例是可利用瀏覽器觀看的、顯示來自具有GPS能力的雙向尋呼機的位置數據的示範性Loca-tionXML文檔。圖8包括行動裝置(在本例中,雙向尋呼機)的標識號(811)、由附加GPS單元生成的緯度(832)和經度(833)坐標、時間標記(871)和尋呼機當前與之通信的無線電塔的標識號(872)。從如圖3、4和5所示的適配器輸出的LocationXML由像圖8中的例子那樣的條目組成。圖9是顯示按照本發明的實施例,選擇用於評估位置信息的邏輯進程的一種方式的流程圖。這是選擇一個或多個優選邏輯器的預運行時進程。選擇可以由最終用戶直接完成,也可以由某第三方來完成。這樣的選擇在上面結合圖3,以及獲取、聚集和評估位置信息的系統已作了討論。選擇進程從步驟910開始,然後在步驟920中把用戶接口(UI)提供給選擇用戶的用戶應用程式,和作為API調用GetLogicianTypes的結果,提供給他們喜歡使用的邏輯器。在步驟930中把這些偏好存儲在用戶偏好資料庫中,然後進程結束於步驟940。圖10是顯示基於本發明實施例的、用於評估位置信息的邏輯進程的例子的流程圖。這時將用戶偏好與可用邏輯器相匹配,並把邏輯器用於評估位置信息的運行時進程。這樣的進程在上面結合圖3以及獲取、聚集和評估位置信息的系統已作了討論。該進程從步驟1010開始,然後,在步驟1020中,從位置聚集器接收位置信息的集合。在步驟1030中,在用戶偏好資料庫中查找要用於這個用戶的邏輯器,然後,來到步驟1040,從邏輯豆工廠獲取邏輯器。步驟1040是API調用GetLogician(logician)的結果。在步驟1050中,根據位置信息的集合調用那個邏輯器。步驟1050是API調用logician.invoke(LocationList)的結果。這對應於像在排序、過濾或統一上面結合圖3所討論的數據的例子中那樣實現的所選那種類型的邏輯功能。在步驟1060中,向一個或多個用戶應用程式公布結果,因此,系統把經過排序、過濾或統一的位置數據提供給用戶。重複上面步驟1020-1060,直到在判定1070中選擇「是」分支為止,然後,進程終止於步驟1080。這樣,位置數據的評估不斷得到更新。圖11是顯示基於本發明實施例的、與獲取、聚集和評估位置信息的系統交互的用戶應用程式的例子的流程圖。圖11是從用戶應用程式的角度來說明的。該進程從步驟1110開始,然後,在步驟1120中,為可用用戶和邏輯器詢問如圖3中320所示的邏輯器外層模塊。在步驟1130中,選擇用戶和邏輯器,並且在步驟1140中,該進程等待要公布的位置信息。在步驟1150中接收位置信息,和在步驟1160中,根據用戶應用程式的功能,處理位置信息。因此,系統把經過排序、過濾或統一的位置數據供應給用戶。重複上面步驟1120-1160,直到在判定1170中選擇「是」分支為止,然後,進程終止於步驟1180。這樣,就把不斷得到更新的位置數據的評估提供給最終用戶。本發明的優選實施例之一是一個應用程式,即,在可以駐留在例如計算機的隨機存取存儲器中的代碼模塊中的一組指令(程序代碼)。在計算機需要之前,這組指令可以存儲在另一個計算機存儲器中例如在硬碟驅動器中,或在諸如光碟(最終用在CDROM中)或軟盤(最終用在軟盤驅動器中)之類的可拆卸存儲器中或者通過網際網路或其它計算機網絡下載。因此,優選實施例可以作為含有用在計算機中的計算機可執行指令的計算機可用媒體來實現。另外,儘管所述的各種方法通過軟體,在有選擇啟動或重新配置的通用計算機中方便地得以實現,但是,本領域普通技術人員還應該認識到,這樣的方法也可以以硬體的形式,以固件的形式,或在被構造成執行所需方法步驟的更專門設備中得以實施。本專利文件的公開部分包含受版權或商標保護的內容。版權或商標擁有者不反對任何專利公開人一模一樣的複製,但是在任何其它方面仍然保留所有版權或商標權。權利要求1.一種管理位置信息的方法,所述方法包括從數個位置源中獲取關於用戶的位置數據;創建關於所述用戶的所述位置數據的集合;按照預期效用排序所述集合中的項目;和不斷更新所述位置數據。2.根據權利要求1所述的方法,其中所述獲取進一步包括獲取關於更多用戶的位置數據;所述創建進一步包括創建由用戶組織的、關於更多用戶的所述位置數據的集合;和所述排序進一步包括按照預期效用排序關於更多用戶的所述集合中的項目。3.根據權利要求1或2所述的方法,進一步包括過濾所述集合中的數據,以消除誤導數據。4.根據權利要求1或2所述的方法,進一步包括統一所述集合中的數據,以確定所述用戶最有可能在的位置。5.根據權利要求1所述的方法,包括把關於用戶的每段位置數據轉換成單一格式。6.一種管理位置信息的信息管理系統,所述信息管理系統包括從數個位置源中獲取關於用戶的位置數據的裝置;創建關於所述用戶的所述位置數據的集合的裝置;按照預期效用排序所述集合中的項目的裝置;和不斷更新所述位置數據的裝置。7.根據權利要求6所述的信息管理系統,其中所述獲取裝置進一步包括獲取關於更多用戶的位置數據的裝置;所述創建裝置進一步包括創建由用戶組織的、關於更多用戶的所述位置數據的集合的裝置;和所述排序裝置進一步包括按照預期效用排序關於更多用戶的所述集合中的項目的裝置。8.根據權利要求6或7所述的信息管理系統,進一步包括過濾所述集合中的數據,以消除誤導數據的裝置。9.根據權利要求6或7所述的信息管理系統,進一步包括統一所述集合中的數據,以確定所述用戶最有可能在的位置的裝置。10.一種包括程序代碼裝置的電腦程式,當在計算機上運行所述程序時,所述程序代碼適用於執行如權利要求1到5的任何一項所述的方法。全文摘要本發明公開了收集和評估來自多個信源的信息,從而,使所有可用位置信息都得到適當利用的管理位置信息的系統和方法。位置源可以包括諸如行動電話、蜂窩式電話、手持式計算機、個人數字助理、尋呼機、全球定位系統(GPS)之類的移動電子設備和其它遍布式計算設備。基於衛星或基於網絡的定位技術使人們可以確定這些無線電子設備和它們的用戶的地理位置(例如,為行動電話的用戶提供的基於位置的服務就是使用這樣的定位技術)。位置源還可以包括基於計算機的模型、依據日期和時間給出人的預期位置的日程表或日曆。文檔編號G08G1/005GK1514940SQ02807093公開日2004年7月21日申請日期2002年1月25日優先權日2001年1月31日發明者阿南德·巴布,亞伯拉罕·海費茨,亞當·克勞策,羅伊·佩特森,布賴恩·懷特伊格爾,懷特伊格爾,佩特森,克勞策,罕海費茨,阿南德巴布申請人:國際商業機器公司