A. Field of the Invention
This invention relates to a system that transmits an information profile about an object wirelessly from a fixed server-broadcast device to a mobile client-receiver device based on the mobile device's proximity to the profiled object.
B. Description of Related Art
The present invention serves the need for a system that provides immediate information at the most helpful time when a user is in the immediate area of an object being viewed. The system provides information about a selected object conveniently, unobtrusively, and in real time.
Due to the importance of immediacy and context in communication effectiveness, proximity-based systems have been developed in various forms. Public information or help desks are examples of traditional proximity-based information systems.
Modern technology has been used to significantly vary and improve on the availability and usefulness of proximity-based information.
Shteyn, U.S. Pat. No. 6,782,253, describes a system that alerts users to the availability of proximity-specific data by way of a beacon. The beacon signals the user's mobile phone with a message that conveys sufficient detail about the information to determine (i) whether the user desires the information (via previously set filters) and (ii) the server location where the actual content is available. This Mobile Micro Portal is configurable and allows users to create profiles to specify the types of services of interest.
Compared to the present invention, the Shteyn system has a different physical architecture of the system and system administration. The beacon is part of the difference in architectures. The present invention eliminates the need for a separate beacon because in the present invention the broadcast server device serves both the function of a beacon and a content provider. This eliminates the need for mapping between beacon signal and data source, making the present server-broadcasting device self-contained. Also with the current invention there is no external network required for the transmission of beacon signals and information content. Neither the cellular phone network nor the internet is used.
Another distinction between the Shteyn system and the present invention involves push or server-initiated technology. Shteyn is based push technology and argues that push technology (and the attendant profiles and filters) constitute improved usability over client-initiated or pull technology. However, the present invention is based on client-initiated or pull technology, which actually works best in a proximity-based information system. To avoid the inevitable spam and bombardment of marginally relevant content there must be elaborate filtering—this is not a nicety but a necessity. Push technology on a mobile phone or PDA can in some respects have all the appeal of a telemarketing cold-call at mealtime. Furthermore, push technology brings added complexity, from the user experience and software design perspectives. Pull technology is simpler to implement, yielding simpler User Interface Client designs and improved user experience and cleaner, more reliable software. More importantly, pull technology is actually a better, more intuitive fit for the task demands of a proximity-based system. It is akin to browsing in a store and periodically hearing “May I help you?” or “Have you seen this?” (push) from sales staff, verses asking for assistance when needed (pull). The latter pull model is almost certainly more efficient, provided there is sales staff immediately standing by.
Hale, U.S. Pat. No. 6,785,539, describes a wireless system that uses positional cues to activate context-sensitive multimedia content on a portable device. The content can be delivered in multiple languages and is configurable in other ways to suit individual preferences. Like Shteyn, Hale uses a separate transmitter to identify and communicate location and/or context information that is utilized by software running on the portable receiving device carried by the user. In contrast to Hale, the present invention does not have a separate mechanism for signaling context. In the present invention, context is always implicit through the close physical proximity between the broadcasting server and the object that is being described. The broadcasting server is visually identifiable (e.g., through a flashing LED) and users actively interrogate it to determine its contents and then selectively retrieve the information of interest. Once again, this is pull technology.
Another distinction between Hale and the current invention centers on the storage of content. Hale stores content on the portable device and relevant portions are triggered by context information communicated by the wireless transmitters. In contrast, in the present invention, all information initially resides on the broadcasting server.
GPS technology has the potential to play a significant role within various proximity-based information system implementations. The basic idea is to use GPS to fix a location, which is tantamount to establishing context, and use that context as an index into other centralized databases or internet sites. The current invention is different from any GPS-based approach because since there is no indirection, there is no lookup based on location that serves as a precursor to some other action (e.g., information retrieval). The information-broadcasting server is self-contained and pre-positioned within the physical context in which it is to be used.
Gellersen (Gellersen, Hans, Smart Its: Computers or Artifacts in the Physical World, March 2005, Vol. 48 Communications of the ACM, No. 3) has developed subminiature devices that are embedded within or attached to everyday objects such as tables, chairs, and storage containers. These devices are self-contained and can communicate with one another. They can be programmed to process and report various types of sensor data associated with the objects to which they are attached. These devices have a tiny form factor and favor placement in building materials, roadways, and other areas where sensor data is required. However, they lack the performance, capacity, open software architecture, and administrative capabilities of the present invention, all of which are required to function within a completely generic wireless proximity-based information system that can support any type of device without recompilation.
The goal of this Wireless Proximity-Based Information System is to provide people with relevant information where and when they want it. The present invention is a general-purpose system for providing on-the-spot information about objects of any type to users who are within the immediate proximity of that object.
Applications include, but are not limited to:
The system consists of three principal components: an Information Server, a User Client, and an Administrative Toolkit, referred to collectively as the system throughout this discussion. A high-level view of the system is given in
The Information Server is a small, headless electronic device that as depicted in
Information Server instances differ from one another in only two respects: (i) the object-specific content, and (ii) form factor, which is discussed later. The Information Server software and all other components are object-independent. Consequently, no software components need to be recompiled to support a new object.
All content delivered by Information Server is encoded using a human readable, object-independent Content Definition Language (CDL). This is made up of statements consisting of dot-prefixed commands and pipe-separated arguments.
CDL statements specify:
CDL source is interpreted in real time by the User Interface Client.
The Information Server logs all transaction details so that system activity and performance can be analyzed offline via Administrative Toolkit, which will be discussed later. The log includes the date and time at which each query was received, the physical address of the device that issued the query, and the specific information that was requested in each query. Similar data is logged for each response.
Information Server can be attached to the object it supports, embedded within the object, or placed nearby. Various device enclosure sizes, shapes, and attachment mechanisms are envisioned to support a range of consumer preferences and applications. Information Server form factors include but are not limited to stick-on casing with adhesive backing or screw mount, ruggedized weatherproof casing for outdoor or demanding environments, key chain fob, and wearable form factors such as lanyard, pendant, locket, necklace, bracelet, earring, or brooch.
The User Interface Client, which is represented at high level in
User Interface Client has two basic modes of operation: (i) real time proximity-based operation, which involves live interaction between the User Interface Client and one or more Information Servers and (ii) offline operation, which allows users to store content obtained from real time operation for subsequent use, and frees them from time and proximity constraints. Real time operation can be summarized as follows:
As shown in
Consider the following scenario, which will be used to illustrate real time operation as described above, and then to show how offline operation could be used.
A business traveler is strolling down an unfamiliar street in an unfamiliar city in search of a good restaurant for dinner. Passing the first of several restaurants the traveler spots a small device with a blinking blue LED affixed to the inside of the front window. Recognizing the device as an Information Server, the traveler reaches for his Bluetooth-enabled mobile phone and invokes the User Interface Client application, which has been pre-installed. The User Interface Client automatically begins searching for nearby Information Servers and quickly discovers, among others, the Information Server in front of the restaurant where the traveler is currently standing. He then clicks on the icon representing the restaurant and has access to details about the menu, prices, hours of operation, recent reviews, and several bios on the restaurant staff. This is real time operation.
The traveler is unsure about what other restaurants may be farther down the street so he saves (via the Save menu option in the User Interface Client) the content that he just received from the current Information Server on his mobile phone and continues his stroll. Several blocks down the street he comes upon another interesting restaurant equipped with an Information Server and repeats the process of viewing the available information. Should he choose the earlier restaurant or the latest one in front of which he is currently standing? To resolve the question—and to refresh his memory—he retrieves (via the Retrieve menu option in the User Interface Client) the data pertaining to the earlier restaurant and then compares the two restaurants. This is offline operation.
The User Interface Client (as with the Information Server) does not need to be re-compiled in order to support object types that it has never before encountered. It avoids re-compilation because: (i) as indicated above, all content it receives from the Information Server is encoded in CDL, which it knows to interpret in real time, and (ii) it uses generic information and presentation models to handle all object types.
The generic information model consists of a three-level hierarchy:
There is a three-screen hierarchy, one screen for each level in the information model:
User Interface Client also logs all transaction details. The log includes the date and time each query was transmitted, the physical address of the Information Server to which the query was directed, and the specific information that was requested in each query. Response data from Information Server is also logged.
Using this simple presentation model, it is possible to reach any contents associated with any object in two clicks, or two selections. Starting from L1, the User Interface Client top level, the user need only make an L2 selection (click 1) followed by an L3 selection (click 2).
Administrative Toolkit is envisioned as a desktop application to create object-specific content, to download the content to a designated Information Server, and to upload and analyze logs collected on the Information Server. The Administrative Toolkit can also be used to set access permissions for an application. Access permissions determine which devices can and cannot access content associated with a given object.
Administrative Toolkit is also a vehicle for managing Information Server software patches (bug fixes) and updates. Management entails software version control, storage, and the capability to download and install specified software images on designated Information Server's.