Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
REAL-TIME AUTOMATIC USER STATUS RECOGNITION AND BROADCASTING SERVICE
Document Type and Number:
WIPO Patent Application WO/2011/161674
Kind Code:
A1
Abstract:
A method for providing information to users about the status of their contacts over a social network. A client application is installed in mobile devices of users and their contacts for automatically extracting current status data of users and contacts. Statuses for each user and contact are defined and saved in a database. Contextual information regarding each status is also collected and saved in the database. Association between statuses and contextual information is made and association results are stored in the database. The client application automatically collects updated current status data of each contact. The statuses, contextual information, and association results are processed in a server connected to the database, with processing results transmitted from the server to the client application over a data network, such as a cellular network or WiFi network. The client application displays contextual representation (text or icons) on the user's mobile device.

Inventors:
WIENER EYAL (IL)
Application Number:
PCT/IL2011/000491
Publication Date:
December 29, 2011
Filing Date:
June 20, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
WIENER EYAL (IL)
International Classes:
G06F15/16
Foreign References:
US20080155080A12008-06-26
US20090215479A12009-08-27
US20100057772A12010-03-04
Attorney, Agent or Firm:
LUZZATTO & LUZZATTO et al. (Beer Sheva, IL)
Download PDF:
Claims:
CLAIMS

1. A method for providing information to one or more users about the status of their contacts over a social network with relevant context of interest to said user, comprising:

a) installing a client application in the mobile device of said user and of said contacts, for automatically extracting data regarding the current status of said user and said contacts;

b) for each user and contact:

b. l) defining one or more statuses and saving said statuses in a database;

b.2) collecting contextual information regarding each status and saving said contextual information in said database;

b.3) associating between said one or more statuses and said contextual information and storing the association results in said database;

c) automatically collecting, by said client application, updated data regarding current statuses of each contact by the client application installed on his mobile device;

d) processing said statuses, said contextual information and said association results in a server that is connected to said database; ) transmitting the processing results from said server to said client application, over a data network; and

f) displaying contextual representation on the mobile device of said user, by said client application.

2. A method according to claim 1, wherein the status is selected from the group consisting of: in a meeting; moving:

driving;

in the middle of a phone call;

busy:

At home;

At work:

At school;

Available;

listening to music;

being in a zone with bad reception signal;

low battery power;

being in bad mood.

3. A method according to claim 1, wherein the data network is a cellular network or a WiFi network.

4. A method according to claim 1, wherein the contextual representation is in the form of a text.

5. A method according to claim 1, wherein each status is represented by a binary value.

6. A method according to claim 1, wherein the contextual representation is in the form of one or more icons.

7. A method according to claim 1, further comprising:

a) for each user, generating current or future events of interest associated with his contacts, by the server using the processing results; transmitting data representing said events to the client application on his mobile device; and

providing said user with visual or audible alerts/notifications regarding said events, by said client application.

8. A method according to claim 1. wherein updated data regarding current statuses of each contact is collected automatically from his calendar.

9. A method according to claim 1, wherein updated data regarding current statuses of each contact is collected automatically from his calendar.

10. A method according to claim 1, wherein notifications for selected status events are stored in an accessible memory, for allowing users to browse their status history.

Π.Α method according to claim 1, wherein the contextual representation is displayed on the mobile device of the user by using a context menu.

12. A method according to claim 1, wherein the user status is aggregated from different sources.

13. A method according to claim 1, wherein the sources include:

location;

calendar availability;

web services; and

the mobile device of the user.

14. A system for providing information to one or more users about the status of their contacts over a social network with relevant context of interest to said user, comprising:

a ) a client application, installed in the mobile device of said user and of said contacts, for automatically extracting data regarding the current status of said user and said contacts;

b) a database for storing each user and contact, one or more defined statuses, contextual information regarding each status and updated data regarding current statuses of each contact, collected by said client application;

c) a remote server being connected to said database, for:

c.l) associating between said one or more statuses and said contextual information;

c.2) processing said statuses, said contextual information and said association results;

c.3) transmitting the processing results from said server to said client application, over a data network: and

c.4) displaying contextual representation on the mobile device of said user, using said client application.

Description:
REAL-TIME AUTOMATIC USER STATUS RECOGNITION AND

BROADCASTING SERVICE

Field of the Invention

The present invention relates to the field of social networks. More particularly, the invention relates to the distribution of relevant information to a user, based on the status and location of his contacts on a social network.

Background of the Invention

Location-based social networks developed ways to provide location based specific information to users of the network, such as real-time location data of contacts (friends on a social network), advertisements associated with the users' location, user's comments and photographs related to places, etc. Such social networks depend on several existing technologies in different fields, including mainly:

Geo Positioning System (GPS) - Space-based global navigation satellite system. It provides reliable positioning, navigation, and timing services to worldwide users on a continuous basis in all weather, day and night, anywhere on or near the Earth which has an unobstructed view of four or more GPS satellites.

Cellular Internet - A global mobile system of interconnected computer networks that use the standard Internet Protocol Suite (TCP/IP) to serve billions of cellular users worldwide.

In the everyday life, users of a social network are constantly sampling their friends ' and family ' s current status. They ask questions like "where are you", "are you at home?" "What are you doing" "Have you left work yet? " "Are you on your way? " "Are you busy? " "Are you in a meeting " "Are you still out of states?", etc.

Today, people use phones calls and SMS to extract this information from their contacts, which is a common, repetitive, time consuming and expensive task.

Some existing services tried to solve this problem by allowing users of a social network to share their exact location on a map with their contacts. However, this solution could not provide interesting information to the user, since usually the user is not interested in the exact address of his friend at a specific moment. This data is usually meaningless and unhelpful to the user, since users are not interested in the location itself, but in the context of the location. What's happening there? What is this place? What their contact person is doing there, etc.

Some existing services are using public points of interest like restaurants or bars. However, this solution is not sufficient, since users only spend 1- 2% of their time in such public places.

Another existing services offer users to continuously share their location with their contacts without activating any interface by carrying hardware (such as GPS) that constantly transmits their exact location to the network. However, this solution suffers from privacy problems, since users may wish to share their location with others, but not during each and every minute. Furthermore, the way of presenting the information to a user is insufficient, since the data about location of contacts is presented to the user in an irrelevant manner. For example, the user may see the location of each contact, distributed on a virtual map but he does not know the context of being there. Also, he cannot know what does a specific location means for this contact. In order to try understanding what a specific location means, the user must get into the map and obtain more detailed information, since even a detailed address does not mean anything about the status of the contact. For example, only if the user realizes that a specific location is a cinema, he knows that his contact is currently watching a movie and is not available.

Other existing services offer users to view the distance to their contacts at a specific moment. However, this data is not sufficient and in many cases is irrelevant, since in most of the time, contacts spend their time farther than 1 mile away from the user, at which point, this data becomes irrelevant and boring.

All the methods described above provide only partial and raw data and have not yet provided satisfactory solutions to the problem of providing a user with mformation about the status of his contacts with the relevant context of interest to that user at a specific time.

It is therefore an object of the present invention to provide information to a user about the status of his contacts with the relevant context of interest to that user at a specific time.

It is further an object of the present invention to provide information to a user about the status of his contacts with the relevant context of interest to that user at a specific time, without deteriorating their privacy.

It is still an object of the present invention to provide information to a user about the status of his contacts using fast and easy visualization of this information. Other objects and advantages of the invention will become apparent as the description proceeds.

Summary of the Invention

The present invention is directed to a method for providing information to one or more users about the status of their contacts over a social network with relevant context of interest to the user, according to which a client application is installed in the mobile device of the user and of the contacts, for automatically extracting data regarding the current status of the user and the contacts. For each user and contact, one or more statuses are defined and saved the statuses in a database, contextual information regarding each status is collected and saved in the database. Association between the statuses and the contextual information is made and the association results are stored in the database. The client application automatically collects updated data regarding current statuses of each contact. The statuses, the contextual information and the association results are processed in a server that is connected to the database and the processing results are transmitted from the server to the client application, over a data network, such as a cellular network or a WiFi network. Then the client application displays contextual representation (in the form of a text or one or more icons) on the mobile device of the user.

Statuses may be selected from the group consisting of: in a meeting;

walking;

driving;

on the phone

busy;

At home; At work;

At school;

Available;

listening to music

being in a zone with bad reception signal;

low battery power;

being in bad mood.

Each status may be aggregated from different sources (such as location, calendar availability, web services and the mobile device of the user) and is represented by a binary value, it's either true or not at each moment.

It is possible to generate by the server, for each user, notification of events of interest associated with his contacts, using the processing results, to transmit data representing the events to the client application on his mobile device and to provide the user with visual or audible alerts/notifications regarding the events, by the client application.

Updated data regarding current statuses of each contact may be collected automatically from his calendar. Notifications for selected status events may be stored in an accessible memory, for allowing users to browse their status history.

The contextual representation may be displayed on the mobile device of the user by using a context menu.

The present invention is also directed to a system for providing information to one or more users about the status of their contacts over a social network with relevant context of interest to the user, that comprises:

a) a client application, installed in the mobile device of the user and of the contacts, for automatically extracting data regarding the current status of the user and the contacts;

b) a database for storing for each user and contact, one or more defined statuses, contextual information regarding each status and updated data regarding current statuses of each contact, collected by the client application;

c) a remote server being connected to the database, for:

c.l) associating between the one or more statuses and the contextual information;

c.2) processing the statuses, the contextual information and the association results;

c.3) transmitting the processing results from the server to the client application, over a data network; and

c.4) displaying contextual representation of on the mobile device of the user, using the client application.

Brief Description of the Drawings

The above and other characteristics and advantages of the invention will be better understood through the following illustrative and non-limitative detailed description of preferred embodiments thereof, with reference to the appended drawings, wherein:

Fig. 1 is a schematic drawing illustrating the user interface on a screen of a mobile phone allowing understanding of one's contacts statuses at a glance; and

Fig. 2 is a schematic drawing illustrating a context menu on a screen of a mobile phone. Detailed Description of the Invention

Prior to setting forth the detailed description, it may be helpful to set forth definitions of certain terms that will be used hereinafter.

Status Definitions

A status is any type of info it is desired to share about a user. It can describe a user location, activity, or any other information relevant and interesting about the user. A status definition includes a unique identifier, title and icon.

A status is only a template or type definition for status posts (live instances broadcasts of this status for a concrete user). They are required for allowing a consistent protocol to be established. If Status Definitions are classes, then Status Posts are instances of those classes.

Status Groups

Status groups are the mechanism used to help keeping the constantly growing number of status definitions in a modular and organized manner. By grouping status definitions together, it is possible to categorize and tag them by common attributes or meanings.

Examples for status groups:

All official status definitions are part of the same group. All status definitions regarding a user location can be made a group. All user activity (movement/travelling statuses) are part of a group. All weather status definitions are part of a group. Status groups is also a tool that helps the user to manage his privacy settings easily by setting rules that apply to entire groups of statuses instead of one by one, for example:

Users can enable/disable all location oriented status updates.

Users can choose to be notified only about official status updates (filters all custom status definitions).

Sub-Groups

Status groups can contain nested groups to support a more complicated modular structure. For Example:

Country status group - All status definitions that describe visiting foreign countries (other than the home country of a user) with flag icons, is a subgroup of location oriented status group, which is a subgroup of the official status definitions group.

Official Status Definitions

Aside from the ability offered to developers to register new status definitions, there is a group of status definitions that are officially maintained by the service. This group of definitions is meant to establish a protocol.

By declaring a set of official status definitions, a convention and a protocol are created, for other programs to be able to read and understand.

Example:

Home (location status) - has a registered constant ID (say "000001") - so clients can listen to status posts of this type of status. Clients can therefore issue notifications or other code upon this event. The invention proposes a new method of communication that is seamless and completely automated for the communicating parties (for example, it does not require any user input).

The system proposed by the present invention suggests that the essence of the content that is being communicated has never been available to the user before. For example, the ability to see which of your friends is at home? is a co-worker on his way to work (driving)? or being notified automatically when your children get home or leave school.

The proposed system provides the notion of personal location, relevant context of interest and common activities to help people share what they do in the rest 98% of their time, when they aren't visiting restaurants and coffee places - things that are already shared today. People spend most of day being at home, work, and school or on the go. The proposed system allows people to tag locations that are meaningful and personal to them and share that information with their friends when they are present in those locations.

In addition, the proposed system observes changes in user location over time to infer about the user's commuting activities (like driving, jogging, walking etc.) and allows sharing this interesting data, as well.

Another substantial difference from other existing services is the way icons are used to describe a status. Instead of presenting the user with a textual address or description of a place, an icon or multiple icons are shown (to describe several simultaneous activities and associated locations). A user can also decide not to disclose his accurate location coordinates to the public, yet everyone that see a "house" icon status on his profile will instantly know this user is at home. This method offers a much more relevant description of a location, while allowing keeping the user privacy at a higher level.

Another advantage is the definition of a broad spectrum of predefined statuses describing a user state in a more consistent way, unlike existing social networks (Facebook, Twitter), which let the user input freestyle text the same way. Each status has a unique meaning to it, and is given an icon representation to express this meaning. For example "Driving" status will use a car icon and "Home" status uses a house icon. In addition, each status may be represented by a binary value, such as Yes/No, "0" "l" ,etc.

The status definitions are not limited only to location. In fact plenty of relevant information types can be shared using this generic icons interface.

A user calendar busy time can be conveyed through a "busy" status icon. A user on the phone can show a "phone call" icon.

A user listening to his mp3 player activity can be translated into a "music" icon.

A user having a bad reception signal or low battery power on his device can show appropriate icons.

A user with a bad mood can put up a sad smiley icon.

A user that has a birthday will have a birthday cake slice icon. It is possible to allow many of those tagging abilities automatically. The proposed system will identify it and broadcast this status without any user intervention and the need for the user to manually trigger this status update.

A status is either up or down, meaning it ' s either true or not. at a specific point in time, and many can be true simultaneously. This architecture allows for a program to read these status flags and wait for special predefined future events of interest (e.g., mother is at home, John left school, jack just finished his work today, etc.). A user can easily instruct his mobile device to provide alerts of interest, such as: "Notify me when John's meeting ends" "Notify me when Lisa goes off the phone", "Notify me when my husband leaves work" "Notify me when my children gets home" etc.

The system proposed by the present invention provides minimalistic yet intuitive graphic user interface to convey a user overall status in a manner of a glimpse of an eye, as well as real time automatic sharing of users' status information, that has never been available to the user before.

Data mining is the process of extracting patterns from data. Data mining is becoming an increasingly important tool for transforming data into information. It is commonly used in a wide range of profiling practices. Anonymous location data collection from users can help discover new information that is valuable to other companies.

In marketing, geo-marketing is a discipline within marketing analysis which uses geo-location (geographic information) in the process of planning and implementation of marketing activities. It can be used in any aspect of the marketing mix - the Product, Price, Promotion, or Place (geo targeting). Market segments can also be correlated with location, and this can be useful in targeted marketing. GPS tracking and GSM localization can be used to obtain the actual position of the traveling customer.

Fig. 1 is a schematic drawing illustrating the user interface on a screen of a mobile phone allowing understanding of one's contacts statuses at a glance. In this interface, every contact on the user's contact list is represented with his/her profile picture and their name labeled below it (fl.a). Active status icons are attached or removed from the corners of each contact picture as they become relevant or no longer true (fl.b). This view displays real-time description of what the contacts are doing or where they are at this very moment. For example:

A house icon means the user is at home;

A building s icon means the user is at work;

A car icon means the user is driving or transported;

A phone icon means the user is currently talking on his phone;

A clock icon means the user is attending a meeting at the moment;

A battery icon means the user's mobile device battery is very low.

Fig. 2 is a schematic drawing illustrating a context menu on a screen of a mobile phone. Assuming a touch sensitive surface UI (such as touchscreen), the user can press on one of his contacts and view a context menu (f2.a). where the user can choose to be notified when a contact's status is changed (e.g. user gets home or leaves home-f2.b). The context menu offers the user an easy check box interface to enable/disable notifications about the contact's currently active statuses (f2.c). The user may select other status notifications from the list of all supported status updates (f2.d). Use Cases:

"Notify me when Eyal gets home";

"Shut down the music player when I leave home":

"Notify me when dad leaves work";

"Notify' me when my son gets on a train, so I can pick him up".

Status Posts

While a status is a general definition of a state, a Status Post is user oriented. When a user broadcasts a Status Post it means that this Status applies or is relevant about him/her. Status posts are used to announce a new location/activity/etc to contacts.

User State

The overall user state consists of one or more status posts that are active at the moment. Normally the user state includes one location status and additional activity/miscellaneous status posts. The proposed system employs a client application (installed in the user's mobile device and the mobile device of his contacts) for automatically extracting data about the current status of the user and the contacts.

Status Broadcasting

An authenticated client (an application which is installed on the user's mobile device) can update the server with a user status posts. A client can notify the server about one or several user statuses in one update. Every status declaration is committed with the necessary data attached to it, like status ID and related meta-data.

Location Status

Custom Locations

Users can build maps that are made of custom locations which are relevant to them. Each location is defined by a point (GPS coordinates) and a radius. Since some places are quite big (e.g., universities, or working places), the service use the radius information to get a better understanding of the place diameter. Most importantly, each location is tagged with a status definition that will be broadcasted when the user enters that location.

Users can define personal locations such as: Home, Work and School, however, they can also choose to tag coffee shops or cinemas (etc.) if they are not recognized automatically by the service.

Activity Status

User activities may be detected using a simple form of pattern recognition, such as:

Walking - 0 < speed < 13 mph Jogging - 13 < speed < 25 mph

Driving - speed > 25 mph AND on a road - (the user can choose his mam vehicle type transportation: car/motorcycle/public, an appropriate icon will be used).

In Traffic - Stuck on traffic Flying - speed > 400 mph Sailing - when on water

Tram - (notice there are stops...) - pattern recognition required, Etc.

By using a very simple client, it is possible to easily report activities of all sorts:

On the phone - show phone icon

Listening to music - (if mp3 player is open) (what are you listening to? add

Chatting - track running processes

Surfing the web (by monitoring processes and foreground windows) Playing games (by process) - what are you playing (by process) Sleeping - using motion sensors, after late hour, Etc. Social Status

When friends/family choose to share their exact location with each other, the service has enough data & permission to offer a very informative description of the social status by broadcasting the company the user is with at the moment. The service can discover contacts that are currently spending time at the same place together and in turn update their social status with a "Friends" status to signal to others they are with friends. Additionally, this status can include a specific description of who the user is with exactly:

Examples: "Eyal is at the mall with Michael" "Yaron is driving with Danny and Jon"

Location status: it is possible to tell when a user is at his friends house - "Tal is at Eliran's place"

Custom Status Ideas

Google Calendar integration event tags

#class

#meetmg

#military service ("reserve duty " )

#busy

#free

Birthday status all day long on birthdays. Mobile client

Low Battery - Show low battery icon (the user's friends and family will know why suddenly the user is not available, his battery ran out... as the status explains, no need to worry)

Client will raise that flag when battery is at 5%.

Status will be released when phone is plugged in and recharged again. Bad Reception signal - Show low reception icon (the user's contacts might prefer calling the user later, since the user has a bad reception signal in the user's area)

Mood Plug-in

Update the user's mood with emoticons (active for 3 hours, or for the rest of the day) happy, sad, depressed, surprised, amused I'm sick today Google Talk Plug-in online/offline/ away Weather plug-in

User ' s family/friends knows the weather in the user ' s location in a glance (maybe only when on vacation in foreign country) show even a temperature reading if desired

History Tracking

All user activity is logged in a database for future reference. This includes all status posts broadcasted throughout the day, every day. Later on, the user can view and search his status feed history at any point in time

Use Cases:

"Where was I shopping last week?" "Where did I park my car?" "What was my son doing today?"

"I can't find my phone / 1 think my phone is stolen"

"What was I doing last Monday?"

"When did I get off work yesterday?"

Also when user is walking/driving/joggmg/flying/sailing, it is possible to track his route point by point and attach it to the activity in retrospect.

Example Applications:

Other applications can integrate with this service to offer additional interesting applications.

Track daily jogging routes, monitor the user ' s improvement over time and beat personal records.

Find jogging buddies in the user's neighborhood Find car pools that might suit the user, etc. Event Notifications

Since all users' daily activities are now protocoled, a computer program can read it and perform actions when predefined special events. In turn, users can define special events that they wish to be notified about.

Use Cases

"notify me when John gets to work, I need to speak with him" "Notify me when my husband leaves work" "Notify me when my son gets on a tram, so I can pick him up" "Notify me when Marian's meeting ends, so I can call her" "Notify me when List gets off the phone" "Notify me when Yaron comes back from India"

While some embodiments of the invention have been described by way of illustration, it will be apparent that the invention can be carried out with many modifications, variations and adaptations, and with the use of numerous equivalents or alternative solutions that are within the scope of persons skilled in the art, without departing from the spirit of the invention or exceeding the scope of the claims.