Knowledge of a person's personal social relationships is extremely useful for many reasons. If one knows that they and a stranger have a common friend or colleague, they can approach this new person with significant common ground and a strong reference. One can also use the knowledge of another's social relationships to find particular sorts of expertise. For example, if a first user was looking for help with particular type of technical patent, they could look up similar sorts of patents, determine the inventors and then see if any of the inventors were either close to them, or close to someone to whom they were close.
How can one learn up to date information about a given user's personal relationships using online resources? Buddy lists, like those provided by Lotus Sametime allow a given user to author lists of those to whom they are close, even enabling a given user to categorize these contacts. No teachings are provided allowing others to see this data.
Searches for references to a given user, either as the author of papers or as the inventor of particular patents, enable one both to determine the given user's fields of expertise, and to learn others with whom the given user has collaborated an important form of relationship. Since the lists of collaborators generated in this way are formed automatically, rather than being created and updated by the given user, one cannot know whether or not the given user is or was really close to anyone listed; all one can say is they both appeared as authors on one or more documents. A buddy list does not guarantee this either, but is likely a better guideline to highly significant relationships.
Analysis of email and chat group usage is another means of trying to determine the user's personal relationships. Here too, one cannot be sure that the given user is actually close to a second user simply because they sent or received mail from them. For example, the user might constantly receive a flood of unwanted email (SPAM) from a particular source, a source to whom they are far from close. Further, since such usage analysis is done asynchronously, the relationships revealed are not necessarily current.
International publication number WO 01/050680 A3 describes a system and method that provides a single aggregated list of all of their personal contacts, source including personal desktop portal users, instant messaging users, e-mail addresses, and cell phones. No teachings are provided allowing others to inspect this aggregated list.
Services like Friendster (for details see http://www.friendster.com/info/moreinfo.jsp) provide online environments wherein given user can specify a particular set users to whom they are close. Since this involves an external service, the people that can be included in the given user's list are limited to other's who are also service participants. Even if all of those that were important to the given user were service participants, the users would have to constantly manually update the service's version of their relationship list to match that in their real life.
Thus, there remains a need for a system and method that allows a second user to retrieve and inspect a dynamically updated social relationship collection of a first user, where the data sources for this relationship collection are applications where inputs are made by the first user manually, but where the updates to the network-accessible version are made automatically.
An object of the present invention is to provide a method for allowing the sharing of social relationships collections including the step of creating a social relationship collection object for a first user that provides access to at least one individual with whom they have a social relationship and allowing a second user to retrieve the social relationship collection object. As a result of allowing the second user to retrieve the social relationship collection object, the second user inspects a reference contained in the first user's social relationship collection object.
Various other objects, features, and attendant advantages of the present invention will become more fully appreciated as the same becomes better understood when considered in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout the several views.
a shows an example of an augmented buddy list according an embodiment of the present invention.
b shows an example of a retrieved, augmented buddy list according an embodiment of the present invention.
c shows an example of a mediated, augmented buddy list according an embodiment of the present invention.
A detailed example of an embodiment of the current invention is given, describing how the current invention is used to allow a second user to retrieve and inspect the social relationship collection of a first user, this retrieval and inspection may be accomplished via a web browser communicating with a web-based (HTTP) social relationship collection server.
The social relationship collections of the associated users of C1, C2 and CN, 1010-1030 are also shown in
The server 1000 preferably includes a CPU 2000, a network interface 2010, a storage device 2020 such as a disk or DASD, and memory 2030, such as RAM. According to the present invention, the server logic 2035 (which will be discussed in more detail with reference to
The Server Relationship Collection Database 2070 can be any application providing access and persistent management of data, such as that sold by IBM under the trademark DB/2. Those with regular skill in the art will also appreciate that the Server Relationship Collection Database 2070 could be run on another remote network-connected node and accessed via the network 1040.
The Server Relationship Collection Handler 2060 manages all requests to create, modify and retrieve the social relationship collection images 10901110 it holds in the Server Relationship Collection Database 2070. In the preferred embodiment, all communication between this handler 2060 and clients is accomplished using HTTP (i.e., web-based) requests. There are two legal requests: Collection image updates, and Collection image retrievals.
Update requests include both a collection image and the associated user's ID. The handler 2060 first checks if there is an entry for the given ID in the database 2070, creating one if not. The handler 2060 then writes the given collection image into this entry, overwriting previous versions, if necessary. If successful, the handler 2060 return an HTML document to the requesting client indicating success.
Retrieval requests contain only the ID of the target user. The handler 2060, first checks with the database to ensure that there is an entry for the specified user ID, returning an error-indicating HTML document to the requesting client if not. Once found, the handler 2060 gets the relevant collection image from the database 2070. Then, using the collection's data, the handler 2060, builds an HTML document through which the user of the requesting client can inspect the collection.
One will appreciate a collection image request could also include the user ID of the requestor. With this data, the handler 2060 would be able to enforce access rights restrictions (e.g., “Only Bob, Jane and Terese can access my collection.”).
One will also appreciate that collection images can contain access rights specifications, specifications either the database 2070, or the handler 2060 can check before returning collection image data to anyone.
Examples of platforms that support the client 4000 include, but are not limited to, an IBM ThinkPad running Windows 95 and a web browser such as Microsoft's Internet Explorer. Clients can also include network-connectable mobile (i.e., portable) devices such as that sold under the trademark WorkPad by IBM, as well as smart cellular telephones (i.e., devices which can act as a cellular telephone as well as run network applications, like web browsers), like that sold under the trademark Nokia 90008 by Nokia.
As shown in
According to the present invention, the client logic 4050 (which will be discussed in more detail with reference to
The Client Relationship Collection Database 4080 can be any application providing access and persistent management of data, such as that sold by IBM under the trademark DB/2. Those with regular skill in the art will also appreciate that the Client Relationship Collection Database 4080 could be run on another remote network-connected node and accessed via the network 1040.
In each case, the Client Relationship Collection Handler 4070: Retrieves the necessary information from the given client 4000, Updates the given user's relationship collection (e.g., Collection 11050), stored in the Client Relationship Collection Database 4080, and then Updates the server 1000 image of the client's relationship collection (e.g., Collection 1 Image 1090) using an HTTP request, one containing both the user's ID and the new, updated relationship collection.
One will appreciate that in addition to actual relationship entries (e.g., references to particular individuals) a given user's relationship collection can contain instructions specifying the sources of the relationship data, as well as descriptions of how the data is to be retrieved. A given user, for example could specify that they want both the entries from their Sametime buddy list and from their personal Lotus Notes address book used as relationship data sources. Given this directive, any modification to either of the user's buddy list or address book would constitute a relationship modification and would have to be processed by the Client Relationship Collection Handler 4070.
One will also appreciate that a given user can also specify access rights in their relationship collection, rights that will enforced by the Server Relationship Collection Handler 2060. E.g., a user can specify that only requests with particular user IDs are allowed to retrieve their relationship collection. Similarly, a user can specify that particular user IDs are not allowed to retrieve their relationship collection.
One further will appreciate that a given user can segment their relationship collection, e.g., into work-related contacts and family-related contacts, and then provide separate access rights for each segment. E.g., only members of my department (specified via a set of user IDs) are allowed to retrieve my work-related social collection segment, while only family members are allowed to retrieve my family-related social collection segment.
After completion of the Client Relationship Collection Handler 4070 control resumes at step 5000.
If the input is not a relationship collection modification, then step 5020 checks whether it is the user making an HTTP request. If so, the HTTP Client 4060 is invoked, following which control continues at step 5000. One such HTTP-based request could be a request from the server 1000 by one user for another user's relationship collection image (e.g., 1110). Examples of the web pages retrieved by the client 4000 will be discussed in detail with references to
If the input is not an HTTP request, then a miscellaneous handler, beyond the scope of the current invention, is invoked in step 5030, following which control resumes at step 5000.
a,
6
b and 6c all depicts web pages (HTML documents) retrieved by a client's HTTP client 4060 from the server 1000. One with regular skill in the art will appreciate that other client server architectures are also applicable, including, but not limited to client and server applications using TCP sockets for communication (for details, see Douglas Comer, Internetworking with TCP/IP, Vol. 1 Principles, Protocols and Architecture. Prentice Hall, Englewood Cliffs, N.J., 1991).
a shows an example of a user's social relationship collection after it has been retrieved from the server 1000 and rendered by the client's HTTP Client 4060. As shown the web page 6000 includes a title 6010 indicating the ID of the associated user's ID, “Peter,” and two sections indicated by titles “Collaborators” 6020 and “Watching Peter” 6050. The first section 6020 contains two references “Jane” 6030 and “John.” 6040, as does the second section 6050: “Betty” 6060 and “Bob” 6070.
Three of the references 6030, 6040 and 6070 are in bold, while the fourth 6060 is in italics. Those with regular skill in the art and familiar with Sametime Buddy Lists will appreciate this is meant to indicate that while the users corresponding to 6030, 66040 and 6070 are currently active, the fourth user 6060, is not.
Unlike a standard Sametime buddy lists, three of the four references have social relationship collection icons 6080, 6090 and 6100 to their right. When one these icons is selected, the social relationship collection for the corresponding user is retrieved. Thus, if one selected 6080, the social relationship collection for Jane would be retrieved and displayed. This might be a useful way of getting a hold of a co-worker who you know is a close associate of one of your buddies, perhaps to serve as a surrogate for your buddy, or for other ends.
With reference to any privacy issues, users may have the option of making their relationship collection visible to all, to only those in their relationship collections, to only people in their workgroup, or to only those who have also made their relationship collections visible, etc.
Another alternative would be to allow people to designate whether a particular entry would be viewable by others. This could allow a person to designate others to go to for various sorts of help, e.g., “For help on Loops, contact Wendy” “For info about the Conference Call Proxy, contact Tracee”.
The
One might imagine various ways of extending this idea, by, for example, having a category of “those who have watched me in the last week,” and so on.
One way of lessening the impact of making watching explicit would be to provide a mechanism that allowed people to register their intent. Thus, we might imagine categories such as “It's useful to know when you're around,” or other categories such as “I'd like to have a short chat with you, at your convenience.” This is undoubtedly a cumbersome way of embodying this functionality, but despite that the idea of using IM to register interest in an interaction some time in the future (or even at a particular time in the future) could be worth exploring.
b shows the rendering 6200 of the social relationship collection retrieved when Jane's relationship collection icon 6080 is selected. As shown, the web page 6200 contains: A title 6210 indicating Jane as the owner of the collection; Two sections, “Current Project” 6220 and “Watching Jane” 6250, The first section 6220 containing a reference to “Yuki” 6230, The second section containing references to both “Peter” 6260 and “Bob” 6270; and The references to Yuki 6230, Peter 6260, and Bob 6270 having social relationship collection icons 6280, 6290 and 6300 associated with them, respectively.
Another response to the privacy concerns raised above is to replace the user IDs or those referenced with some sort of description: possible manually assigned by the collection owner, or automatically drawn from online sources, such as personal pages or organizational hierarchy charts.
As alternative approach, instead of surfing your buddies' social relationship collections, one could instead define search criterion and select which of your buddies to search.
If the event is not a collection modification, then it is checked in step 7060 to see if it is a collection request. If not, control continues at step 7010. If it is, then in step 7070 the requesting client's HTTP client 4060, send a request to the Server 1000. In step 7080, the server's 1000 Server Relationship Collection Handler 2060 retrieves the requested collection image and then returns in to the requesting client. Finally, in step 7090, the relevant client's 4000 HTTP Client 4060 renders the returned collection for the requesting user to inspect. Following this, control continues at step 7010.
The current invention also provides methods where a first organization could employ and support the social relationship collection surfing techniques just described to a second organization.
First, one with regular skill in the art will appreciate that a first organization could enable a member of a second organization to surf social relationship collections. This provision includes determining the number of users that would be using the service, configuring a server 1000, and then installing the server 1000. The second organization would also have to ensure that members of the second organization had the required clients 4000 to interact with the current invention, upgrading the existing hardware and software if necessary.
The first organization could also administer one or more aspects of the social relationship collection surfing infrastructure. This support could include ensuring that proper operation of the server 1000 and all operating clients 4000, even checking that both the server 1000 and the clients 4000 have sufficient resources for their Server Relationship Collection Database 2070 and the Server Relationship Collection Databases 4080, respectivelyA first organization could also train members of a second organization to use the social relationship collections surfing methods and system provided by the current invention. This training could include explanation of how to restrict access to ones social relationship collections, and how user can set up select the data sources that will be used to determine their relationship collection (e.g., Sametime buddy list and personal address book).
A first organization could also support a second organization's use of the user ID replacement technique described with reference to
It is to be understood that the provided illustrative examples are by no means exhaustive of the many possible uses for the invention.
From the foregoing description, one skilled in the art can easily ascertain the essential characteristics of this invention and, without departing from the spirit and scope thereof, can make various changes and modifications of the invention to adapt it to various usages and conditions.
It is to be understood that the present invention is not limited to the embodiments described above, but encompasses any and all embodiments within the scope of the following claims: