專利名稱:將地理背景信息并入移動企業應用程序的制作方法
技術領域:
本發明涉及將背景信息(context information)并入移動裝置應用程序中,更具體地說,涉及利用地理背景信息來定制諸如移動電話或無線個人數字助理(PDA)的移動裝置的用戶界面。
背景技術:
在過去的幾年中,利用新技術和標準的各種各樣的移動裝置已經進入市場。例如,許多移動電話配備有web瀏覽器以允許用戶執行諸如購買貨物、檢查投送狀態以及預訂旅行安排的任務。移動裝置包括能夠向辦公室外的用戶提供數據處理和/或通信服務的任何裝置。例如,移動裝置包括,但不僅限于,個人數字助理(PDA)、移動電話、筆記本電腦、尋呼機以及無線電子郵件裝置(例如,Blackberry)。
近年來,已經開發了各種應用程序用于移動裝置,允許用戶執行日益復雜的任務同時遠離他們的辦公桌。在移動裝置的大小和它們所提供的能力之間存在著折衷。例如,大顯示器有助于顯示復雜、詳細的數據;然而,大顯示器在移動裝置中將變得笨重。許多移動裝置提供具有有限數據輸入能力的非常小的屏幕,由此使得功能強大或復雜的應用程序不能實行。
隨著更為廣泛的使用移動裝置和增加的連通性,正在開發企業應用程序感興趣的新領域。過去,通常提供企業應用程序(enterprise application)作為在明確的公司環境(corporate environment)內的桌面應用程序。然而,隨著更小、功能更強大的移動裝置和增加的連通性的發展,在移動裝置上執行業務交易變得越來越可行。因此,公司后端數據處理系統需要被在可連接到的任何地方啟動的交易遠程地訪問。
在過去,在公司環境中的桌面應用程序已經利用處理能力和大顯示屏幕來提供復雜的圖形用戶界面,以允許用戶有效地觀看和輸入大量數據。移動裝置的需求基本上不同于桌面系統的需求,功率消耗和尺寸變得比處理能力、顯示器大小以及數據輸入的便利更為重要。
諸如移動電話和個人數字助理(PDA)的移動裝置典型地具有小屏幕、最小的處理能力、小的存儲容量、低帶寬網絡連通性以及有限數據輸入能力。例如,許多移動電話具有非常小的屏幕、僅僅能夠顯示非常短的幾行文本。而且,移動電話典型地不包括鍵盤,需要用戶使用麻煩的技術來輸入文本數據。一個普通的移動電話數據輸入方法將多個字母分配給單個按鍵,諸如,“A”、“B”和“C”被分配給標有“1”的按鍵。為了輸入“A”,用戶將裝置置于文本數據輸入模式,并按壓“1”按鍵。為了輸入“B”,用戶按壓“1”按鍵兩次。最后,為了輸入“C”,用戶按壓“1”按鍵三次。明顯地,以這種方式輸入大量數據是困難且麻煩的。
如上所述,從公司環境中的桌面到移動環境的變化已經極大地改變了用于公司應用程序的平臺。在過去,企業應用程序典型地處理大量數據并需要大量數據輸入。然而這個對于桌面不構成問題,但當使用移動裝置時會有問題。上述提及的限制因素不利于移動裝置上的復雜的輸入和輸出。
諸如銷售代表或服務技術人員的移動工作人員實時訪問企業數據和應用程序對于企業來說是至關重要的因素。現今,許多工作流,尤其是對于在旅行中的雇員,仍然是基于紙面的,缺乏自動處理和后端集成。隨著輕便、便宜的移動裝置的引入和廣泛使用以及增加的無線數據網絡的覆蓋,移動方案已經變得更希望廣泛用在移動工作人員中。
隨著工作人員移動性的增加,越來越多的企業工作流將需要轉移到或至少支持移動平臺。由于移動裝置的局限性,需要用于數據輸入和顯示的新范例以充分平衡移動裝置的能力和益處。
發明內容
在一個通常的方面,提供一種集成地理背景信息的位置背景認知系統(location context-aware system)。該系統包括移動裝置、能夠確定移動裝置的位置的位置服務、耦合到移動裝置以提供商業處理應用程序的移動應用程序服務器、和耦合到移動應用程序服務器的地理信息服務應用程序。來自地理信息服務應用程序的位置信息和商業處理數據被用于修改由商業處理應用程序提供的用戶界面。該系統還可以包括耦合到移動應用程序服務器以提供商業處理數據的后端企業服務器。
位置標識符裝置可以被實施為一信標(beacon),其發射識別信標的位置的紅外或射頻信號。此外,位置標識符可以由全球定位系統(GPS)接收機提供。位置標識符還可以通過傳導電纜提供。傳感器用于從信標接收諸如紅外或射頻信號的信號。
在某些實施中,后端企業服務器包括客戶關系管理應用程序,以及商業處理數據包括客戶數據。所述用戶界面包括用戶輸入字段。所述移動應用程序服務器通過利用商業處理數據設定用戶輸入字段的值來修改用戶界面。所述用戶輸入字段可以對于用戶不可見,或可以利用由移動應用程序服務器所設定的用戶輸入字段的相應值來顯示。此外,移動應用程序服務器可以通過利用商業處理數據提供可能值的選擇來修改用戶界面。
移動裝置可被提供作為例如個人數字助理(PDA)或移動電話。
在另一個一般方面,利用位置背景信息來修改用戶界面的方法包括識別移動裝置的位置;檢索關于移動裝置的位置的信息;利用檢索的信息來修改用戶界面;以及在移動裝置上顯示修改后的用戶界面。
可以通過從位置標識符裝置接收位置標識符來識別移動裝置的位置。位置標識符可以指定物理位置或背景位置。然后可以從后端企業服務器檢索有關位置的信息。然后可以利用位置標識符來修改用戶界面。
在另一個一般方面,在移動裝置上實施位置背景認知用戶界面的計算機程序包括位置標識代碼段,確定移動裝置的位置;信息調度代碼段,檢索有關移動裝置的位置的信息;用戶界面生成代碼段,基于移動裝置的位置來修改用戶界面;和用戶界面顯示代碼段,顯示修改后的用戶界面。
需要一種簡化移動裝置的用戶界面的技術。一個策略是提供更為智能的背景認知應用程序,其可以基于諸如用戶的習慣、裝置的位置以及可用相關數據的各種可用信息來定制數據輸入和用戶界面。
結合附圖和以下的說明來闡述一個或多個實施的細節。其它特征和優點將從說明書和附圖以及從權利要求中明顯看出。
圖1是提供背景認知移動應用程序的系統的方框圖。
圖2是銷售訂單應用程序中的訂單生成處理的流程圖。
圖3是修改用于基于無線訪問協議(基于WAP)的系統的訂單生成處理的流程圖。
圖4A-4D是執行圖3所示處理的使能WAP的移動電話的屏幕顯示。
圖5是利用位置背景信息的簡化的用戶界面的屏幕顯示。
圖6是利用位置背景信息來減少或簡化用戶界面的處理流程圖。
圖7是提供背景認知移動應用程序的系統的方框圖。
圖8是利用地理信息系統(GIS,geographical information system)應用程序的背景認知移動應用程序的方框圖。
圖9是描述位置服務找出移動裝置的地理位置的操作的圖。
圖10是示出圖8所示組件之間的示范交互序列的圖。
具體實施例方式
可以通過利用背景認知來簡化用戶界面、減少用戶必須輸入的數據量,開發企業商業應用程序用于移動裝置。為了更好地描述可以利用的背景信息的類型,我們可以定義背景信息的三要素(1)活動;(2)環境;和(3)自身。活動要素描述了用戶正在從事的任務以及他或她的習慣和行為,集中在裝置的用戶。例如,銷售代表典型地從事下列多種活動,包括輸入銷售訂單;檢查訂單完成的狀態;提交旅行和費用報告;以及與客戶關系管理(CRM,customer relationship management)系統進行交互。因此,背景信息的活動要素可以包括銷售代表當前正在執行的活動以及銷售代表過去執行那些任務時的習慣。例如,當在基于紙面或桌面的旅行和費用報告系統中輸入數據時,銷售代表可能典型地以相同的方式填寫多個欄。活動背景可能包括用戶的任務(例如,費用報告)和用戶的習慣(例如,在諸如名字欄、電話分機欄、和雇員標識號欄的欄中填寫銷售代表的信息)。
環境描述了用戶周圍的物理和社會環境,諸如,當前位置、環境中的活動以及如溫度和濕度的其他外部特性。可以通過諸如射頻識別標記(RFID,radio frequency identification tag)、射頻或紅外信標和全球定位系統(GPS)的裝置來獲得環境背景信息。可以通過連接到或包括在移動裝置中的傳感器或者通過諸如局域網、因特網或無線網絡(例如,通用分組無線電系統(GPRS))的通信信道來獲得諸如溫度、氣壓和濕度的附加信息。
最后,自身要素包含裝置自身的狀態。這個要素已經被多種桌面應用程序廣泛使用。狀態信息可以包括有關裝置的任何信息,包括資源利用、內部溫度、網絡狀態和電池充電狀態。自身要素還可以包括局部結構或狀態信息,諸如裝置的當前用戶或其他用戶概況標識。
本公開主要集中于移動應用程序中的背景認知的位置要素的使用,以及屬于特定位置的隱含背景信息的推導。位置認知可以進一步被劃分為兩個一般類別(1)物理位置;和(2)語義位置。物理位置基于一些全球坐標系統指定對象的位置(如裝置的緯度和經度)。可以利用可變的精確度提供這個信息。
語義位置指定對象在一較大背景內的位置。例如,會議室、大型購物中心、公共汽車站或公共汽車自身。典型地,背景存儲一些有關局部環境和其資源的附加信息。例如,設想在公共汽車上旅行的乘客具有訪問與公共汽車相關的網頁以確定特定目的地的到達時間的能力。乘客的物理位置對于提供所希望的信息而言不是充分的位置信息;系統還需要有關乘客在公共汽車上的位置的語義位置信息,并且可能還需要有關公共汽車路線的附加信息。
此外,語義位置信息可以是分級的,根據情況提供各種等級的細節。例如,訪問辦公室的銷售代表可能希望利用各種不同等級的語義位置細節來訪問各種信息。在最高等級,銷售代表的物理位置是在一個城市中。如果應用程序需要,則可以使用行政劃分(political division)的附加等級(例如,國家、省、縣、區)。語義細節的附加等級包括銷售代表所在的特定建筑物、建筑物的樓層以及樓層的房間。應用程序可以利用可變等級的語義位置細節。例如,下面將詳細描述的銷售訂單應用程序將不需要有關用戶所在的特定房間的詳細信息,盡管這個信息對于指示洗手間或打印機的應用程序可能是有用的。
背景信息可被用于通過減小和簡化用戶界面來提高應用程序的可用性,以更好地將桌面企業應用程序修改為移動應用程序。在許多應用程序中,企業應用程序所需的字段依賴于用于輸入數據的移動裝置的位置。例如,與客戶會面并輸入該客戶的銷售訂單的銷售代表典型地可能在客戶的企業場所內做這些。企業訂單輸入應用程序所需的大部分信息包括客戶和賬單標識以及地址。因為這個信息對于特定客戶是相對不變的,用于輸入銷售訂單的移動裝置的位置可以提供背景,所述背景允許填入那些信息,或者至少更為智能地默認給出。通過利用背景信息,實質上可以減少顯示的信息和需要輸入的數據。
圖1描述了被設計用來代替傳統基于紙面的銷售訂單系統的背景認知銷售訂單系統。在一個基于紙面系統的實例中,銷售代表拜訪客戶,利用紙面表格記錄訂單。然后每周一次地將該表格提交給秘書服務用于數據輸入,通過每周的批量作業將表格手動輸入并傳送到后端數據處理系統。這個處理是低效、費時、昂貴和易出錯的。銷售代表或支持人員被迫手動輸入所有的數據。因為以批量模式操作系統,不能警告銷售代表關于一個訂單的問題。在基于紙面的系統中可能出現各種問題。例如,在安排訂單時,產品可能已經脫銷或中斷,可能只有小于所請求的數量的產品,或者客戶已經拖欠付款。因為系統是離線的,用戶不能接收立即的反饋,造成系統工作流中的低效。
因為在這個例子中的銷售代表主要依賴于移動通信與他們的辦公室和客戶保持聯系,所以移動電話是用于向銷售訂單數據處理系統提供用戶界面的有吸引力的候選者。不幸地,大多數移動電話中的小屏幕尺寸和輸入數據的困難使得與簡單地自動操作以前使用的紙制表格相比非常麻煩。如下面所詳細描述的,通過在應用程序中利用背景信息,用戶界面的復雜性可以極度地降低。
一種減少用戶必須輸入的信息量的技術是簡單地利用默認值來代替一些參數。例如,訂單數據可以被假定為當前數據,由此減少銷售代表輸入當前數據的需要。
參考圖1,用戶100能夠利用移動裝置102來訪問數據服務。移動裝置102通過數據通信網絡106連接到移動應用程序服務器104。可以使用任何數據通信網絡;然而,在這個實施例中,數據通信網絡106是由無線業務提供者提供的無線網絡。移動應用程序服務器104提供應用程序平臺,以通過網絡110與后端企業服務器108進行交互。網絡110可以是任何數據通信網絡,諸如,局域網(LAN)、因特網或廣域網(WAN)。
可以利用任何移動裝置技術來實現移動裝置102。例如,移動裝置102包括,但不限于,個人數字助理(PDA)、移動電話、筆記本電腦、尋呼機和無線電子郵件裝置(例如,Blackberry)。某些實施利用無線接入協議(WAP)以向實現WAP的所有移動裝置提供與平臺無關的支持。
在這個實施中,移動應用程序服務器104提供銷售訂單系統,借此銷售代表可以通過移動應用程序服務器104將客戶訂單輸入到后端企業服務器108。然后訂單執行系統使用訂單信息,以便于請求的訂單至客戶的交付。在這個實施中,用戶100是銷售代表,移動裝置102是使能無線接入協議(WAP)的移動電話,它能夠通過GSM數據服務(其可以包括GPRS)接入移動應用程序服務器104。該系統識別移動裝置102的位置并利用位置信息來簡化或降低用戶界面的復雜性。
圖2是描述在傳統銷售訂單系統的桌面實施中使用的訂單檢查和創建過程。在這個系統中,銷售代表從容戶獲得訂單,然后利用企業應用程序從他的辦公室或從連接到他辦公室的筆記本電腦提交該訂單。典型地,打印的訂單表格包含客戶號、訂貨日期、交貨日期、付款項、產品號和訂購的每個產品的數量。銷售代表通過進入登錄識別開始將訂單輸入企業應用程序中(步驟202)。在這個實施中,登錄過程要求用戶名和口令。從不采用安全的系統到要求生物測定數據來提供最大安全的系統,作為安全需要可被用于識別銷售代表的任何技術是變化的。一旦銷售代表已經被識別,則系統向銷售代表提供能夠執行的功能的選擇(步驟204)。在這個例子中,銷售代表可以從選項菜單中選擇檢查訂單或創建訂單。如果選擇檢查訂單,則用戶被詢問以選擇特定訂單(步驟206)。然后顯示所選訂單(步驟208),并且再次顯示功能的選擇(步驟204)。
如果銷售代表選擇創建一訂單,則系統詢問用戶客戶標識符(步驟210)。然后,詢問銷售代表物品號和數量(步驟212)。例如,銷售代表可以輸入綠色裝飾物的物品號以及希望的數量。然后系統詢問用戶以確定是否繼續向訂單添加(步驟214)。如果需要添加附加項,則系統再次詢問用戶物品號和數量(步驟212)。一旦訂單完成,系統輸入訂單并再次顯示可用功能的選擇(步驟204)。
這個處理可以適合于基于WAP的移動應用程序,如圖3的流程圖所示。雖然具有特定應用程序代碼的編程移動裝置可以提供更大的能力和增加的可用性,但結果系統被極大地限制到可以與其使用的移動裝置。在這個應用程序中,使能WAP的移動電話可以用作移動裝置,以將銷售訂單輸入后端系統并檢查訂單的狀態。在這個實施中,用戶始于輸入登錄信息(步驟302)。系統接收登錄請求,處理它,然后顯示銷售代表可用的許可(步驟304)。然后系統顯示可以執行的可用功能的菜單(步驟306)。在這個例子中,銷售代表可以選擇檢查訂單的狀態或創建一新訂單。如果銷售代表選擇檢查訂單的狀態,則系統請求訂單號(步驟308)。一旦收到訂單號,系統顯示訂單的狀態(步驟310),在使能WAP的移動裝置的屏幕上顯示結果。當用戶完成訂單狀態的查看時,可用功能的菜單再次被顯示(步驟304)。
如果用戶選擇創建一新訂單,則系統詢問銷售代表客戶標識號(步驟312),然后查詢物品號(步驟314),最后查詢數量(步驟316)。然后系統詢問銷售代表是否已完成訂單(步驟318)。如果需要輸入附加項,則系統再次開始向用戶詢問客戶標識號(步驟312)、物品號(步驟314)和數量(步驟316)。一旦完成訂單,則系統再次顯示可用功能的菜單(步驟304)。
參考圖4A,銷售訂單應用程序用戶界面首先顯示登錄屏幕401,以允許銷售代表輸入標識信息。登錄屏幕包括用戶名字段402和口令字段404。
參考圖4B,一旦用戶登錄到系統,則顯示主菜單405,向用戶提供用于選擇的選項,以通過選擇第一選項406來檢查訂單狀態或通過選擇第二選項408來輸入一新訂單。
如果用戶選擇第一選項406,則系統顯示訂單狀態屏幕409,如圖4C所示。屏幕409如果先顯示字段410,則允許銷售代表將訂單狀態號輸入字段410。當輸入訂單狀態時,系統查詢數據庫以確定訂單的狀態并更新,顯示具有狀態顯示字段412的一新屏幕。
從圖4B所示的主菜單屏幕405,銷售代表還可以選擇第二選項408以輸入一新訂單。圖4D示出了用戶訂單輸入屏幕413。訂單輸入屏幕413允許銷售代表輸入客戶標識號414、物品或產品號416以及數量418。在這個實施中,客戶標識號414是對于特定客戶唯一的6位數字號。客戶標識號414也可以對于特定客戶位置是唯一的。例如,單個客戶可以有多個零售位置。在這個例子中,單個客戶標識號可以用于所有的位置,或提供分離的多個客戶標識號,以更有利于不同辦公室的記帳、開票和交付。
物品或產品號416識別特定產品。在這個實施中,6位數字的產品標識號唯一地識別將要訂購的產品。最后,數量418通常是一或兩位數字,識別與訂購的產品號416相對應的產品的數量。由于對于使能WAP的電話而言數字很易于輸入,所以對于如圖4D所示的每個字段使用數字。平均起來,銷售代表必須輸入13.5個數字(一個6位數的客戶號、一個6位數的產品號和一個1或2位數的數量)。實際上,在WAP電話上輸入一個數字所用的平均時間為1.48秒。因此,輸入訂單的整個時間是大約21秒。即使是這個處理對于銷售代表來講也太長和麻煩。通過利用背景數據可以改善這個模型。
通過利用可用的背景信息可以改善這個實施。在這個例子中,銷售代表通常在客戶的地點輸入客戶訂單。因此,用于輸入數據的移動裝置的位置可以用于標識客戶。如果利用位置信息來標識客戶,那么銷售代表就不需要輸入這個數據。利用背景信息可以顯著地減少數據輸入的量。
參考圖5,一改善的用戶界面利用背景信息來進一步減少手動輸入。利用銷售代表的當前位置,系統能夠確定客戶標識號。因此,銷售代表僅僅需要輸入產品標識號502和數量504。這能夠顯著地減少訂單輸入時間。在這個例子中,銷售代表平均輸入7.5個數字,用大約11秒。這遠小于以前所需的21秒。也可以通過如下方式來實現這個系統,即基于位置背景信息顯示適當的客戶標識號作為默認值,以便用戶可以容易地改變基于移動裝置的位置而確定的值。如果背景導致特定字段的多個選項(例如,兩個客戶位置彼此非常接近),系統可以允許用戶從可能或候選值的列表中選擇適當的客戶標識號。
可以利用進一步的背景信息通過適當產品的選擇來代替產品號輸入字段。對于在移動電話上的顯示而言產品列表通常太大。基于背景信息和在后端(例如包含客戶愛好的CRM系統)中存儲的客戶數據,或提供的客戶背景,例如客戶對于某些產品的需求,背景信息允許這些列表的減少。例如,客戶可能僅僅購買3種不同產品。代替顯示空白字段用于銷售代表輸入數字,系統可以提供代表產品的列表。因此,為了標識產品,銷售代表僅需要輸入單個選擇來代替輸入6位數的產品代碼。這將使得鍵按壓次數減少到1.5,花費的時間少于3秒。在這個例子中,使得應用程序背景認知極大地增加了移動銷售訂單系統的可用性和實用性。
參考圖6,如上所示,移動應用程序中位置背景認知的使用可以極大地減少用戶需要輸入的數據量以及必須顯示的數據量。如下文詳細描述的,各種技術可被用于將位置背景認知并入應用程序中。首先,將考慮應用程序如何獲得位置信息。概括地,可以通過首先識別移動裝置的位置(步驟602),利用位置背景信息來簡化用戶界面(步驟604),然后顯示簡化的用戶界面(步驟606),將位置背景信息并入系統中。
在使用位置信息之前,必須識別移動裝置的特定位置(步驟602)。可以由移動裝置102獲得位置信息,或可以由移動裝置102之外的服務器處理獲得位置信息。一種技術是利用信標發射信號,諸如射頻信號或紅外信號。這些信號可以被移動裝置102接收。信標可以廣播任何位置標識信息,諸如地理標識符(例如,信標的緯度和經度)或位置的概要表示(例如,信標的街道地址、商店名稱、數字標識符)。例如,信標可以廣播表示裝飾品商場的儲藏號1234的文本字符串“WE1234”。利用典型地存儲在后端企業商業服務器上的系統內的附加信息,可以推知移動裝置的位置。關于位置的背景信息然后可以用于簡化和改善用戶的數據輸入和輸出。
可替換地,移動裝置可以利用諸如全球定位系統(GPS)或洛倫(Loran)的定位系統來識別裝置的經度和緯度。這提供了裝置的物理位置并可被用于基于其物理位置找到語義位置信息。與物理位置相對應的語義位置信息可以存儲在移動裝置的數據庫中或者可以存儲在任意位置。例如,如果每個客戶地點的適當的經度和緯度被存儲在數據庫中,則移動裝置的當前位置可被用于通過識別最接近移動裝置的經度和緯度的客戶地點來推導最可能的客戶地點。
最后,利用移動裝置外部的系統,系統可以獲得移動裝置的位置。一些移動電話系統能夠利用其系統來識別電話位置。例如,可以從業務提供者獲得位置信息以識別移動裝置的位置。可以用與其它物理位置數據類似的方式來利用這個信息。
圖6的說明圖解了修改用戶界面時位置背景信息的應用程序。圖6圖解的處理還可以與任何其它背景信息一起使用。例如,可以基于其它環境因素(如,大氣壓力、溫度、高度、濕度)、基于用戶的當前行為、或基于裝置的狀態和存儲在裝置上的本地信息,來改變菜單。
一旦移動裝置的位置已經被確定,則諸如通過去除可以根據背景信息確定的字段、或通過基于背景信息設置默認值,系統可以簡化用戶界面(步驟604)。在銷售代表例子中,位置背景信息識別所述客戶聯系信息,允許從用戶界面去除開票和運送信息的表目。
位置背景信息還可以用于減少用戶進行選擇的數目。可以基于選擇的數目來調整用戶界面以便最優化信息顯示和數據輸入的便利。例如,如果存在用戶可以選擇的許多項目(例如,超過100個產品),那么對于用戶而言輸入標識特定選擇的數字將是最簡單快捷的。在銷售代表的例子中,存在客戶購買的多個產品,要求用戶輸入用于選擇特定產品的產品號將是合理的。然而,如果存在較少的產品,以列表的形式呈現信息將更好,以允許用戶通過如下方式來選擇列表選項,即輸入與列表內的位置相對應的數字來選擇列表選項,或者通過使用按鍵在列表中瀏覽并按壓選擇按鍵來選擇所選項。如果列表太長(例如,超過大約20項),對列表進行分級可能更容易些。例如,產品列表可以分為多個類別。利用分級列表,首先向用戶提供最高級的類別。用戶可以在最高級別中瀏覽,選擇類別。然后將所選類別的內容呈現給用戶。分級中的每個級別可以包含類別、項目或兩者的結合。用戶可以在分級中瀏覽直到選擇期望的項目。在一些實施中,利用運行于移動裝置的軟件來簡化用戶界面,在其它情況下,通過遠程服務器來簡化界面。
一旦用戶界面被減少或簡化,它可以被提供給用戶(步驟606)。可以利用任何用戶界面技術來實現用戶界面。例如,可以通過一運行于移動裝置的獨立應用程序來提供用戶界面。在一些實施中,使能WAP的移動電話被用作移動裝置。使能WAP的移動電話可以顯示實現用戶界面的網頁。這些網頁典型地可以由移動應用程序服務器來提供。任何用戶界面技術可以用此方式使用位置背景信息以減少用戶界面的復雜性。
參考圖7,銷售代表系統700的實現包括紅外線(IR)信標702。每個客戶位置配備有IR信標702,用于廣播該位置的標識符。利用諸如Compaq iPQAH3600的WindowsCE裝置來實現該信標。信標在范圍內搜索其它IR裝置,如果成功,則信標發送識別其位置的短消息。在這個實施中,所述消息作為XML標志被發送,具有位置標識符作為其屬性(例如,“<beaconid=’LocID’/>”)。在該實現中,可以使用任何其它能夠廣播小消息的IrDA兼容裝置。
IR消息由與移動裝置102相關的傳感器703接收,其將接收的消息傳給調度器704。傳感器703在紅外端口列出輸入的信標。在接收到信標消息之后,位置標識符被提取并發送到調度器704。為了提供其他背景信息,可以將其它傳感器模塊703集成到系統中。例如,附加傳感器可以接收GPS信號、洛倫信號或其它射頻信號。
調度器704通過經諸如因特網706的網絡將一請求發送到分解器(resolver)708來查詢基于萬維網的目錄服務。分解器708可以作為一小服務程序而被實現,并且從調度器704至分解器708的查詢可被發送作為HTTP GET請求。在這個實施中,分解器708返回統一資源定位符(URL),其涉及與來自信標702的位置標識符相對應的位置的位置背景信息。URL指向描述諸如信標702所處的商店的位置的可擴展標記語言(XML)源或更為通用的位置描述。
調度器704在將請求發送到分解器708之前還可以處理不同類型的背景信息。例如,調度器704還可以在將一請求提交到分解器708之前利用本地信息來確定用戶資格和操作模式。代替簡單地提供特定位置,系統允許背景信息的用戶修改應用程序的行為。這個技術能夠提供應用程序的有趣陣列(interesting array)。例如,單個公司可以讓擅長不同生產線的多個銷售代表訪問單個客戶。代替提供整個基于位置的訂單輸入應用程序,訂單輸入系統還可以結合有關銷售代表的身份的背景信息。所需的背景信息可以由調度器704采集并發送到分解器708。
然后背景信息被設計器(composer)710使用以產生用戶界面。調度器704將來自分解器708的URL傳送到設計器710。設計器710利用URL以通過諸如因特網706的網絡查詢后端服務器712,以便獲得所需的位置描述714。這個信息典型地被存儲為XML文件。當可用信息大時,僅僅檢索所需信息部分是有利的。這可以利用XML查詢語言(XQL)來完成。設計器710利用背景信息來產生網頁716,然后該網頁716被顯示于裝置上。依賴標準XML文件來描述位置使得方法可擴展且靈活,并且有利于將位置數據加入描述。
在這個方法中,根據當前用戶角色的資格,移動裝置確定從位置的XML描述使用哪個信息。例如,銷售代表在單個商店可能具有多個角色;他或她可以作為商店的銷售代表以及作為商店的客戶。這種信息以及綁定于一組模板的資格或角色可以存儲在模板718,所述模板告訴設計器如何利用位置數據創建默認主頁。銷售訂單應用程序本身被實施在后端服務器712中。因此,一個模板包括至后端服務器712的HTTP請求,該后端服務器也發送對于商店的虛擬描述的參考。該參考用于訪問商店的XML描述,并用于提取數據以調整銷售訂單應用程序。例如,客戶號可被用于識別客戶和根據客戶關系管理(CRM)系統的產品列表的準備。
各種模板可被實現作為包含特殊標簽以允許設計器710查詢后端服務器712的HTML文件。在這個例子中,使用了兩個特殊標簽(1)“<TOIXMLURL/>”,由指向位置的XML描述的URL代替;和(2)“<TOITIME/>”,由創建頁面的時間代替。利用這些標簽,可以實現應用程序以提供網頁716。網頁716利用傳統的GET和POST技術以將數據提交到后端服務器712。
銷售代表實施可以被擴展以提供附加信息。例如,當銷售代表接近一商店,系統可以提供與該商店相關的包含當前新聞、問題、特殊報價等的信息。它也可以提供告警,如不滿意的銷售圖表;最近的訂單;未付訂單和帳單;以及其他與客戶相關的信息,諸如支付條件和特殊情況。
在許多應用程序中,希望使根據背景獲得的數據可由用戶操作。例如,進入一客戶的商店的銷售代表可能收到來自另一客戶的電話并且需要為其他客戶創建訂單。可以實現應用程序以使得銷售代表可以將客戶標識修改為與位置背景信息相反的值。
最后,附加技術可用于便利數據輸入。例如,射頻識別標簽(RFID)提供一種對象發送關于其自身的信息的機制。在銷售代表應用程序中,可以提供系統以使得通過將移動裝置放置在靠近RFID標簽的產品來獲得產品號。這可以進一步減少創建一新訂單所需的數據輸入。可以用類似的方式結合條形碼掃描器使用移動裝置。還可以將光學識別結合到實施中以使得所述系統可以利用例如光學識別數字水印來識別對象。
通過將位置背景添加到系統以及通過使得應用程序認知到位置背景,可將這里描述的技術用在任何數據處理應用程序中。例如,容器倉庫存儲了裝滿各種飲料的瓶子。在生產之后,瓶子被堆放在貨架上并暫時存儲在非常大的容器倉庫中直到瓶子被運往客戶處。與大多數消費品一樣,在運送之前可將瓶子在倉庫中存儲一段最大的時間周期。如果它們的存儲時間大于這個周期,則必須將它們清除,可能是丟棄。一種有效的倉庫管理系統受益于獲知每貨架瓶子的準確位置。
通過將RFID標簽添加到每個貨架以及將具有后端集成的位置認知計算機系統和標簽閱讀器加到每個鏟車,可使得倉庫利用位置背景信息。當新的貨架被裝滿時,瓶子的類型、生產日期和貨架的RFID標簽被存儲在倉庫管理系統中。每次鏟車撿拾貨架時,貨架的RFID標簽被讀取并且鏟車上安裝的計算機向司機顯示將貨架放置在何處。當鏟車放下貨架時,貨架的準確位置被系統存儲。司機利用差動GPS系統可以提供鏟車的物理位置。
利用上述的技術實現倉庫系統。每次貨架被撿拾或放下時,需要準確位置和在貨架的RFID內存儲的貨架ID。這通過將兩個附加傳感器模塊集成到系統中來完成。一個模塊負責處理位置數據,另一個負責從RFID讀取數據以及觸發所得信息的進一步處理。
每次鏟車撿拾貨架時,司機需要知道如何處理貨架。有關貨架的信息必須以某種方式顯示在鏟車的顯示器上。為了實現這個,移動裝置產生一個強制瀏覽器加載特定網頁的事件。基于HTTP的至萬維網瀏覽器的“推送”將提供一個合適的解決方案。另一個可以使用的技術是提供一個小應用程序,該小程序在移動裝置收到信號時加載一個文件。
倉庫實現過程如下工作(1)鏟車撿拾或放下貨架;(2)貨架ID和位置由相應傳感器采集并發送到分解器;(3)分解器返回指向動態產生的網頁的URL。然后這個網頁被加載,用當前狀態或將要執行的任務來更新鏟車的操作器。以這種方式,后端服務器可以進行位置背景認知。
參考圖8,移動應用程序,諸如如上所述的銷售訂單應用程序,可以與地理信息系統(GIS)應用程序集成,以提供附加背景信息并改善移動應用程序的用戶界面。在這個移動應用程序系統800中,移動裝置802通過諸如GSM網絡的網絡812連接到應用程序服務器804。系統800通過應用程序服務器804利用位置服務806來確定移動裝置802的合適或準確位置。一旦應用程序服務器804獲得移動裝置802的位置,應用程序服務器804利用該信息來查詢GIS應用程序808,以改善和簡化提供給移動裝置802的應用程序的用戶界面。除了從GIS應用程序808獲得的信息,應用程序服務器還可以與后端服務器810進行交互。
移動裝置802提供與用戶的交互。可以利用諸如移動電話或無線個人數字助理(PDA)的任何移動裝置來實現移動裝置802。移動裝置802便利了至移動應用程序的用戶界面。例如,移動電話可以包括安裝在電話上的無線接入協議(WAP)瀏覽器,以提供用戶界面用于電話和應用程序服務器804之間的通信。可以利用諸如SAP R/3系統和SAP萬維網應用程序服務器的任何開發平臺來實現應用程序服務器804,以提供完全符合J2EE的基礎設施。
在某些實施中,應用程序服務器804可以與諸如WAP網關(如諾基亞Active Server)的網關系統一起使用。WAP網關可被用于提供使能WAP的移動設備802和應用程序服務器804之間的連接。
在某些實施中,移動裝置802直接訪問位置服務806而無需應用程序服務器804的幫助。例如,移動裝置802可以包括嵌入的全球定位系統(GPS)接收機。GPS接收機可被用作位置服務806,以確定移動裝置802的經度和緯度。然后,這個位置信息由GIS應用程序808使用,該GIS應用程序808響應于關于地理信息的各種查詢。例如,GIS應用程序808將特定位置映射到客戶的列表。
應用程序服務器804還可以訪問后端服務器810,以檢索諸如用戶概況或客戶數據的各種信息。后端服務器810可以提供對包括客戶關系管理(CRM)信息、企業資源計劃(ERP)信息和供應鏈管理(SCM)信息的信息的訪問。此外,可使用多個后端服務器810以便應用程序服務器804可以從多個數據源獲得信息。
參考圖9,位置服務806可能基于移動裝置技術而不同。例如,如果移動裝置802是GSM移動電話,那么可以從GSM網絡獲得位置信息。GSM網絡基礎設施是一種地界基礎設施,由通過無線鏈路與移動GSM終端(例如,GSM移動電話)進行通信的固定基站收發信臺(BTS)組成。BTS的集合是GSM系統中基于位置服務的基礎。相對于那些操作者知道位置的BTS來計算電話的位置。
例如,位于小區902內的用戶利用GSM移動裝置802與一個或多個BTS廣播和接收通信。BTS將網絡分成由小區標識符標識的多個小區(例如,小區902、904、906、908、910、912和914)。雖然在區域中可能存在多個BTS,但是電話總是登記到具有最好信號的單個BTS。一種提供位置服務802的方法是利用登記的BTS的小區標識符來近似地識別最近的BTS。如果BTS的位置是已知的,移動裝置802的位置可以被認為在相同近似位置。這個方法的精確性依賴于小區的大小,并且由于典型的GSM小區無論何處其直徑是在2至20公里之間,其具有廣泛變化的精確性。
可以使用一些方法來提供更為準確的位置服務806。一些方法使用基于網絡的、手機輔助(handset-assisted)方法,其中網絡利用來自移動裝置802的一些幫助來確定位置。其它方法利用基于手機的網絡輔助方法。例如,通過測量從移動裝置802發送的GSM分組的到達時間來實現基于網絡的手機輔助方法。由于信號延遲在不同時間從一組BTS接收信號。根據這些延遲,裝置相對于BTS的相對定位是成三角形的。由于所有BTS的絕對位置是已知的,相對位置可以轉換成地理坐標。基于網絡的解決方案當由網絡支持時起作用;然而,許多GSM網絡使得該信息不可用于移動應用程序。
通過依賴電話在空中接口測量的功率電平以三角測量所述裝置的定位,可以實現對于GSM的基于手機的解決方案。GSM裝置測量來自附近的BTS無線鏈路的信號強度以便于切換判決。只要裝置登記的BTS的信號質量下降到低于一特定電平,則具有最佳信號質量的BTS被選擇為下一個登記的BTS。GSM終端將周圍BTS的列表以及它們的信號強度存儲在終端內的存儲器中。
用戶身份模塊(SIM)是一智能卡,主要用于用戶驗證。SIM卡位于移動裝置的內部,并且可以利用短消息業務(SMS)與GSM網絡通信。基于手機的網絡輔助位置服務806包括位于SIM卡上的部分,以訪問小區列表和它們的場強并依據請求通過經由SMS隧穿信息將其返回到應用程序服務器804。網絡輔助用于將小區列表與GIS坐標相關聯。小區標識符和它們的場強以及有關BTS位置的信息和這些周圍區域的拓撲的結合允許區域內的裝置的跟蹤。跟蹤運動依賴于BTS的密度。
該方法的主要優點在于它允許以低成本利用適當的精度定位移動裝置802。移動裝置802和GSM網絡保持不受影響并且經由SMS的通信非常節省成本。僅僅需要加入小區標識符和場強的映射服務以使能位置服務。
圖10是圖解修改的銷售訂單應用程序系統的示例應用程序流程的交互。在這個實施中,移動裝置802是GSM移動電話。GSM系統包括GSM位置服務,以確定給定電話號碼(MSISDN號碼)的電話的位置(例如,緯度、經度和高度)。
在圖10所示的實施中,用戶通過調用識別應用程序的統一資源定位符(URL)利用使能WAP的移動電話(移動裝置802)來訪問銷售訂單應用程序。在使能WAP的移動電話上運行的WAP瀏覽器發送一請求到應用程序服務器804。該請求包括用戶標識信息。用戶標識或者作為MSISDN號(callAppURL(Phone#String))或者作為在識別應用程序的URL中編碼的參數(callAppCallerID(CallerIDString))而被提交。如果用戶標識信息沒有在URL中編碼,則應用程序服務器804從MSISDN號中分解用戶標識。
MSISDN號和電話號碼之間的映射由后端服務器810存儲。MSISDN號是移動裝置802的電話號碼。因為每個銷售代表擁有具有唯一電話號碼的移動裝置802,裝置802的電話號碼可被用于唯一標識系統800內的銷售代表。所述retrieveUserID()功能從與后端服務器810相關的數據庫中檢索ID(retrieveUserID()),其被返回到應用程序服務器804(returnUserID(UserIDString))。應用程序服務器804利用用戶名完成登錄對話并將其返回到用戶(presentUserID(UserIDString))。
在用戶利用口令(或任何其它認證技術)完成登錄之后,用戶名和口令被登記到應用程序服務器804,應用程序服務器804開始收集背景信息(logon(UserIDString,PasswordString))。首先應用程序服務器804利用NSISDN號向位置服務806查詢電話的當前位置(getLocation(Phone#String))。在這個例子中,GSM移動電話被使用并且GSM位置服務提供位置服務806功能。位置服務806返回所述位置(provideLocation(LatString,LongString,AltString))。然而緯度、經度和高度坐標對于應用程序級不是非常有用。對于應用程序級數據(例如,那個區域中的客戶),地理坐標被發送到GIS應用程序808(getLocalClients(LatString,LongString,AltString)),該GIS應用程序808返回訂貨的客戶列表(provideLocalClientList(ClientList))。
通過相對于銷售代表的客戶基礎來驗證列表中的客戶,可簡化客戶列表,以去除不由該銷售代表服務的公司的客戶。用戶標識符和客戶列表被發送到后端服務器810(getFilterClientList(UserIDString,ClientList)),其過濾所述列表并將過濾的列表返回到應用程序服務器804(provideFilteredClientList(ClientList))。列表被分類(sortClientList())并呈現給用戶(provideClientList(ClientList))以便用戶從列表中選擇希望的客戶(selectClient(ClieniIDString))。如果僅僅一個客戶在列表中,客戶可以被顯示而不需用戶的顯示辨識。
在客戶被選擇之后,應用程序服務器804向后端服務器810查詢與那個客戶相對應的產品列表(getFavouriteArticles(UserIDString ClientIDString))。可以基于諸如客戶的購買歷史的信息以及由銷售代表賣出的產品來計算列表。列表從后端服務器810返回到應用程序服務器804(provideFavouriteArticles(ArticleList))并且被呈現給用戶(provideFavouriteArticles(ArticleList))。
然后,銷售代表選擇產品和訂貨量。該請求被登記到應用程序服務器804(selectArticles&Quantities(Article/QuantityList),該應用程序服務器804試圖基于給定信息安排訂單(createOrder())并返回確認消息(sendOrderConfirmation())。
GIS應用程序808提供一種機制來響應地理空間商業查詢,諸如“給我示出在位置y的半徑x米中的所有客戶”,如圖10中所示(getLocalClients)。GIS應用程序808可以在數據庫或應用程序服務器之上實現以提供GIS查詢功能。為了使能這種GIS應用程序808,客戶地址可以被地區編碼(geocode),以便客戶的地址可以被查詢或比較。地區編碼地址的一種方法是將每個客戶地址映射到標準緯度、經度和高度數據集,然后將其存儲作為數據庫中記錄的客戶的部分。可用多種地區編碼軟件工具和服務來以批量或實時方式執行這個任務。
在圖8所示的實施中,應用程序服務器804將當前用戶位置發送到GIS應用程序808,該GIS應用程序808訪問已經被地區編碼的客戶數據庫。基于用戶位置,GIS應用程序808能夠僅僅選擇在用戶位置的給定半徑內的那些客戶,并僅僅向應用程序返回所選記錄。應該選擇這個選擇半徑的大小使其至少達到用戶位置數據的絕對最小精度加上客戶位置數據的絕對最小精度,以確保所有的本地客戶被GIS應用程序808選擇。例如,如果給定用戶位置的最小精度ULmin是±3公里,并且地區編碼客戶地址的最小精度CLmin是±1公里,則選擇半徑應該至少為ABS(ULmin)+ABS(CLmin)=4公里。如果所選半徑小于4公里,那么系統可能不能識別出離移動裝置802僅4米的客戶位置。
另一方面,也不希望選擇的半徑太大而包括數目過多的客戶。為了最小化所選客戶數量并由此最小化移動裝置的用戶的可選輸入的數目,系統可以基于當前的精度數據來動態調整選擇半徑的大小。幸運地,可以合理地預期客戶位置的本地密度和基于GSM的位置服務的精度之間的相互關系。例如,在具有許多小GSM小區的城市中,基于GSM的位置服務806的精度以及客戶位置的密度典型地高于農村地區。這允許城市中更小的選擇半徑和農村地區中更大的選擇半徑,均導致所選客戶位置的高準確性同時最小化用戶的可選記錄數。
另一種最優化所選客戶列表的方法是通過增加距離用戶位置的距離讓GIS應用程序808分類返回的列表,以便用戶在結果列表上方找到當前客戶的可能性盡可能高。
在移動應用程序系統800中,移動裝置802利用WAP瀏覽器將一請求發送到應用程序服務器804。在手機使能的位置服務806中,應用程序服務器804利用SMS與在移動裝置802上的SIM卡中存儲的應用程序進行交互。應用程序訪問小區標識符/場強列表,并經由移動裝置通過SMS系統將其返回,返回列表到應用程序服務器804。GIS應用程序808可被用于將BTS標識符和場強的集轉化成GIS坐標。在銷售訂單輸入情況中,應用程序服務器804向GIS應用程序808查詢特定范圍內的客戶。GIS應用程序808訪問它的數據庫并返回附近客戶的列表,根據該列表創建WML文件并最終返回到移動裝置802。
如上所述,通過利用諸如用戶概況和客戶數據的背景信息以及位置信息可以改善用戶界面。除不同的交互方案,這個多維方法支持基于用戶的經驗利用特定應用程序以及利用特定裝置或交互方案的應用程序的采用。例如,不熟悉桌面應用程序的用戶需要系統支持以解釋在不同字段中輸入什么,而不需要關于使用屏幕、鍵盤和鼠標的幫助。在完全基于VoiceXML的應用程序中,熟悉應用程序的用戶可能需要交互方案的更多支持(例如,系統建議用戶“你能夠將數字或類型輸入鍵盤”)。
關于用戶和客戶的信息可以存儲在企業應用程序的數據庫服務器中。因為許多企業數據的動態特性,這種系統可使用事項數據庫(transactionaldatabse)。雖然事項數據庫提供許多優點,它們的附加的功能有時不利地影響性能。在許多情況下,用戶界面主要可以訪問靜態數據,靜態數據不需要事項數據庫功能。可以從后端服務器810提取出數據,映射到數據模型,并存儲在使能輕型目錄訪問協議(LDAP lightweight directory access protocol)的目錄服務器中。這些數據存儲裝置的同步可能發生在定義間隔中的批量處理中。
已經描述了多個實施。然而,應該理解,在不脫離本發明的精神和范圍的情況下,可以對其進行各種修改。因此,其它實施也包括在所附權利要求的范圍內。
權利要求
1.一種集成地理背景信息的位置背景認知系統,所述位置背景認知系統包括移動裝置;位置服務,可操作用于確定移動裝置的位置;移動應用程序服務器,耦合到移動裝置,用于提供商業處理應用程序,該商業處理應用程序包括用戶界面;以及地理信息服務應用程序,耦合到移動應用程序服務器,該地理信息服務應用程序可操作地查詢商業處理數據,其中,所述移動應用程序服務器基于移動裝置的位置和商業處理數據來修改用戶界面。
2.如權利要求1所述的系統,還包括后端企業服務器,耦合到移動應用程序服務器以使得后端企業服務器可操作地提供商業處理數據。
3.如權利要求2所述的系統,其中,所述后端企業服務器包括客戶關系管理應用程序,以及其中所述商業處理數據包括客戶數據。
4.如權利要求1所述的系統,其中,所述用戶界面包括用戶輸入字段,其中所述移動應用程序服務器通過利用商業處理數據設置用戶輸入字段的值來修改所述用戶界面。
5.如權利要求4所述的系統,其中,所述用戶輸入字段對于用戶不可見。
6.如權利要求4所述的系統,其中,利用移動應用程序服務器所設置的用戶輸入字段的相應值來顯示所述用戶輸入字段。
7.如權利要求1所述的系統,其中,所述用戶界面包括用戶輸入字段,以及所述移動應用程序服務器通過利用商業處理數據提供可能值的選擇來修改用戶界面。
8.如權利要求1所述的系統,其中,所述移動裝置是個人數字助理(PDA)。
9.如權利要求1所述的系統,其中,所述移動裝置是移動電話。
10.如權利要求1所述的系統,其中,所述移動裝置是移動電話以及所述位置服務是基于網絡、手機輔助的。
11.如權利要求1所述的系統,其中,所述移動裝置是移動電話以及所述位置服務是基于手機、網絡輔助的。
12.如權利要求1所述的系統,其中,所述移動應用程序服務器通過查詢地理信息服務應用程序來確定與移動裝置的位置相關的商業處理數據,基于移動裝置的位置和商業處理數據來修改用戶界面。
13.一種利用位置背景信息來修改用戶界面的方法,該方法包括下列步驟識別移動裝置的位置;基于移動裝置的位置從地理信息服務應用程序檢索信息;利用檢索的信息修改用戶界面;以及在移動裝置上顯示修改后的用戶界面。
14.如權利要求13所述的方法,其中,識別移動裝置的位置的步驟包括查詢位置服務以確定移動裝置的位置。
15.如權利要求14所述的方法,其中,所述位置服務是基于移動裝置的。
16.如權利要求13所述的方法,其中,所述用戶界面包括用戶輸入字段,以及其中修改用戶界面的步驟包括利用檢索的信息來設置用戶輸入字段的值。
17.如權利要求16所述的方法,其中,所述用戶輸入字段是隱藏不顯示的。
18.如權利要求16所述的方法,其中,顯示所述用戶輸入字段和設置的值。
19.如權利要求13所述的方法,其中,基于移動裝置的位置從地理信息服務應用程序檢索信息的步驟包括利用包括地理位置的查詢來查詢地理信息服務應用程序。
20.一種用于在移動裝置上提供位置背景認知用戶界面的計算機程序,所述計算機程序包括位置標識代碼段,用于確定移動裝置的位置;信息調度代碼段,用于基于移動裝置的位置從地理信息服務應用程序中檢索信息;用戶界面生成代碼段,用于利用檢索的信息來修改用戶界面;以及用戶界面顯示代碼段,用于顯示修改后的用戶界面。
全文摘要
一種位置背景認知移動系統,確定移動裝置的位置并基于裝置的位置來更新用戶界面。通過利用移動裝置的位置來減少用戶需要輸入到商業處理應用程序中的信息量,系統增加了在諸如移動電話的移動裝置上提供商業處理應用程序的靈活性。
文檔編號H04L29/08GK1650649SQ03806255
公開日2005年8月3日 申請日期2003年2月7日 優先權日2002年2月7日
發明者阿克塞爾·斯普里斯特斯巴赫, 哈特穆特·K·沃格勒, 彼得·S·埃伯特 申請人:Sap股份公司