U.S. patent application number 13/453511 was filed with the patent office on 2012-08-16 for displaying aggregated new content by selected other user based on their authorization level.
Invention is credited to Ericson DeJesus, F. Randall Farmer, Mark Everett Hull, Ellen Sue Perelman, Neal Sample.
Application Number | 20120209914 13/453511 |
Document ID | / |
Family ID | 34831206 |
Filed Date | 2012-08-16 |
United States Patent
Application |
20120209914 |
Kind Code |
A1 |
Sample; Neal ; et
al. |
August 16, 2012 |
DISPLAYING AGGREGATED NEW CONTENT BY SELECTED OTHER USER BASED ON
THEIR AUTHORIZATION LEVEL
Abstract
Enabling a content publisher and a receiving user to control
access to content updates based on user relationships. The content
publisher and the receiving user may assign a relationship degree,
relationship category, and/or relationship rating to each other and
to other users. The content publisher and/or receiving user also
specify a required relationship that is needed to access or accept
a content update. The content publisher and receiving user may
further specify acceptable types of content updates, such as blog
entries, product reviews, photos, and the like that are accessible
or acceptable. Upon logon or other event, a summary of content
updates is provided to each receiving user that meets each content
publisher's required relationship, and the content updates are
delivered according to a selected delivery method from those
content publishers that meet the relationship requirements of the
receiving users. Delivery includes email, instant message, RSS
feeds, and the like.
Inventors: |
Sample; Neal; (Santa Cruz,
CA) ; Farmer; F. Randall; (Palo Alto, CA) ;
DeJesus; Ericson; (San Francisco, CA) ; Perelman;
Ellen Sue; (San Francisco, CA) ; Hull; Mark
Everett; (San Jose, CA) |
Family ID: |
34831206 |
Appl. No.: |
13/453511 |
Filed: |
April 23, 2012 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11392247 |
Mar 29, 2006 |
8166069 |
|
|
13453511 |
|
|
|
|
Current U.S.
Class: |
709/204 |
Current CPC
Class: |
Y10S 707/99933 20130101;
Y10S 707/99939 20130101; G06F 21/6218 20130101; H04L 67/306
20130101; Y10S 707/961 20130101; G06Q 50/01 20130101; G06Q 10/10
20130101; G06F 21/6227 20130101; H04L 51/32 20130101; Y10S
707/99945 20130101; Y10S 707/916 20130101; Y10S 707/959
20130101 |
Class at
Publication: |
709/204 |
International
Class: |
G06F 15/16 20060101
G06F015/16 |
Claims
1. A method for providing an electronic content update, comprising:
storing, via a computing device, a selected relationship between a
publishing user and a receiving user over a network, the network
comprising a service for communicating information to and/or from
users of the network which the users have an interest, the selected
relationship indicates a category of personal relationship between
the publishing user and the receiving user over the network, the
category of personal relationship comprising user-defined
relationship characteristics set by the publishing user and the
receiving user respectively; storing, via the computing device, a
required relationship between the publishing user and the receiving
user within the network, wherein the required relationship is
needed to make an electronic content update accessible to the
receiving user; detecting, via the computing device, an instruction
to make available the electronic content update, which is
associated with the publishing user, available to the receiving
user; and enabling, via the computing device, the receiving user to
access the electronic content update if the selected relationship
comprises the required relationship, said enabling comprises
determining whether the user-defined relationship characteristics
set by the publishing user and receiving user coincide with
information within the stored required relationship.
2. The method of claim 1, further comprising enabling the
publishing user to select the selected relationship and to specify
the required relationship.
3. The method of claim 1, further comprising assigning the required
relationship based on one of the following; a publishing user
setting; a receiving user setting; and a default setting.
4. The method of claim 1, wherein the required relationship
comprises at least one of the following: a degree of relationship
between the publishing user and the receiving user; and a rating of
the relationship between the publishing user and the receiving
user.
5. The method of claim 1, wherein the electronic content update
includes at least one of the following; profile information, a blog
entry, a review, a list, an image, information about a related
user; information about a group to which the publishing user
belongs, and a message.
6. The method of claim 1, wherein the electronic content update
comprises a content item created within a predefined period of
time.
7. The method of claim 1, further comprising: storing a content
type needed to make the electronic content update available to the
receiving user; and making the electronic content update available
to the receiving user if the electronic content update comprises
the content type.
8. The method of claim 1, wherein the instruction is detected at
one of the following: upon a command by the publishing user; at a
predetermined time; upon login of the receiving user; and upon
posting of the electronic content update.
9. The method of claim 1, further comprising generating a summary
of the electronic content update for display in a portion of a user
interface.
10. The method of claim 1, further comprising: detecting a selected
delivery method; and delivering the electronic content update
according to the selected delivery method for access by the
receiving user.
11. The method of claim 1, further comprising: identifying a
priority publishing user; and enabling the receiving user to access
the electronic content update if the publishing user is the
priority publishing user regardless of whether the selected
relationship comprises the required relationship.
12. A computer readable storage medium tangibly storing
computer-executable instructions that, when executed by a computing
device, cause the computing device to perform a method comprising:
storing a selected relationship between a publishing user and a
receiving user over a network, the network comprising a service for
communicating information to and/or from users of the network which
the users have an interest, the selected relationship indicates a
category of personal relationship between the publishing user and
the receiving user over the network, the category of personal
relationship comprising user-defined relationship characteristics
set by the publishing user and the receiving user respectively;
storing a required relationship between the publishing user and the
receiving user within the network, wherein the required
relationship is needed to make an electronic content update
accessible to the receiving user; detecting an instruction to make
the electronic content update, which is associated with the
publishing user, available to the receiving user; and enabling the
receiving user to access the electronic content update if the
selected relationship comprises the required relationship, said
enabling comprises determining whether the user-defined
relationship characteristics set by the publishing user and
receiving user coincide with information within the stored required
relationship.
13. A system comprising: a communication interface in communication
with a publishing user client and a receiving user client; a memory
for storing instructions; and a processor in communication with the
communication interface and with the memory, wherein the processor
performs actions based at least in part on the stored instructions,
including: storing a selected relationship between a publishing
user and a receiving user over a network, the network comprising a
service for communicating information to and/or from users of the
network which the users have an interest, the selected relationship
indicates a category of personal relationship between the
publishing user and the receiving user over the network, the
category of personal relationship comprising user-defined
relationship characteristics set by the publishing user and the
receiving user respectively; storing a required relationship
between the publishing user and the receiving user within the
network, wherein the required relationship is needed to make an
electronic content update accessible to the receiving user;
detecting an instruction to make the electronic content update,
which is associated with the publishing user available to the
receiving user; and enabling the receiving user to access the
electronic content update if the selected relationship comprises
the required relationship, said enabling comprises determining
whether the user-defined relationship characteristics set by the
publishing user and receiving user coincide with information within
the stored required relationship.
14. The system of claim 13, wherein the processor further performs
the action of enabling the publishing user to select the selected
relationship and to specify the required relationship.
15. The system of claim 13, wherein the required user relationship
comprises at least one of the following: a degree of relationship
between the receiving user client and the publishing user client;
and a rating of the relationship between the receiving user client
and the publishing user client.
16. The system of claim 13, further comprising: communicating with
a deliver system to determine a currently selected delivery method;
and delivering the electronic content update according to the
selected delivery method for access by the receiving user.
17. The system of claim 13, wherein the server provides an online
social network service.
18. A method comprising: providing, via a computing device, a
publisher user interface that enables a publishing user to
associate a publisher-selected relationship with a receiving user
within a network, the network comprising a service for
communicating information to and/or from users of the network which
the users have an interest, the publisher-selected relationship
comprising publisher-defined relationship characteristics
indicating a category of relationship between the publishing user
and the receiving user; enabling, via the computing device, the
publishing user to use the publisher user interface to specify a
publisher-required relationship needed to access the electronic
content; providing, via the computing device, a receiver user
interface that enables a receiving user to associate a
receiver-selected relationship with the publishing user within the
network, the receiver-selected relationship comprising
receiver-defined relationship characteristics indicating a category
of relationship between the receiving user and the publishing user;
enabling, via the computing device, the receiving user to use the
receiver user interface to specify a receiver-required user
relationship needed to access the electronic content enabling, via
the computing device, publishing user to provide an instruction to
make an electronic content update associated with the publishing
user available to the receiving user; and enabling, via the
computing device, the receiving user to access the electronic
content if the publisher-selected relationship comprises the
publisher-required user relationship and the receiver-selected
relationship comprises the receiver-required relationship, said
enabling comprises determining whether the publisher-defined
relationship characteristics and the receiving-defined relationship
characteristics facilitate the receiving user accessing the
electronic content update.
19. The method of claim 18, wherein the publisher-selected
relationship is based at least in part on a behavior of the
receiving user in interacting with an online service.
20. The method of claim 18, wherein the method is performed by a
mobile device.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] 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. .sctn.120 and which is further hereby incorporated by
reference.
FIELD OF ART
[0002] 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.
BACKGROUND
[0003] 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.
[0004] 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.
[0005] 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.
[0006] 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.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] 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.
[0008] 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:
[0009] FIG. 1 shows a functional block diagram illustrating one
embodiment of an environment for practicing the invention;
[0010] FIG. 2 shows one embodiment of a server device that may be
included in a system implementing the invention;
[0011] FIG. 3 shows a screen shot of a client user interface,
illustrating a sample settings page for a publishing user of blog
for an online social network service;
[0012] FIG. 4 shows a screen shot of a client user interface,
illustrating a sample home page with a vitality section for a
receiving user of an online social network service;
[0013] FIG. 5 illustrates an example software architecture for
controlling information updates between co-users;
[0014] FIG. 6 illustrates an example logical flow diagram generally
showing one embodiment of a process for controlling information
updates published to co-users; and
[0015] FIG. 7 illustrates an example logical flow diagram generally
showing one embodiment of a process for controlling information
updates received from co-users.
DETAILED DESCRIPTION OF EMBODIMENTS
[0016] 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.
[0017] 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.
[0018] 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.
[0019] 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.
[0020] 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.
[0021] 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
[0022] FIG. 1 illustrates one embodiment of an environment in which
the present invention may operate. However, not all of these
components may be required to practice the invention, and
variations in the arrangement and type of the components may be
made without departing from the spirit or scope of the
invention.
[0023] 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.
[0024] 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.
[0025] 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.
[0026] 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.
[0027] 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.
[0028] 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.
[0029] 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.
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] 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 FIG. 2.
Illustrative Server Environment
[0035] FIG. 2 shows one embodiment of a server, according to one
embodiment of the invention. Server 200 may include many more
components than those shown. The components shown, however, are
sufficient to disclose an illustrative embodiment for practicing
the invention.
[0036] 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 FIG. 2, server 200 also can communicate with the
Internet, or some other communications network, such as network 105
in FIG. 1, via network interface unit 210, which is constructed for
use with various communication protocols including the TCP/IP
protocol. Network interface unit 210 is sometimes known as a
transceiver, transceiving device, network interface card (NIC), and
the like.
[0037] 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.
[0038] 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.
[0039] 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.
[0040] 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.,
1.sup.st, 2.sup.nd, 3.sup.rd, 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.
[0041] 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.
[0042] 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.
[0043] 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 FIG. 2. Likewise,
server 200 may further include additional mass storage facilities
such as CD-ROM/DVD-ROM drive 226 and hard disk drive 228. Hard disk
drive 228 is utilized by server 200 to store, among other things,
application programs, databases, content manager 254, permissions
database 256, invitation IDs database 257, invitation module 258,
and the like.
Illustrative Client User Interface
[0044] A user interface and operation of certain aspects of an
embodiment of the present invention will now be described with
respect to FIGS. 3 and 4. FIG. 3 shows a screen shot of a client
user interface 300, illustrating a sample settings page for a
publishing user to control access to the user's blog for an online
social network service. Similar settings pages are available for
controlling access to the user's photos, written reviews, and the
like. As shown, a publishing user can control which group(s) of
co-users can access the publishing user's blog. A blog access
selection field 302 enables the publishing user to specify which
level of relationship is required for a co-user to see the
publishing user's blog. For example, the publishing user may
specify that all users of the public may view the publishing user's
blog. Alternatively, the publishing user may specify that only
user's with a first degree relationship with the publishing user
(e.g., friends) may access the publishing user's blog. Greater
degrees of relationship may be selected as alternative (e.g., only
friends of friends, only friends of friends of friends, only the
publishing user, etc.). The publishing user may also specify how
the blog is published or accessed. For example, the publishing user
may select an RSS feed box 304 to publish the blog as an RSS feed.
The publishing user may further specify a relationship level
required for a co-user to post a comment to the publishing user's
blog. A blog comment selection field 306 may provide the same or
different menu of relationship degrees as blog access field 302.
Other relationships may include categories of first degree
relationships, such co-workers, local neighbors, poker friends, and
the like. Similar settings pages, drop down menus, and/or other
selection or input fields can be used by a receiving user to
control which updates are received by the receiving user.
[0045] FIG. 4 shows a screen shot of a client user interface 320,
illustrating a sample home page for a user of an online social
network service. The user's home page generally acts as a central
point from which the user may access a variety of information
and/or services, such as email, instant messaging, blogs, photos,
and the like. The home page also includes a vitality section 322,
which displays the most recent posting of selected information from
related co-users. As discussed below, vitality section 322 includes
types of information selected by the user. The information is from
co-users that correspond to user relationship settings chosen by
the user. Additional and/or more detailed information about
postings from co-users may be provided on a separate vitality page
in addition to, or as an alternative to vitality section 322 on the
user's home page.
Illustrative Architecture And Logic
[0046] FIG. 5 illustrates an exemplary architecture that may be
used to enable a publisher client 102a and a receiver client 102b
to control receipt and distribution of content postings and/or
updates (either sometimes referred to as updates). Publisher client
102a and receiver client 102b may communicate through network 105
to a server 108a. In this sample architecture, the server includes
a vitality module 360 that generally manages notification of newly
published content and/or content updates. Vitality module 360
communicates with a permissions database 362 that may comprise an
access control list or other data store. Permission database 362
generally maintains associations between user relationships and
content. Registered clients, such as publisher client 102a and
receiver client 102b, may specify one or more user relationships
required to be associated with an update before the receiver client
is permitted access to the update and/or before the receiver client
will accept the update. For example, publisher client 102a may
specify that notices of updated content will be sent to other users
with a third degree relationship (or closer) to the publisher
client 102a (e.g., a friend of a friend of a friend). Similarly,
receiver client 102b may specify that notices of updated content
will be accepted from other users with a second degree relationship
(or closer) to the receiver client 102b (e.g., a friend of a
friend). Receiver client 102b may also specify that only blog
updates will be received from other users with the second degree
relationship.
[0047] 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.
[0048] 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.
[0049] 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.
[0050] FIG. 6 is a flow diagram illustrating exemplary logic of an
overall process that enables the publishing client to control
posting of updated content (and/or notices thereof). At an
operation 380, the publishing client user selects user
relationships for related co-users. Alternatively or in addition,
user relationships are determined by tracked behaviors. Often, the
related co-users to which the publishing user will want to send
updates, will have a greater degree relationship with the
publishing user (although the publishing user may wish to publish
certain updates only to co-users at smaller degree of
relationship). For desired co-users, the publishing user may
specify relationship categories, such as family, classmate, fishing
buddy, and the like. Similarly, the publishing user may assign a
relationship rating to co-users, such as closest, close, connected,
acquainted, and the like. The publishing user may use a client user
interface to specify the user relationships and communicate the
specified user relationships to the server for storage in the
permissions database.
[0051] 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.
[0052] 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.
[0053] 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.
[0054] FIG. 7 is a flow diagram illustrating exemplary logic of an
overall process that enables the receiver client to receive updated
content (and/or notices thereof). At an operation 400, the
receiving client user selects user relationships for related
co-users. Alternatively or in addition, user relationships are
determined by tracked behaviors. Generally, the related co-users
from which the receiving user will want to receive updates, will
have a first degree relationship with the receiving user (although
the receiving user may wish to also receive updates from co-users
at greater degrees of relationship). For desired co-users, the
receiving user may specify relationship categories, such as family,
classmate, fishing buddy, and the like. Similarly, the receiving
user may assign a relationship rating to co-users, such as closest,
close, connected, acquainted, and the like.
[0055] The receiving user may use a client user interface to
specify the user relationships and communicate the specified user
relationships to the server for storage in the permissions
database.
[0056] 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.
[0057] 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.
[0058] 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.
[0059] 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.
* * * * *