The present invention relates generally to computing software for managing display of content, and more particularly to a method and system for enabling a user to control a view of content recently posted by a related content publisher, and enabling the content publisher to control which co-users are able to view recently published content.
Many computing systems enable a user to control access to information through passwords, encryption keys, presence settings, and/or other methods. Some online systems enable a user to enter information about the user and enable the user to control whether, how, or which information is accessible to other users. For example, some online systems enable a user to enter a profile of information and establish a group of contacts. Such systems may enable only those contacts to access the profile information and/or detect whether the user is currently logged into an online service, such as a messaging service, a job placement service, or other topic-specific service. The set of contacts comprise a network of people who know a user well enough to provide their contact information. This is sometimes considered a single-level social network.
More broadly, a social network typically comprises a person's set of direct and indirect personal relationships. Direct personal relationships usually include relationships with family members, friends, colleagues, coworkers, and other people with which the person has had some form of direct contact, such as contact in person, by telephone, by email, by instant message, by letter, and the like. These direct personal relationships are sometimes referred to as first degree relationships. First degree relationships can have varying degrees of closeness, trust, and other characteristics. These relationships can also be unidirectional or bidirectional. A unidirectional relationship typically means that a first person is willing and able to interact with a second person, but the second person is not willing or able to interact with the first person. Conversely, a bidirectional relationship typically means that both people are willing and able to interact with each other.
Indirect personal relationships typically include relationships through first degree relationships to other people with whom a person has not had some form of direct contact. For example, a friend of a friend represents an indirect personal relationship. A more extended, indirect relationship might be a friend of a friend of a friend. These indirect relationships are sometimes characterized by a degree of separation between the people. For instance, a friend of a friend can be characterized as a second degree relationship.
Online social network services have developed based on specific topics, such as job placement and dating. These online social network services enable users to connect with each other if they did not previously know each other, but may share a common interest. After a connection is made, the users may view profile information about each other and/or send messages to each other, but there is little else for the users to do through the online network service. The users may be notified of new profile information posted by a connected co-user, but the user generally does not have any other control over which co-users from which to receive new information. Generally, the user also does not have control over which type of new information the user wishes to receive from co-users. Similarly, content publishers generally do not have control over which co-users are provided with new information. Generally, the content publisher also does not have control over which type of new information the content publisher wishes to publish to co-users.
Non-limiting and non-exhaustive embodiments of the present invention are described with reference to the following drawings. In the drawings, like reference numerals refer to like parts throughout the various figures unless otherwise specified.
For a better understanding of the present invention, reference will be made to the following Detailed Description of the Invention, which is to be read in association with the accompanying drawings, wherein:
The present invention now will be described more fully hereinafter with reference to the accompanying drawings, which form a part hereof, and which show, by way of illustration, specific exemplary embodiments by which the invention may be practiced. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Among other things, the present invention may be embodied as methods or devices. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. The following detailed description is, therefore, not to be taken in a limiting sense.
The terms “comprising,” “including,” “containing,” “having,” and “characterized by,” refer to an open-ended or inclusive transitional construct and does not exclude additional, unrecited elements, or method steps. For example, a combination that comprises A and B elements, also reads on a combination of A, B, and C elements. The meaning of “a,” “an,” and “the” include plural references. The meaning of “in” includes “in” and “on.” Additionally, a reference to the singular includes a reference to the plural unless otherwise stated or is inconsistent with the disclosure herein. The term “or” is an inclusive “or” operator, and includes the term “and/or,” unless the context clearly dictates otherwise. The phrase “in one embodiment,” as used herein does not necessarily refer to the same embodiment, although it may. Similarly, the phrase “in another embodiment,” as used herein does not necessarily refer to a different embodiment, although it may. The term “based on” is not exclusive and provides for being based on additional factors not described, unless the context clearly dictates otherwise. The term “user” can include a computer user, an online service subscriber, an online social network user and/or other person using an electronic device.
The term “social network” can include a group of people with which a user has direct and/or indirect relationships, as well as a service for communicating information to and/or from any of the people with which a user has direct and/or indirect relationships. However, an indirect relationship can also be through a shared interest, without any degree of personal relationship between intermediate people. For example, a set of complete strangers can comprise a social network on the basis of a common interest in a topic or an activity, such as fishing. Thus, the term social network includes a group of people associated by a common interest and/or a service for communicating information to and/or from any of the people with which a user has an interest relationship.
Embodiments of the present invention provide many capabilities to utilize social networks and/or other networks. Personal relationships and/or interest relationships can be utilized to find and develop relevant connections for a variety of activities, such as job networking, service referrals, dating, and the like. Finding and developing relevant connections can be accelerated with online services. However, simply establishing connections and sharing messages may not be sufficiently interesting for some users to keep participating in the network. To foster more vitality in a network environment, embodiments of the present invention enable users to share other information and/or activities, which may encourage regular participation. For example, users may share photos, web log (blog) entries, a list of recommended products or services, information about other users, information about groups to which users belong, and the like. The users may share information with co-users within or outside a closed social network service. Information may also be shared with and/or received from commercial services, such as really simple syndication (RSS) feeds. The users may also participate together in games, and/or other joint activities. When one user adds new information, other related users may be notified. However, embodiments of the present invention enable the other users to control the notifications by controlling relationships between users from which the other users receive notices and/or controlling types of information about which to receive notices. Similarly, embodiments of the present invention enable the publishing users to control the notifications and distribution of new information by controlling relationships between users to which notices and/or controlling types of information are provided.
For example, a user may wish to publish notices about new photos, new blog entries, and new reviews only to family members. The user may generally wish to send the notices and a summary of the new content that aggregates a variety of new content into a single page. However, the user may wish to send notices only about new blog entries and new reviews only to the user's closest non-family friends. Further, the user may wish to send notices only about new blog entries to certain co-workers. Embodiments of the present invention enable publishing users to control notices and viewing of information by other users, and generally to enhance experiences relating to an online social network and/or other networks.
Conversely, a receiving user may wish to receive notices about new photos, new blog entries, and new reviews posted by family members. The user may generally wish to receive the notices and a summary of the new content that aggregates a variety of content into a single page. However, the user may wish to receive notices only about new blog entries and new reviews posted by the user's closest non-family friends. Further, the user may wish to receive notices only about new blog entries by certain co-workers. Embodiments of the present invention enable users to control notices and viewing of information from other users, and generally to enhance experiences relating to an online social network and/or other networks.
Illustrative Operating Environment
As shown in the figure, system 100 includes client devices 102-104, network 105, an optional portal server 106, and a social network server (SNS) 108. Network 105 is in communication with and enables communication between each of client devices 102-104, portal server 106, and SNS 108.
Client devices 102-104 may include virtually any computing device capable of receiving and sending a message over a network, such as network 105, to and from another computing device, such as SNS 108, each other, and the like. The set of such devices may include devices that typically connect using a wired communications medium such as personal computers, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, and the like. The set of such devices may also include devices that typically connect using a wireless communications medium such as cell phones, smart phones, pagers, walkie talkies, radio frequency (RF) devices, infrared (IR) devices, CBs, integrated devices combining one or more of the preceding devices, or virtually any mobile device, and the like. Similarly, client devices 102-104 may be any device that is capable of connecting using a wired or wireless communication medium such as a PDA, POCKET PC, wearable computer, and any other device that is equipped to communicate over a wired and/or wireless communication medium.
Each client device within client devices 102-104 may include a browser application that is configured to send, receive, and display web pages, and the like. The browser application may be configured to receive and display graphics, text, multimedia, and the like, employing virtually any web based language, including, but not limited to Standard Generalized Markup Language (SMGL), such as HyperText Markup Language (HTML), extensible markup language (XML), a wireless application protocol (WAP), a Handheld Device Markup Language (HDML), such as Wireless Markup Language (WML), WMLScript, JavaScript, and the like.
Client devices 102-104 may be further configured to receive a message from another computing device employing another mechanism, including, but not limited to email, Short Message Service (SMS), Multimedia Message Service (MMS), instant messaging (IM), internet relay chat (IRC), mIRC, Jabber, and the like.
Client devices 102-104 may be further configured to enable a user to manage a user profile, degrees of relationships, categories of relationships, relationship ratings, activity participation, and the like, which may in turn be saved at a remote location, such as SNS 108, and the like. As such, client devices 102-104 may further include a client application that is configured to manage various actions on behalf of the client device. For example, the client application may enable a user to interact with the browser application, email application, and the like, to customize how another social network user might view a persona, profile, or the like associated with the user. For example, the user may employ the client application, in part, to provide one customized view for family members, another customized view for poker members, yet another view for fishing buddies, and the like. The client application may interact with a process such as described below to customize and manage such views, and enable a user to control which new information from other users will be displayed to the user.
Network 105 is configured to couple one computing device to another computing device to enable them to communicate. Network 105 is enabled to employ any form of computer readable media for communicating information from one electronic device to another. Also, network 105 may include a wireless interface, and/or a wired interface, such as the Internet, in addition to local area networks (LANs), wide area networks (WANs), direct connections, such as through a universal serial bus (USB) port, other forms of computer-readable media, or any combination thereof. On an interconnected set of LANs, including those based on differing architectures and protocols, a router acts as a link between LANs, enabling messages to be sent from one to another. Also, communication links within LANs typically include twisted wire pair or coaxial cable, while communication links between networks may utilize analog telephone lines, full or fractional dedicated digital lines including T1, T2, T3, and T4, Integrated Services Digital Networks (ISDNs), Digital Subscriber Lines (DSLs), wireless links including satellite links, or other communications links known to those skilled in the art. Furthermore, remote computers and other related electronic devices could be remotely connected to either LANs or WANs via a modem and temporary telephone link. In essence, network 105 includes any communication method by which information may travel between client devices 102-104, portal server 106, and/or SNS 108.
The media used to transmit information in communication links as described above illustrates one type of computer-readable media, namely communication media. Generally, computer-readable media includes any media that can be accessed by a computing device. Computer-readable media may include computer storage media, communication media, or any combination thereof.
Additionally, communication media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, data signal, or other transport mechanism and includes any information delivery media. The terms “modulated data signal,” and “carrier-wave signal” includes a signal that has one or more of its characteristics set or changed in such a manner as to encode information, instructions, data, and the like, in the signal. By way of example, communication media includes wired media such as twisted pair, coaxial cable, fiber optics, wave guides, and other wired media and wireless media such as acoustic, RF, infrared, and other wireless media.
Portal server 106 and SNS 108 may comprise multiple computing devices or a single computing device. Portal server 106 may provide online services such as messaging, search, news, shopping, advertising, and/or the like. SNS 108 may provide similar service and/or other services that also enable users to centralize the sharing of information and viewing of information regarding other users and themselves. For example, users may have a personal web site to share and view online journals (e.g., blogs), photos, reviews, and the like. For exemplary purposes, the operations of portal server 106 and SNS 108 are described together, and generally refer to SNS 108. Briefly, SNS 108 may include any computing device capable of connecting to network 105 and may manage customization of views associated with a social network user, such as a user of at least one of client devices 102-104. Devices that may operate as SNS 108 include dedicated servers, personal computers, desktop computers, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, and the like.
SNS 108 may be configured to send and/or receive information associated with a client user and to enable the user to customize a distribution and/or view based in part, on the information. The information may include, but is not limited to, relationship degree information, relationship category information, relationship rating information, membership information associated with a category, type of content information, device information, presence information, profile information, activity information, and the like.
SNS 108 may further employ the information to enable the user to customize a view associated with a social network perspective, based in part on a degree of relationship, relationship categorization, relationship rating, and/or other criteria. By sharing varying quantities of personal information with other social network users, the user may put forth different online profiles, public personas, and the like. The user may also determine how information about, published by, and/or from the user will be displayed to other users. The criteria employed to enable customization of the views may include, but is not limited to, degrees of separation, category of relationship (such as friend, family, colleague, and the like), as well as any assessment of closeness, trust, an offline group affiliation, an online group affiliation, and the like. SNS 108 may also enable the user to preview a view resulting from applying the criteria.
SNS 108 may also enable another social network user, such as a user of one of client devices 102-104, to view the customized view based on the criteria. SNS 108 may employ a web service, email service, and the like, to make the customized view available to the other social network user, as appropriate. SNS 108 may employ processes such as described in more detail below to manage the customized views, and enable asocial network user to control distribution and receipt of new information to and from other users of SNS 108. SNS 108 may be implemented on one or more computing devices, such as a server described with regard to
Illustrative Server Environment
Server 200 includes processing unit 212, video display adapter 214, and a mass memory, all in communication with each other via bus 222. The mass memory generally includes RAM 216, ROM 232, and one or more permanent mass storage devices, such as hard disk drive 228, tape drive, optical drive, and/or floppy disk drive. The mass memory stores operating system 220 for controlling the operation of server 102. Any general-purpose operating system may be employed. Basic input/output system (“BIOS”) 218 is also provided for controlling the low-level operation of server 200. As illustrated in
The mass memory as described above illustrates a type of computer-readable media, namely computer storage media. Computer storage media may include volatile, nonvolatile, removable, and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. Examples of computer storage media include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
The mass memory also stores program code and data. One or more applications 250 are loaded into mass memory and run on operating system 220. Examples of application programs include email programs, schedulers, calendars, web services, transcoders, database programs, word processing programs, spreadsheet programs, and so forth. Mass storage may also include applications such as a behavior tracker 252, which may track a user's online activities with the user's permission. Behavior tracker 252 may track the user's portal service behaviors (e.g., web searches, online purchases, etc.), the user's social network service behaviors (e.g., frequency of inviting others to join, frequency of posting blog entries, participation in particular social network activities, etc.), and/or other behaviors.
Mass storage may further include modules that are useful for managing a user's social network, such as a content manager 254, a permissions database 256, a vitality module 258, and an alert/presence module 259. Content manager 254 may include a database, text, folder, file, and the like, that is configured to maintain and store information that the user wishes to use and/or share with a social network. Content may include the user's profile information, online journals (e.g., blogs), reviews of products and/or services, photographs, and the like. The content may be entered by the user or obtained from other sources. The content may be used only with the social network or with other services, such as the portal service, data feed services, and the like. The content, and modules to control the content, may be centralized or distributed over a number of resources.
Permissions database 256 may be included with content manager 254 or provided as a separate entity. Permissions database 256 may enable the user to establish and store content access permission based on user relationships, types of content, and the like. User relationships may include relationship degrees (e.g., 1st, 2nd, 3rd, etc.), user-definable relationship categories (e.g., family, co-workers, fishing buddies, etc.), relationship ratings (e.g., closest, close, connected, acquainted, haven't met, etc.), and/or other forms of relationships.
Vitality module 258 may be included with permissions database 256 or provided as a separate entity. Vitality module 258 generally controls notifications about new information posted by users. Vitality module 258 enables a user to define which co-users from which the user wishes to receive notices of new information posted by the co-users, and which co-users to which the user wishes to receive notices of new information posted by the user. Vitality module 258 also enables a user to control which type of information about which the user wishes to receive or send notices. Accordingly, vitality module 258 checks new information and prepares notices to corresponding users.
Alert/Presence module 259 may be included with vitality module 258 or provided as a separate entity. Alert/Presence module 259 enables a user to control how information is to be delivered to the user. For example, the user may indicate that all notices and/or other communications should be sent as a SMS message to mobile devices. Vitality module 258 may confer with alert/presence module 259 before delivering a notice of new information posted by the user or by co-users.
Server 200 also includes input/output interface 224 for communicating with external devices, such as a mouse, keyboard, scanner, or other input devices not shown in
Illustrative Client User Interface
A user interface and operation of certain aspects of an embodiment of the present invention will now be described with respect to
Illustrative Architecture and Logic
Permission database 362 may also maintain associations between user relationships and the content of the updates. For example, publisher client 102a may specify that updates about some profile information may be accessed by other users with a second degree relationship (or closer) to publisher client 102a (e.g., a friend of a friend). Publisher client 102a may specify that other portions of profile information may be accessed only by other users with a first degree relationship. Either client may further specify a default level. These assignments may be stored in, or accessed by permissions database 362.
Permissions database 362 and vitality module 360 also communicate with a full content data store 364, which maintains the blogs, profile information, lists, and/or other content provided by the clients. Optionally, full content data store 364 and permissions database 362 may communicate with an intro content data store 366, which may store one or more subsets of content. The subsets of content may generally have the same permissions assigned as the corresponding full content. The subsets generally comprise introductory content such as the first twenty-five words of a blog entry, the first couple of items on a list, titles of reviews, thumb nail photos of friends, and/or other content that provides initial information about full content.
Vitality module 360 determines which content to accesses and provide as an update, based on the user relationship associated with the clients and the content. The vitality module also prepares the notice and/or updated content for delivery to receiver client 102b. To determine how to deliver the notice and/or updated content, vitality module 360 may communicate with an alert/presence system 368. The alert/presence system stores delivery preferences and/or presence settings that indicate a receiver client's current preferred mode of receiving information. Vitality module 360 may check for the delivery preferences and/or presences before delivering notices and/or updated content. Alternatively, the alert/presence system may actually deliver the notices and/or updated content. In another embodiment, substantially all of the relevant notices and/or updated content may be delivered to receiver client 102b, which may filter the notices and/or content for viewing based on the user relationship(s) selected by receiver client 102b. Similarly, the publisher client may specify the method in which content is to be delivered. Vitality module 360 may determine which receiver clients are capable of receiving the content as specified by the publisher client.
At an operation 382, the publishing user may utilize the user interface to specify which relationship degrees, relationship categories, and/or relationship ratings must be associated with an receiving co-user, for the updated content to be accessible to the receiving co-user. The publishing user may also select individual co-users at an operation 384 to which the publishing user wishes to allow access to updates. For example, the publishing user may wish to send updated content to the leader of a group, even if the publishing user does not have a first degree relationship with the leader. As discussed above, the leader may specify the level of relationship required of publishing users before the leader will accept such updates. At an operation 386, the publishing user may specify certain types of content that the publishing user wishes to make available. For example, the publishing user may only wish to send new product reviews to co-user with a close relationship assigned. The publishing user may further specify a desired method of deliver at an operation 388. This may be indicated as a delivery setting, which may affect other transmitted information such as email, instant messages, and the like. Alternatively, the delivery method may apply only to updates to co-users of the online social network.
At an operation 390, the server detects an instruction from the publishing user to updated a content posting. The updated content may be new content or revised content. The detection may occur substantially immediately after the publishing user issues the instruction or at a predefined time, such as during a batch process. At an operation 392, the server accesses the permissions database for the relationship, delivery, and other settings specified by the publishing user, as discussed above. The server identifies co-users that match the publishing user's settings. The matching may occur with every new posting, when a setting is changed, at predefined intervals, and/or at other times or events.
At an operation 394, the server generates a notice, summary, and/or other update content. The update content is formatted, truncated, summarized, and/or otherwise prepared for delivery to matched users for display and/or other presentation. At an operation 396, the server determines the publishing user's preferred delivery method (if one is specified), and delivers the notice and/or updated content to the matching users.
At an operation 402, the receiving user may utilize the user interface to specify which relationship degrees, relationship categories, and/or relationship ratings must be associated with an updating co-user, for the receiving user to accept an update from the updating co-user. The receiving user may also select individual co-users at an operation 404 from which the receiving user wishes to receive updates. For example, the receiving user may wish to receive updated content posted by the leader of a group, even if the receiving user does not have a first degree relationship with the leader. At an operation 406, the receiving user may specify certain types of content that the receiving user wishes to receive. For example, the receiving user may only wish to receive new product reviews from co-user with a close relationship assigned. The receiving user may further specify a desired method of deliver at an operation 408. This may be indicated as a presence setting, which may affect other incoming information such as email, instant messages, and the like. Alternatively, the delivery method may apply only to updates from co-users of the online social network.
At an operation 410, the server detects an updated content posting from a related co-user. The updated content may be new content or revised content. The detection may occur when the receiving user logs into the online service or while the receiving user is already logged in and updated content is posted. The detection may be given a range of time period, number of updates, and the like. For example, when the receiving user logs into the online social network service, the server may check for the last five updates over the past three months from each related co-user, according to the selections discussed above. Based on those selections, the server determines at a decision operation 412, whether the receiving user wishes to receive a particular update. The decision may depend on the type of content, the co-user making the update, the relationship to the receiving user, and/or other factors.
If the server determines that the receiving user wishes to receive the update, the server generates a notice, summary, and/or other update content at an operation 414. The update content is formatted, truncated, summarized, and/or otherwise prepared for delivery to the receiving user via the vitality section or vitality page displayed to the receiving user. At an operation 416, the server determines the receiving user's currently preferred delivery method, and delivers the notice and/or updated content to the receiving user. The notice and/or update preparation and delivery are not performed if the server determines that receiving user does not wish to receive the content from the publishing co-user.
The above specification, examples, and data provide a complete description of the manufacture and use of the composition of the invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.
This application claims the benefit of U.S. Utility application Ser. No. 10/832,172 filed on Apr. 26, 2004, the benefit of the earlier filing date of which is hereby claimed under 35 U.S.C. § 120 and which is further hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
60540505 | Jan 2004 | US | |
60544639 | Feb 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10832172 | Apr 2004 | US |
Child | 11392247 | Mar 2006 | US |