throbber
a2) United States Patent
`US 6,968,179 Bl
`(10) Patent No.:
`De Vries
`(45) Date of Patent:
`Nov.22, 2005
`
`
`US006968179B1
`
`FOREIGN PATENT DOCUMENTS
`(54) PLACE SPECIFIC BUDDY LIST SERVICES
`
`. 0 804 010 A2=10/1997. : : EP
`
`
`
`
`(75)
`Inventor:
`Jean Pierre De Vries, Kirkland, WA
`EP
`0817 444 A2
`1/1998
`(US)
`wo
`WO 00/22860
`4/2000
`
`(*) Notice:
`
`(73) Assignee: Microsoft Corporation, Redmond, WA
`(US)
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`US.C. 154(b) by 690 days.
`(21) Appl. No.: 09/626,170
`(22)
`Filed:
`Jul. 27, 2000
`
`Int. C1?ee H04Q 7/20; HO4B 1/38
`(51)
`(52) U.S. Cheects 455/414.1; 455/456.3;
`455/566
`(58) Field of Search oe 455/414.1, 422.1,
`455/456, 457, 459, 466, 456.1, 456.2, 456.3,
`455/456.4, 456.6, 566; 340/993
`
`(56)
`
`References Cited
`US. PATENT DOCUMENTS
`
`5,086,394 A *
`5,548,726 A
`5,926,765 A :
`5,946,626 A
`6,377,793 B1*
`6,519,463 B2*
`6,549,768 B1*
`6,587,691 B1*
`
`2/1992 Shapira oe e eee 340/993
`8/1996 Pettus
`TAAG9D Sasaki oes 455/456.1
`
`............ 455/456
`8/1999 Foladareet al.
`4/2002 Jenkins «0.0.0...ee 455/456
`
`.............0.0.. 455/456.3
`2/2003 Tendler
`4/2003 Fraccaroli ................ 455/456.3
`7/2003 Granstam etal. ........... 455/457
`
`OTHER PUBLICATIONS
`“The HAVi Specification: Specification of the Home Audio/
`Video mn(Oe(HAVi) Architecture,” HAV: Specifi-
`cation, (Nov. 2
`).
`.
`.
`Zhang et al.,
`“X.500 Directory and OSI Management,
`Including A Communications Theory Mini Conference,
`(Dec.6-9, 1992).
`*
`cited b
`i
`cme
`OY XAEINET
`Primary Examiner—Quochien B. Vuong
`(74) Attorney, Agent, or Firm—Klarquist Sparkman, LLP
`
`(57)
`
`ABSTRACT
`
`An information service provides search and notifications to
`inform whencertain people (e.g., friends, family, business
`contacts, etc.) are nearby so asto facilitate communications
`with those people. Users may define lists of people whose
`locations may be tracked by positioning equipment based on
`personal communications/computing devices carried by the
`people. The information service processes this people and
`place data to identify those of the listed people that are in the
`user’s vicinity, and provide notifications and user-initiated
`search results informing the user such as via the user’s
`personal communications/computing device
`,
`
`26 Claims, 9 Drawing Sheets
`
`INFERENCE
`ENGINE
`
`210 RESOURCES
`
`220
` PUBLIC
`
`PLACES
`
`NOTIFICATION
`
`Google Exhibit 1013
`Google Exhibit 1013
`Google v. Mullen
`Google v. Mullen
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 1 of 9
`
`US 6,968,179 B1
`
`102
`
`126
`
`
`
` a
`
`y
`— —
`INFORMATION
`|
`400
`
`ITT7-.Wier
`— SERVICE
`
`
`
`
`
`PHONE
`
`WIRELESS
`TOWER
`
`
`
`
`DATA
`
`LAPTOP
`NETWORK
`COMPUTER
`
`
`| at
`
`| SERVE
`
`COMPUTER
`
`WIRELESS
`TOWER
`
` HANDHELD
`
`
`128
`~~
`
`DESKTOP PG
`
`TERMINAL
`
`-C
`
`c)
`oa LD
`
`PAGER
`
`123
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 2 of 9
`
`US 6,968,179 B1
`
`220
`
`INFERENCE
`ENGINE
`
`210 RESOURCES
`
`PLACES
`
`PUBLIC
`
`NOTIFICATION
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 3 of 9
`
`US 6,968,179 B1
`
`\
`G
`300
`FIG. 3
`302
`
`
`
`
`321
`BUDDY B
` USER A RECORD
`
`
`
`CONTEXT
`
`USER A PLACE
`
`
`
`
` CO-WORKER
`
`
`BUDDY LIST
`
`
`
`
`
` BUDDY E
`
`
`BUDDY A PLACE
`CONTEXT
`
`BUDDY B PLACE
`CONTEXT
`
`BUDDY C PLACE
`CONTEXT
`
`BUDDY D PLACE
`CONTEXT
`
`BUDDY E PLACE
`CONTEXT
`
`FRIENDS
`BUDDYLIST
`
`320
`
`BUDDY A
`
`
` BUDDY C
`
`BUDDY D
`
`BUDDY B
`
`311
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 4 of 9
`
`US 6,968,179 B1
`
`SEARCH
`
`400
`
`INFORMATION
`SERVICE
`
`
`
`
`
`
`SERVICE
`PARA-
`METERS
`
`570
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 5 of 9
`
`US 6,968,179 B1 INFORMATION
`
` SERVICE
`PARA-
`METERS
`
`SERVICE
`
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 6 of 9
`
`US 6,968,179 B1
`
`FIG.6 °° REMOVABLE
`
`STORAGE
`
`
` SYSTEM MEMORY
`
`STORAGE
`
`
`
` VOLATILE
`
`OUTPUT DEVICE(S)
`
`
`INPUT DEVICE(S)
`
`NON-VOLATILE
`
`
`
`COUMMUNICATION
`CONNECTION(S)
`
`NON-REMOVABLE
`
`PROCESSING
`UNIT
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 7 of 9
`
`US 6,968,179 B1
`
`800
`
`805
`
`
`
`
`
`
`
`CLIENT
`DEVICE
`
`810
`
`COMPUTER
`NETWORK
`
`
`
`“I
`
`FIG. 8
`
`850
`
`
`
`DEVICES
`SERVICES
`NETWORKS
`.VENUES
`SPACES
`.PEOPLE
`.PROCESSES
`EVENTS
`
`
`
`
`
`
`
`FIG. 9
`
`aw
`
`$154000123.XYZ-001.MAKER. DIGITAL-VIDEO.CAMCORDER.DEVICES
`
`866
`
`865
`
`864
`
`863
`
`862
`
`861
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 8 of 9
`
`US 6,968,179 B1
`
`FIG.10
`20
`‘se
`
`= Conners>
`
`881
`
`©oOoNo
`
`Bes
`
`8
`
`896
`
`884
`
`885
`
`oon
`886
`
`882
`
`CAMCORDER)
`
`===
`
`wus
`
`_ DIGITAL- .
`VIDEO
`
`883
`
`$154000123
`
`oun
`
`

`

`U.S. Patent
`
`Nov.22, 2005
`
`Sheet 9 of 9
`
`US 6,968,179 B1
`
`FIG. 11
`
`900
`
`
`NEWS|FAVORITES
`OOL|sa
` 904
`
`
`MAIL
`
`SEARCH
`
`906
`
`902
`
`908
`
`
`SEARCH IN
`
`
`
`NEIGHBORHOOD
`
`
`ARCHIVE
`
`
`
`
` ALL
`
`
`
`
`MODIFY SEARCH
`
`
`
`
`
`HISTORY
`
`WEB
`
`INVERSE SEARCH
`
`MONDAY12:34 PM
`
`

`

`US 6,968,179 B1
`
`1
`PLACE SPECIFIC BUDDY LIST SERVICES
`
`TECHNICAL FIELD
`
`2
`Internet, these instant messaging servicesalso fail to facili-
`tate opportunities for in-person meeting.
`Also available is a match-making device, called the
`“Lovegety.” This key-chain suspended, egg-shaped device
`comesin male (blue) and female (pink) versions, and can be
`set to any of three modes indicating its user’s desire for
`“talk,” “karaoke,” or “get2” (i.e., romance). When opposite
`gender models come within transmission range (i.e., about
`15 feet), the devices emit an audible alarm. Also, if the two
`models are set to the same mode (such as, both on “talk”
`mode), the devices flash green. Again, the Lovegety fails to
`Wireless telecommunications in the form of pagers, cell
`adequately facilitate opportunities to socialize in-person
`phones andtheir supporting communications networks have
`with friends and others known to you.
`led to changes in the ways that people meet, socialize and
`The present invention is directed towards providing user-
`communicate. The market penetration of cell phonesin parts
`contextual information services based on place and people
`of Europe has resulted in cell phone ownership being a
`via mobile telecommunications devices, such asto facilitate
`norm, rather than an exception. This circumstance has lead
`in-person social interaction with those that the user has
`to changes in the ways that people, particularly the young,
`established relationships. In an embodimentof the invention
`arrange to meetfor social interaction. It is now common,for
`described herein, a place-specific buddylist service is an
`example,
`that a person will initially contact a friend or
`information service provided to users on a data communi-
`friends via cell phone, and after inquiring of each other’s
`cations network, which may be a wireless telecommunica-
`present location, mutually decide on an intermediate meet-
`tions network accessed by users from mobile personal
`ing place (such as a coffee shop, restaurant, mall or park) for
`information devices such as cell phone, pager, personal
`further in-person social interaction. By contrast, prior means
`digital assistant (PDA), notebook computer, handheld com-
`of communication did not support such ad-hoc, spontaneous
`puter, or other mobile personal embedded networked com-
`meeting and gathering. In-person meetings previously might
`puting and/or telecommunications device—although other
`access devices and communications mediums also can be
`depend upon chance encounters of friends in public places,
`prior arrangement
`(e.g., via voice mail, message on a
`used. The information service processes information as to
`bulletin board, etc.), exhaustive searching (e.g., visiting or
`the people with whom the userhasestablished relationships
`telephone calling several locations where the friend(s) are
`and the location of those people as reported by their mobile
`routinely found),etc.
`personal devices, so as to then provide place-specific people
`notifications to the user as well as user-initiated search
`Yet, current mobile telecommunications technologiesstill
`do not adequately facilitate people’s social interaction. The
`results. The notifications and search results may take the
`just-described initiating of in-person meetings via cell phone
`form of an audible alarm, voice, textual display, or graphical
`is limited in that
`the friend or friends called may be
`display, among others.
`geographically distant (e.g., in a remote part of the commu-
`In one alternative of the invention, the information service
`nity, or even “out-of-town”) or otherwise occupied, while
`tracks a people/place state for each user, which containsaset
`other friends not called may be immediately available and
`of people (e.g., other users) and information of their loca-
`“sust-around-the-corner.” This lack of information results in
`tions (which also may include other “presence” information,
`many missed opportunities for in-person social interaction.
`such as availability and visibility). Preferably the set of
`Further, this one-to-one cell phone calling requires an expo-
`people has the form of a buddy list, whichis a list of other
`nentially increasing numberof interactions as the group size
`users that are known to the user and have mutually con-
`increases.
`sented to be added to each other’s buddy lists. The infor-
`mation service also tracks a location state for each user, such
`as by having each user’s mobile device report that user’s
`location to the information service. As any user moves
`location, the information service updates that user’s location
`state, and also updates any people/place states whose set of
`users includes the moved user. When any user’s people/
`place state changes, the information service generates a state
`change event which maytrigger notifications to the user.
`In anotheralternative, the user can set rules and/or param-
`eters to control when notifications are generated based on a
`change event to the user’s people/place state. For example,
`a user may set a proximity parameter designating that
`notifications are provided only when the other users on his
`or her buddylist are within a certain proximity (e.g., within
`a same building complex, within a certain number of miles
`or kilometers, etc.). As further examples, the user may set
`rules or parameters to enable or disablenotifications, such as
`to prevent
`interruption when the user is in a meeting,
`involved in a task, etc.
`In still another alternative, the user can set rules and/or
`parameters to control when information of the user’s loca-
`tion is allowed to change other users’ people/place states or
`result in notifications to such other users. For example, a
`user can set a “visibility” parameter to either a “visible”
`
`Other known telecommunications technologies also fail
`to focus on or solvethis problem offacilitating opportunities
`for in-person meeting. For example, several companies now
`provide instant messaging services on the Internet (e.g., the
`MSN Messenger of Microsoft Corporation, ICQ, the AOL
`Instant Messenger of America Online, Inc., Yahoo Messen-
`ger, etc.). These instant messaging services facilitate com-
`munications via private Internet “chat” (i.e., exchange of
`instantaneous person-to-person text messagesoverthe Inter-
`net). The users first construct lists of other users who have
`mutually agreed to participate in instant messaging with
`each other. The users also are required to download and
`install a client software program on their computers used for
`Internet access. Upon the computer logging on to the Inter-
`net, this client software program notifies an instant messag-
`ing server operated by the providing company that
`the
`respective user is on the Internet. A user can also set an
`availability indicator, e.g., to indicate she is “on the phone.”
`The users are then notified by the instant messaging server
`which users on their lists are “on-line” and available for
`
`This invention relates to communications and messaging
`systems and services, and more particularly to such systems
`and services to facilitate communication based on location
`
`and inter-relationships of people.
`
`BACKGROUND AND SUMMARY
`
`instant messaging “chat.” More generally, users are alerted
`to the on-line state of their friends, e.g. which are “online”,
`“busy” or “on the phone.” Although useful for promoting
`communications between remotely located users of the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`

`US 6,968,179 B1
`
`3
`value which enables information of the user’s location to
`
`change other users’ people/place states, or an “invisible”
`value in which the user’s location is not revealed in notifi-
`cations to other users.
`
`4
`FIG. 2 is a conceptual block diagram of search and
`notification operations provided by the place-specific
`buddy-list information service of FIG. 1.
`FIG. 3 is a block diagram depicting a data structure for
`representing a people and place state within the place-
`specific buddy-list information service of FIG. 1.
`FIG. 4 is a data flow diagram of a search operation of the
`place-specific buddy-list information service of FIG. 1.
`FIG. 5 is a data flow diagram of a notification operation
`of the place-specific buddy-list information service of FIG.
`1.
`
`FIG. 6 is a block diagram of a basic configuration of a
`computer may be usedto run the information service of FIG.
`
`10
`
`15
`
`25
`
`In yet another alternative, the user can segregate the other
`users tracked in his or her people/place state into separate
`subsets, such as subsets of family,friends, business contacts,
`co-workers, etc. Further, the user can set the rules and/or
`parameters that control notifications to also be based on the
`subset of the other user who moved. For example, the user
`may set a rule to receive people/place notifications as to
`business contacts and co-workers at certain times (e.g.,
`during business hours), or as to family and friends at other
`times (e.g., evenings and weekends).
`FIG. 7 is a diagram of computers that provide an authori-
`In another alternative, the system can use default rules
`tative namesregistry and proximity-based search engine for
`and/or observation of user behavior to infer the user’s
`use in the place-specific buddy-list information service of
`FIG. 1.
`situation and preferences.
`In a further alternative, the user can define various modes
`FIG. 8 isalisting of dimensionsin the authoritative names
`20
`consisting of a set of rules and/or parameters controlling the
`registry of FIG. 7.
`place-specific buddylist service, and set their mobile device
`FIG. 9 is a listing of a nameregistered under a dimension
`to apply a selected one of the modes. For example, the user
`of the authoritative names registry of FIG. 7.
`might define a social mode where notifications as to anyone
`FIG. 10 is a diagram of a hierarchical organization of
`on their buddy list within a larger proximity are received and
`names in a dimension ofthe authoritative namesregistry of
`FIG. 7.
`the user is visible to others; a business mode in which only
`notifications of their business contacts and co-workersin the
`
`same building are received and the user is visible to only
`their business contacts and co-workers, and a private mode
`in which the user is visible to only a select subset of other
`users.
`
`In still a further alternative, the information service can
`measure the location of users and their proximity based on
`geographical coordinates, such as may be provided by a
`global positioning system. Alternatively,
`the information
`service can measure location and proximity based on a place
`naming schema or place names registry, which may be
`hierarchical. This place naming registry preferably is
`authoritatively managed by a registry provider.
`In yet a further alternative, the information service can
`apply default rules and/or parameters as to state change
`events, notifications and alerts based upon the user’s loca-
`tion or other place-specific context. For example, default
`rules can be applied in a movie theatre, conference room,
`etc. to disallow notifications via audible alarms; or on an
`airplane to disallow radio transmission of the state change
`events, notification or alerts to the user’s device during
`take-off and landing procedures.
`In another alternative,
`the information service can be
`operated and provided by an entity as part of a business
`venture, which may generate revenue from such operation
`based on usage fees, subscription fees, advertising fees such
`as for delivery of commercial promotions along with the
`information service notifications and alerts, or promoting
`auxiliary services that generate revenue along with the
`information service operation.
`Additional features and advantages will be made apparent
`from the following detailed description of the illustrated
`embodiment which proceeds with reference to the accom-
`panying drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram depicting a communications
`system in which a place-specific buddy-list
`information
`service according to one embodiment of the invention
`operates.
`
`30
`
`40
`
`45
`
`55
`
`60
`
`65
`
`FIG. 11is a view of a user interface screen display on the
`client device of FIG. 7, with which a user can initiate a
`proximity-based search.
`
`DETAILED DESCRIPTION
`
`In the following detailed description, one implementation
`of a user-contextual information service based on place and
`people via mobile telecommunications devices according to
`the invention is embodied in a place-specific buddy-list
`information service. The place-specific buddy list informa-
`tion service supports searches based on people and place,
`and providesnotifications or alerts also based on people and
`place. For example,
`the place-specific buddy list service
`provides notifications and alerts to a user that other users
`enumerated in the user’s buddy list are within a given or
`selected proximity to the user, so that a spontaneous in-
`person meeting or
`like social
`interaction can then be
`arranged.
`With reference to FIG. 1, the place-specific buddy list
`information service 100 in an operating environment 102 of
`an illustrated embodimentof the invention is implemented
`in server application software run on a server computer or
`group of servers 104-106 connected on a distributed data
`communications network 10. The information service 100
`tracks users of the information service and their locations in
`
`a people/place database 112. The information service 100
`also may track locations of other place-specific resources
`(e.g., other data services, controllable devices, merchants
`offering particular products in a certain venue, etc.) on the
`data communications network, so as to provide auxiliary
`information as to these other place-specific resources along
`with the place-specific buddy list information. Someofthis
`information may be obtained from third parties.
`Users of the information service 100 access the informa-
`tion service from mobile personal networked computing or
`telecommunications devices 120-123, such as cell phones,
`personal digital assistants, handheld and laptop computers,
`electronic book or tablets, smart cards, electronic badges,
`and etc. Preferably, these mobile devices communicate with
`the information service on the data communications network
`
`110 through a wireless networking and communications
`
`

`

`US 6,968,179 B1
`
`5
`system (e.g., including wireless transmission/reception tow-
`ers 126-127). The mobile devices 120-123 and information
`service can use standard data networking protocols for data
`communications on the network 110, such as TCP/IP,
`HTML, XML, HTTP, DNS, LDAP, and/or others. Alterna-
`tively, the data communications network also can encom-
`pass data communications technologies that may not provide
`constant or mobile wireless connections. In onealternative,
`the data communications network can use a short-range
`wireless technology, such as Bluetooth (which provides a
`point-to-point connection), for communicating the informa-
`tion service notifications (for example, to discover others on
`the user’s buddylist in a large conference room). In another
`alternative, the user may intermittently connect on the data
`communications network and information service, such as
`use of a smartcard on a web kiosk 129 to access and receive
`notifications from the information service, where the user
`would only be connected and networked with the informa-
`tion service for the duration of the user’s session at the kiosk.
`
`10
`
`15
`
`20
`
`6
`request using a personal computer to receive notifications on
`their mobile device (such as a pager) that userson his or her
`buddy list are nearby.
`With reference now to FIG. 2, the information service 100
`is implemented using an inference engine 200. The inference
`engine 200 is realized in software running on the server
`computers 104—106 (FIG. 1), andutilizing the people/place
`information in the database 112 (FIG. 1). The inference
`engine 200 operates to infer which resources 210 (ie.,
`principally people, both individuals and groups, but also
`locale-specific data, services, devices, and etc.) tracked by
`the service may be of interest to a user given that user’s
`“place context” 220 (i.e.,
`the user’s location, but also
`optionally including other place-specific information such as
`whetherthe place is the user’s homeor place of work,etc.).
`The inference engine 200 processes information from the
`people/place database 112 to produce these inferences for
`both user-initiated searches and notifications triggered by
`events other than user requests (e.g., change in location of
`the user or of people on the user’s buddylist). The resulting
`inferences are then conveyed to the user, preferably to a
`client software application on the personal mobile data
`communications device of the user.
`
`As shown in FIG. 2 for example, the three users A, B and
`C are considered to be part of the resources 210 tracked by
`the inference engine 200 for drawing inferences. Each of
`these users A-C also has a place context 220. The place
`contextis a set of attributes based on a user’s location; along
`with information of the user’s location, the attributes may
`include user persona/task/preferences/etc., applicable social
`circle, available devices, networks and services and so on. A
`particular user may have more than one concurrent place
`context, e.g. aS a parent with children in a mall and as an
`employee working on a particular project in a city in a
`particular sales region. Based on the place context of a user
`whois the subject of a search or notification, the inference
`engine operates to determineoridentify other resources that
`are nearby according to a proximity measure. When the user
`As at home for example, the inference engine determines
`that the user C whoalso at home with user A is nearby, and
`identifies the user C as a nearby resource in response to the
`search query or in a notification to the user A. The inference
`engine may also identify other resources relevant to the user
`in the particular place context, such as a place-specific data
`file 212 (which may bea text, audio, image or video, such
`as of a messageleft for the user upon arrival at the place),
`service, device, database 214, etc. As the user A then moves
`location into public places, his or her place context changes,
`such that the inference engine infers other resources are
`nearby (e.g., user B, data file 216, and database 218). The
`inference engine then returns the inferred resources as
`results to a search query or in notifications.
`The users’ place contexts and the resources preferably are
`identified to the information service 100 and its inference
`
`The personal mobile data communications devices
`120-123 and/or the data communications network 110 also
`are equipped with location detecting capability to determine
`the locations of the individual personal mobile devices, so as
`to thereby infer the position of their users. This location
`detection capability can be provided by equipping the indi-
`vidual personal mobile data communications devices
`120-123 with a Global Positioning System (GPS) receiver,
`whichdetects the personal mobile communications device’s
`location based on signals transmitted from GPStransmitters.
`Alternatively or additionally, the data communicationsnet-
`work 110 can include equipment to determine the personal
`mobile data communications devices’ locations by perform-
`ing a triangulation process (or like location determination)
`based on the strength of the data communications or other
`signal transmitted from the personal data communications
`devices and received at nearby wireless towers 126-127.
`Alternatively or additionally, the user may provide location
`information by direct input, for example by entering (by
`speech, text, or bar-code or other machine readable data
`scanning) an intersection or venue name or other location-
`identifying information.
`The locations of the personal mobile data communica-
`tions devices 120-123 are reported to or polled by the
`information service 100, which uses this information to
`track the location of the devices’ users in the people/place
`database 112. The personal mobile data communications
`devices’ locations can be reported to the information service
`at periodic intervals, or alternatively may be reported when-
`ever the location changesby a significant threshold amount.
`The interval and/or threshold amount are parameters that
`may vary depending on the design criteria of the application,
`or system. Alternatively, the locations can be reported to the
`information service in responseto polling by the information
`service.
`55
`engine 200 byaset of values or attributes. These attributes
`include at least the identity of the user (or resource), and of
`The information service 100 processes the information as
`the user’s (or
`resource’s)
`location. Additionally, other
`to the users and their locations stored in the people/place
`database 112 so as to respond to search queries and provide
`attributes relating to place and the user/resource can be
`included, such as to identify group(s) of people (e.g., a
`alerts or notifications of changes. The users preferably can
`buddy list), relationship (e.g., family, friend, co-worker,
`submit search queries and/or subscribeto alerts/notifications
`client, etc.), an activity or event that takes place at
`the
`from their personal mobile data communications devices
`120-123. Alternatively and/or additionally, the users may
`location or in which the person participates, purposeor role
`that the place serves for the person (e.g., home, work or
`submit search queries and subscriptions from other comput-
`public place), and etc. These attributes conceptually define
`ing and/or telecommunications devices connecting to the
`data communications network 110, which may include per-
`a point or range of points in a multi-dimensional space 240,
`sonal computers, telephones, and like stationary devices as
`241 that the inference engine can use to measure proximity
`of the resources (including individuals and groups) to a
`well as mobile devices. For example, a user can submit a
`
`25
`
`30
`
`40
`
`45
`
`50
`
`60
`
`65
`
`

`

`US 6,968,179 B1
`
`7
`user’s current place context, such as by distance in the
`conceptual space 240, 241. (The dimensional space of the
`user and of the resourcesis, in effect, a single space, where
`the user’s context is a resource to another user.) Because the
`multi-dimensional space 240, 241 includes dimensionsother
`than just physical space, this measurement of proximity in
`terms of distance in the conceptual multi-dimensional space
`is based also onthe other attributes of the resources and user
`place context in addition to geographical location. In one
`embodiment, this set of attributes can be a set of names from
`a multi-dimensional authoritative names registry, such as
`described more fully below.
`With reference now to FIG. 3, the information service 100
`(FIG. 1) maintains data in the database 112 (FIG. 1) for
`drawing the proximity inferences depicted in FIG. 2. In a
`preferred embodiment, this data takes the form ofa per-user,
`people/place state 300. The people-place state 300 includes
`a set of database records maintained for a user of the
`information service 100. This data set includes a user record
`
`302, one or more buddy lists 310, 311, and place context
`records 320-324 oflisted individuals (or groups).
`The user record 302 stores data representing a user of the
`information service 100, such as the user A of FIG. 2, about
`whom the inference engine will draw place and people-
`specific inferences for searches and notifications. The user
`record 302 includes place context data 304 for the user, and
`links to any buddylists 310-311 that have been defined for
`the user. As described above, the information service 100
`updates the user’s place context data when new location
`information is reported for
`the user based on position
`sensing equipmentin the user’s personal mobile data com-
`munications device, or in the communications network.
`The buddylists 310, 311 enumerate a set of people (e.g.,
`other users) about whom the user desires to be informed by
`the information service 100. The buddy lists preferably are
`created via a process involving an exchange of text mes-
`sages between the user and each person on the buddylist, in
`which the people consent to the information service provid-
`ing their place-specific information to the user. Preferably,
`the user can organize people into multiple groups(e.g., with
`multiple buddylists, or alternatively by adding a classifica-
`tion attribute to each person), such as lists of friends,
`co-workers, family, clients/customers, etc.
`The people/place state 300 further includes place context
`data 320-324 for the people on the user’s buddylists 310,
`311. The people’s place context data indicates their location,
`and possibly other place-related attributes (e.g.,
`type of
`locale, such as work, public place, airplane, which may
`allow for further place-specific processing for notifications
`and searches by the information service). Again, the infor-
`mation service 100 updates the people’s place context data
`whenever changes are reported, such as from positioning
`equipment on the people’s personal mobile data communi-
`cations devices or the communication network.
`
`the
`information service implements
`the
`Preferably,
`described people/place state 300 using distributing comput-
`ing with a publish/subscribe eventing model. For example,
`a presenceserverfor the user’s “buddy C”receives location
`updates from the buddy C’s mobile device or other location
`tracking method, and provides the buddy C place context
`data 322. The computer that maintains the people/placestate
`300 of the user A (which maybe resident on another server
`of the information service 100, or on the user A’s personal
`mobile data communications device or other client com-
`puter) subscribes to receive notifications of this buddy C
`place context data 322 from the buddy C’s presence server.
`When a change to the buddy C’s location or other presence
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`information(e.g., availability) occurs, the buddy C presence
`server sends a notification to all
`that have subscribed,
`including to the user A. This then updates the buddy C place
`context 322 in the user A people/place state 300, which may
`result in alerts being presented to the user A.
`With reference to FIG. 4, the information service 100
`provides a user-initiated search operation 400. In the search
`operation 400, the locations ofthe user (e.g., person A) and
`those on the user’s buddylist(s) (e.g., people B, C and D) are
`first tracked (as indicated at 401) in the people/place state
`data 300 in the database 112 of the information service.
`When desired, the user can then submit (at 402) a search
`query to the information service 100, such as by entering a
`query oractivating an application software feature that uses
`the search query on the user’s personal mobile data com-
`munications device. The submitted query can include
`parameters to control the query scope, such as which people
`(e.g., friends or co-workers) to include in the search, the
`proximity threshold, etc. Upon the user initiating the search
`operation via the query submission,the information service
`100 processes the people/place state data 300 at 403, 404 to
`determine which of the people B—D on the user’s buddy
`list(s) are within a selected proximity of the user (e.g.,
`people B and C in FIG. 4). The information service 100 at
`405 finally returns results of the search operation to the user.
`With reference now to FIG. 5, the information service 100
`also supports notification operations 500. In a notification
`operation, the locations of the user and those on the user’s
`buddylist(s) again are tracked in the people/place state data
`300 associated with that user in the database 112. Upon an
`update to the people/place state data 300 in which the
`relative locations of the user and/or those on the user’s
`buddylist(s) change, the information service 100 determines
`which people are in the user’s proximity based on the
`notification parameters at 502, and then formulates and
`transmits a notification messageto the user at 503 (i.e., to the
`user’s personal mobile data communications device for
`appropriate presentation to the user).
`
`the information
`With reference again to FIGS. 4 and 5,
`se

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket