Register or Login To Download This Patent As A PDF
| United States Patent Application |
20090089855
|
| Kind Code
|
A1
|
|
St. John-Larkin; David Christopher
;   et al.
|
April 2, 2009
|
Systems and Methods for Communications Between Client Devices of a
Broadcast System
Abstract
Systems and methods may provide for communication between a plurality of
client devices of a broadcast system. The communication may be, for
example, a recommendation of a program that is communicated from one
subscriber to another subscriber or subscribers via their client devices.
The communication also may be a comment regarding a program, for example,
recently viewed at the client device of the one subscriber. In general,
the communication may be a message from one subscriber to another
subscriber or subscribers. Further, the communication may be configured
to perform a function on one or more other client devices. Such a
function may include, but is not limited to, setting a timer to record a
program, ordering or purchasing a program or service, cancelling an
ordered/purchased program or service, setting or altering user
preferences, controlling access to channels, etc.
| Inventors: |
St. John-Larkin; David Christopher; (Denver, CO)
; Kummer; David A.; (Highlands Ranch, CO)
; Card, II; John Anthony; (Denver, CO)
|
| Correspondence Address:
|
EchoStar Technologies, L.L.C.
c/o Dorsey & Whitney LLP, 370 Seventeenth St, Suite 4700
Denver
CO
80202
US
|
| Assignee: |
EchoStar Technologies
Englewood
CO
|
| Serial No.:
|
239210 |
| Series Code:
|
12
|
| Filed:
|
September 26, 2008 |
| Current U.S. Class: |
725/148 |
| Class at Publication: |
725/148 |
| International Class: |
H04N 7/16 20060101 H04N007/16 |
Claims
1. A method for communications between television receiver device of a
television broadcast system, the method comprising:initiating a
communication from a first television receiver device of a television
broadcast system;transmitting the communication to a second television
receiver device of the television broadcast system; andat least one
of:displaying a notification of the communication on a display device
associated with the second television receiver device;displaying the
communication on the display device associated with the second television
receiver device; andexecuting an operation with the second television
receiver device based on the communication.
2. The method of claim 1, wherein the operation executed with the second
television receiver device comprises setting a timer to record a program
on the second television receiver device.
3. The method of claim 1, wherein the operation executed with the second
television receiver device comprises ordering a program for viewing via
the second television receiver device.
4. The method of claim 1, wherein the operation executed with the second
television receiver device comprises altering a user preference for the
second television receiver device.
5. The method of claim 1, wherein the operation executed with the second
television receiver device comprises controlling access to channels by
the second television receiver device.
6. The method of claim 1, wherein the communication displayed on the
display device associated with the second television receiver device
comprises a request for permission to execute the operation, and wherein
the operation is executed when permission is granted by the second
television receiver device.
7. The method of claim 1, wherein the notification displayed on the
display device associated with the second television receiver device
comprises a request for permission to display the communication on the
display device associated with the second television receiver device, and
wherein the communication is displayed on the display device associated
with the second television receiver device when permission is granted by
the second television receiver device.
8. The method of claim 1, wherein transmitting the communication to a
television receiver client device comprises searching a list of
television receiver devices, determining which television receiver
devices accept the communication, and transmitting the communication to
the television receiver devices determined to accept the communication.
9. A system for communications between television receiver devices of a
television broadcast system, the method comprising:a first television
receiver device of a television broadcast system configured to initiate a
communication;a second television receiver device of the television
broadcast system configured to receive the communication;a transmission
system of the television broadcast system configured to transmit the
communication to the second television receiver device,wherein, in
response to receipt of the communication from the transmission system,
the second television receiver device is configured to at least one
of:display a notification of the communication on a display device
associated with the second television receiver device;display the
communication on the display device associated with the second television
receiver device; andexecute an operation with the second television
receiver device based on the communication.
10. The system of claim 9, wherein the transmission system is configured
to search a list of television receiver devices, determine which
television receiver devices accept the communication, and transmit the
communication to the television receiver devices determined to accept the
communication.
11. A method for communicating between multiple client devices of a
television broadcast system, the method comprising:initiating a
communication from a first client device configured to receive video
signals from a television broadcast system;transmitting the communication
to a second client device configured to receive video signals from the
television broadcast system;receiving the communication from the first
client device at the second client device;receiving at least one of the
video signals from the television broadcast system at the second client
device; andperforming at least one operation at the second client device
with respect to the at least one of the video signals based on the
communication.
12. The method of claim 11, wherein performing at least one operation
comprises displaying a notification of the communication along with the
received video signal on a display device associated with the second
client device.
13. The method of claim 12, wherein the notification displayed on the
display device associated with the second client device comprises a
request for permission to display the communication on the display device
associated with the second client device, and wherein the communication
is displayed on the display device associated with the second client
device when permission is granted by the second client device.
14. The method of claim 11, wherein performing at least one operation
comprises displaying the communication along with the received video
signal on a display device associated with the second client device.
15. The method of claim 14, wherein the communication displayed on the
display device associated with the second client device comprises a
request for permission to execute the operation, and wherein the
operation is performed when permission is granted by the second client
device.
16. The method of claim 11, wherein performing at least one operation
comprises setting a timer to record a program on the second client
device.
17. The method of claim 11, wherein performing at least one operation
comprises ordering a program for viewing via the second client device.
18. The method of claim 11, wherein performing at least one operation
comprises altering a user preference for the second client device.
19. The method of claim 11, wherein performing at least one operation
comprises controlling access to channels by the second client device.
20. The method of claim 11, wherein transmitting the communication to a
second client device comprises searching a list of client devices,
determining which client devices accept the communication, and
transmitting the communication to the client devices determined to accept
the communication.
Description
CROSS REFERENCE TO RELATED APPLICATION
[0001]The present application claims the benefit under 35 U.S.C. .sctn.
119(e) to U.S. Provisional Patent Application No. 60/975,694, which was
filed on Sep. 27, 2007, and entitled "Systems and Methods for
Communications Between Client Devices of a Broadcast System," which is
incorporated by reference into the present application in its entirety.
TECHNICAL FIELD
[0002]The inventive field relates generally to communication between
client devices, such as set top boxes (STB), satellite receivers, digital
video recorders (DVR) or similar devices. The inventive field also
relates to interconnecting a plurality of client devices, for example, by
defining communication protocols for communications between the client
devices.
BACKGROUND DISCUSSION
[0003]The proliferation of subscription television programming, the
increasing number of available channels, and the corresponding increase
in television programming have led to continued development of onscreen
program directories and guides. This has also lead to continued
development of other user interactive features, such as the ability to
set timers to record programs, the ability to set user preferences, for
example, for how information is displayed, and the ability to lock or
otherwise control access to channels.
[0004]Recent developments include the expansion of such features to
include remote task scheduling via the Internet. Such approaches
typically allow a subscriber of television services to interact with
their client device remotely via a website that provides various
functions to permit the subscriber to instruct their client device to
perform certain activities, such as setting a timer to record a program
or initiating recording based on an instruction scheduled through the
website. In general, such approaches aim to allow the subscriber to
perform various functions remotely that are conventionally performed by
the subscriber directly using the client device.
[0005]Conventional client devices are configured to receive programs and
program information from one or more sources, generally referred to as
the service provider or broadcast service. The programs and the program
information may be provided to the client device via one or more
communication channels. For example, in a cable broadcast system, the
programs and the program information may be provided to the client device
via a coaxial cable connected to an input of the client device. In a
satellite broadcast system, the programs and the program information may
be provided to the client device via a satellite dish that is connected
to an input of the client device via a coaxial cable. Alternatively or
additionally, the program information may be provided to the client
device via a telephone line connected to another input of the client
device. The connection to the telephone line may also provide a
communication channel for feedback to the service provider, for example,
regarding programs viewed via the client device, and/or for allowing pay
programs to be ordered or purchased using the client device.
SUMMARY
[0006]Conventional client devices are not configured to communicate or
otherwise interact with other client devices of a broadcast system. The
only communications provided by the client devices are with the service
provider. Such communication or interaction between client devices of a
broadcast system may be beneficial. For example, communications between
client devices may increase user satisfaction and/or enjoyment of
broadcast services, in a manner other than by increasing the available
program content. Thus, there is a need to provide systems and methods for
establishing communications between client devices of a broadcast system.
[0007]Various embodiments relate to systems and methods that provide
communication between a plurality of client devices of a broadcast
system. The communication may be, for example, a recommendation of a
program that is communicated from one subscriber to another subscriber or
subscribers via their client devices. The communication also may be a
comment regarding a program, for example, recently viewed at the client
device of the one subscriber. In general, the communication may be a
message from one subscriber to another subscriber or subscribers, or any
sort of shared content.
[0008]Some embodiments may involve a communication initiated by one client
device that is configured to perform a function on one or more other
client devices. Such a function may include, but is not limited to,
setting a timer to record a program, ordering or purchasing a program or
service, cancelling an ordered/purchased program or service, setting or
altering user preferences, controlling access to channels, etc.
[0009]For example, some embodiments may involve a communication from one
client device that sets a timer to record a program on one or more other
client devices. The communication may be in the form of a request for
permission to set the timer. The one or more other client devices may be
preset to provide permission for the one client device to set timers, or
user interaction may be required at the one or more other client devices
to provide permission for the one client device to set timers. The preset
permission may have any of various restrictions, such as, non-overwriting
of recorded content, free disk space requirements, etc.
[0010]Various embodiments relate to systems and methods that provide
communication protocols for communication between a plurality of client
devices of a broadcast system. The communication protocols may facilitate
and/or regulate communications between the client devices. For example,
each client device may be set by a user to allow communications from
other client devices or from a specified client device and/or to allow
only certain types of communications from other client devices or from a
specified client device. Additionally or alternatively, each client
device may be set by a user to allow communications from other client
devices or from a specified client device either conditionally or
unconditionally.
[0011]The communication protocols may involve a user registering his
client device for a particular service. For example, the user may
subscribe or otherwise belong to a specified group or groups of client
devices. Each group may be, for example, related to a specific interest,
such as a particular program series, a particular program type, theme or
genre, a particular actor, director or producer, a particular channel,
etc. Alternatively or additionally, each group may be structured to grant
permission(s) to the user of a client device belonging to the group, for
example, to establish certain types of communications with other client
devices of the group.
[0012]The communication protocols may involve searching a list of users of
client devices. For example, a user of a client device may initiate a
communication to other client devices of the broadcast system. The
communication protocol may search the list of users for client devices
that accept, either conditionally or unconditionally, such a
communication. For the client devices that unconditionally accept such a
communication, the communication protocol may provide the communication
to the client devices. For the client devices that conditionally accept
such a communication, the communication protocol may provide a
notification of the proposed communication to the client devices, thus
allowing the client devices to accept or reject the proposed
communication.
[0013]By using various embodiments, communications and/or communication
protocols for communications between client devices of a broadcast system
may enhance the functionality and/or user interactivity of the client
devices.
BRIEF DESCRIPTION OF THE DRAWINGS
[0014]Various details of the present invention may be better understood on
reading the following detailed description of non-limiting embodiments,
and on examining the accompanying drawings, in which:
[0015]FIG. 1 is a simplified block diagram illustrating components of an
example of a broadcast satellite television system;
[0016]FIG. 2 is a simplified block diagram illustrating a system for
providing communication between client devices of a broadcast system; and
[0017]FIG. 3 is a flowchart illustrating an example of operations
associated with a communication protocol for a communication from one
client device to one or more other client devices of a broadcast system.
DETAILED DESCRIPTION OF EMBODIMENTS
[0018]As used herein, the term "client device" is intended to encompass a
device that is configured to receive programs and program information
from a broadcast source (e.g., satellite, cable, Internet, etc.) and to
display the programs and the program information on a display device,
such as a television or a monitor. Although not restricted to a
particular implementation, the term "client device" is intended to
encompass set top boxes, satellite receivers, digital video recorders,
and the like. The client devices described herein may be considered to be
embodied in software and/or hardware that facilitate the reception and
display of programs and program information from a broadcast source.
[0019]The embodiments shown in the Figures illustrate systems and methods
that may allow client devices of a broadcast system to communicate with
each other. The illustrated systems and methods provide examples of how
communication between a plurality of client devices of a broadcast system
may be implemented. However, it should be understood that other
implementations are possible and contemplated. Also, it should be
understood that reference herein to a communication from one client
device to another client device, or from a first client device to a
second client device, may equally apply to a communication from one
client device to a plurality of other client devices.
[0020]Communications between client devices may be desirable for many
reasons. For example, a user of a client device may wish to communicate
with a user of another client device regarding a program provided to the
client devices by the broadcast source of the broadcast system. The users
of the client devices may be, for example, subscribers of the broadcast
system. The user of the client device may wish to communicate via the
client devices as the communication relates to use of the client devices.
Thus, the user of the client device may conveniently communicate using
the client device while in the mode of operating the client device.
[0021]For example, the user of a first client device may be viewing a
program schedule and wish to communicate something about a program listed
on the schedule. Also, the user of the first client device may be viewing
or have just finished viewing a program and wish to communicate something
about that program. As the user of the first client device is currently
using the first client device, the first client device may provide a more
convenient way of communicating to the user of a second client device
than, for example, calling the user by telephone. Further, by
communicating via the client devices, the user of the second client
device need not be available, for example, to answer the telephone or to
retrieve a telephone message. Rather, the user of the second client
device may receive or retrieve the communication when operating the
second client device, thus being provided with the communication when the
communication is particularly relevant and/or convenient to the user of
the second client device.
[0022]The communication from one client device to another client device of
the broadcast system may be any desired communication from the user. In
particular, it is contemplated that the communication may comprise
information, such as a recommendation, a suggestion, a comment or other
message, and/or may comprise instructions for a client device to perform
a function or operation. Various functions or operations that may be
performed by the client device(s) in response to receiving a
communication may include, but are not limited to, setting a timer to
record a program, ordering or purchasing a program or service, cancelling
an ordered/purchased program or service, setting or altering user
preferences, controlling access to channels, etc. In general, any
function or operation that may be performed by a client device may be
instructed by the communication.
[0023]For example, a communication from a first client device may be
configured to set a timer to record a program on a second client device.
The communication may require permission from the second client device to
set the timer. Thus, the communication may be in the form of a request
for permission to set the timer. The user of the second client device may
input a command to the second client device indicating whether or not he
grants permission for the timer to be set. In other words, the user of
the second client device may be allowed to accept or reject the
communication.
[0024]Alternatively, the user of the second client device may preset the
second client device to provide permission for the first client device to
set timers. For example, if the user of the second client device trusts
the particular user or otherwise wishes the particular user to have
access to set timers on the second client device, the second client
device may be set to recognize the first client device as authorized to
set timers. Such preset or authorization may be unconditional, but also
may be conditional, for example, allowing the first client device to set
a limited number of timers, to set timers to a limited selection of
channels, to set timers based on an amount of storage space currently
available for the recording on the second client device or based on a
preset limit of storage space allotted to recordings of programs by
timers set by the first client device.
[0025]As noted above, the function or operation that may be instructed by
the communication may be any function or operation that may be performed
by a client device. Thus, some embodiments may involve a communication
that results in a similar or an identical behavior by the second client
device as if the second client device had received the instruction(s)
locally, for example, via a handheld remote control or a control panel of
the second client device. As such, a technician may use the first client
device to troubleshoot and/or correct problems that the second client
device may experience. In particular, some embodiments may involve a
communication that results in a display by the second client device that
is controlled in response to the communication from the first client
device. As such, the user of the second client device may assist the
technician, as appropriate or desired. Also, the communication from the
first client device may provide the user of the second client device with
a tutorial for a particular function or operation, such as setting a
timer to record a program, setting a user preference, navigating menus,
etc.
[0026]Allowing a user of a first client device to perform a function or
operation on a second client device may conveniently set up or operate
the second client device. For example, the first client device may be
installed in the same or a different household than the second client
device. When in the same household, the communication may allow the user
to interact with the second client device via the first client device,
and vice versa. Thus, the user need not interact with the first and
second client devices separately, but may individually or collectively
set up or operate both client devices from one location. This may be
particularly convenient, for example, to allow the user to set different
timers for the different client devices without having to go to the
location of each client device. Similarly, when in different households,
the first client device may be used to remotely set up or operate the
second client device. This may be particularly convenient, for example,
to allow the user to control the second client device without having to
go to the other household.
[0027]It should be understood that suitable communication protocols for
communication between a plurality of client devices of a broadcast system
are also contemplated. In general, the communication protocols may
facilitate and/or regulate communications between the client devices. For
example, each client device may be set by a user to allow communications
from other client devices or from a specified client device and/or to
allow only certain types of communications from other client devices or
from a specified client device. Additionally or alternatively, each
client device may be set by a user to allow communications from other
client devices or from a specified client device either conditionally or
unconditionally.
[0028]Communications between the client devices may be restricted and/or
routed according to suitable communication protocols. For example, the
communication protocols may involve a user registering his client device
for a particular service. The service may associate the particular client
device with a "mailing list" or "group" of client devices also registered
with the service. Thus, a communication may be identified or otherwise
intended to be received by subscribers to the service, such that the
particular client device and all other client devices registered with the
service may receive the communication.
[0029]As an example, a user may register a particular client device with a
movie information service. The service may then provide communications
that provide information, such as reviews, recommendations, release
dates, etc., and/or that are configured to set timers to record movies
scheduled to be broadcast by the broadcasts system.
[0030]As another example, the user may subscribe or otherwise belong to a
specified group or groups of client devices. Each group may be, for
example, related to a specific interest, such as a particular program
series, a particular program type, theme or genre, a particular actor,
director or producer, a particular channel, etc. Each group may thus
facilitate communications between users of client devices with common
interests.
[0031]As a member of a group, each client device may be allowed to
communicate with the client devices of other members of the group, for
example, by having the client devices of members of the group set or
otherwise configured to accept communications from the client devices of
other members of the group. Alternatively or additionally, each client
device may be configured to communicate with the client devices of the
group members without having to specify each member's client device. It
should be understood that any structure or hierarchy within the group may
be established, as appropriate or desired. For example, selected members
may be granted different permission(s) to communicate with the other
members, for example, based on a type of communication to be provided.
[0032]With or without the use of groups including client devices, the
communication protocols may involve searching a list of users of client
devices. The search may be based on, for example, the user preferences
and/or profiles set on the client devices. The user preferences of a
client device may be set, for example, not to receive communications, to
receive communications only of a certain type (e.g., information,
function or operation, etc.), to receive communications only from a
particular client device(s), and/or to require user interaction to accept
all communications, communications of a certain type and/or
communications from a particular client device(s). The user profile of a
client device may set, for example, particular topics of communications
that the client device is to receive to meet the user's interests.
[0033]It should be understood that various implementations are possible.
For example, satellite, cable, internet or other broadcasting
technologies may be suitable. Thus, while the following description
provides an example in the context of a satellite broadcast system, it
should be understood that such description is not limiting.
[0034]The block diagrams shown in FIGS. 1 and 2 and the flowchart shown in
FIG. 3 are for illustration only and are not intended to represent the
only possible process flows and system configurations. In particular, it
should be understood that operations may be added, omitted and reordered
as may be suitable to a particular application. Also, individual
components may be added, omitted, replaced and interrelated as may be
suitable to a particular application. All details appurtenant to
implementing the exemplary systems and methods that are well understood
in the art are omitted for simplicity and clarity.
[0035]FIG. 1 is a simplified block diagram illustrating components of an
example of a broadcast satellite television system that may be used to
implement various features described herein. In particular, FIG. 1
generally illustrates a client device 100 as part of a satellite
broadcast system. In this example, a broadcast service 170 provides
programs and program information, via one or more satellites 160, to the
client device 100. The client device 100 may include suitable circuitry,
other hardware and/or software to receive a signal(s) from the
satellite(s) 160, such as a satellite dish or antenna (not shown).
[0036]The signal(s) from the satellite(s) 160 may carry multiple channels
of programs, program information (such as electronic programming guide
data), and/or other information, such as conditional access data. The
signal(s) from the satellite(s) 160 received at the client device 100 may
be processed such that the data and/or the channels may be viewed on a
display device 150, such as a television set or monitor.
[0037]The client device 100 may include a tuner unit 102, which may
comprise a tuner, a demodulator, and any other device or circuitry for
selecting channels and modifying the data format for processing and/or
displaying on the display device 150. The client device 100 may also
include a processor 104 for controlling various operations of the client
device 100 and/or the other components thereof.
[0038]The client device 100 may also include a storage device 110, which
may have a program and/or associated data stored thereon, in addition or
alternatively to such program and/or data rendered on the display device
150.
[0039]The storage device 110 may also be used to store program guide data
112. The program guide data 112 may be included in the broadcast of the
satellite(s) 160, but may also be received through another connection
106, for example, a dial-up connection through a network such as the
public telephone network or the internet. The storage device 110 may also
be used to store a user profile or user preferences, usually specific to
the client device 100.
[0040]Program guide data 112 typically includes information about the
programs and channels being broadcast by the satellite 160, and may
include, but is not limited to, program start times, program end times,
program durations, program ratings, program reviews, program
descriptions, program titles, program show dates, and the like. The
program guide data 112 may also serve as a schedule for programs that
will be broadcast in the future.
[0041]Regardless of the particular implementation of the client device 100
and/or the broadcasts system in general, a system for providing
communication between client devices of a broadcast system is
contemplated. FIG. 2 is a simplified block diagram illustrating an
example of such a system 10 for providing communication between client
devices of a broadcast system 20. The broadcast system 20 may generally
include a broadcast service 200, such as a cable or satellite system, and
a plurality of client devices 100.sub.1, 100.sub.2, . . . 100.sub.N that
are configured to receive programs and program information from the
broadcast service 200 and to provide data for display on a respective
display device (not shown).
[0042]Each of the client devices 100.sub.1, 100.sub.2, . . . 100.sub.N may
also be interconnected via a network 300 that allows the client devices
100.sub.1, 100.sub.2, . . . 100.sub.N to communicate with one another.
The network 300 may be any suitable network, either wired or wireless,
such as the public telephone network or the internet, or any other
network known or hereafter developed, that allows communication between
the client devices 100.sub.1, 100.sub.2, . . . , 100.sub.N.
[0043]For example, the client devices 100.sub.1, 100.sub.2, . . .
100.sub.N may each include a connection port or interface that links the
client devices 100.sub.1, 100.sub.2, . . . 100.sub.N to the network 300.
By providing a separate communication link via the network 300, the
system 10 may avoid any interference with normal broadcast operations of
the broadcast system 20. However, a two-way satellite system may allow
communications between the client devices 100.sub.1, 100.sub.2, . . .
100.sub.N as well. Such a two-way satellite system may either emulate an
arbitrary "network" (e.g., DSL, etc.) for a "backchannel", or may provide
specific capabilities that only enable device-to-device communication.
Such a network may be entirely contained within (implemented by) on a
home DBS distribution system (e.g., coaxial wiring), may employ an
existing home network (e.g., powerline, Ethernet, wireless 802.11, etc.),
may use telephony or cell phone systems, or may implement an arbitrary
protocol over a different media (e.g., powerline point-to-point,
wireless, etc.).
[0044]In general, four scenarios may be envisioned. The primary network of
the broadcast service may provide client device-to-client device
communications directly to client devices. A second communication network
(e.g., backchannel) may provide client device-to-client device
communications. A first client device may use such a second communication
network to transmit the communication to the broadcast service, and the
broadcast service may transmit the communication to a second client
device via its primary network or broadcast channel, for example, using
an ID of the second client device. The first client device may use the
second communication network to transmit the communication to the
broadcast service, and the broadcast service may transmit the
communication to the second client device via the second network. In some
embodiments, an existing "back-channel" of known client devices may be
used.
[0045]As should be understood from FIG. 2, various communications, such as
those discussed above, between the client devices 100.sub.1, 100.sub.2, .
. . 100.sub.N may be carried out using the illustrative system 10. Such
communications may allow client devices 100.sub.1, 100.sub.2, . . .
100.sub.N to share any desired data or information, such as settings,
streamed content, downloaded content files, user presence, user
interaction, user intent, etc.
[0046]As an example, FIG. 3 shows a flowchart illustrating a method for a
communication from one client device to one or more other client devices
of a broadcast system. It should be understood that various other methods
and/or communication protocols may be implemented, as appropriate or
desired, based on the desired communications between client devices.
Thus, it should be understood that the details discussed above with
respect to the communications contemplated between client devices are
sufficient to be implemented in appropriate methods and/or communication
protocols other than that illustrated in FIG. 3.
[0047]Operation may begin at S100, and continue to S102, where a
communication may be initiated from a client device. Once the
communication is initiated from the client device, operation may continue
to S104, where a determination may be made as to whether a recipient for
the communication is identified. The recipient(s) may be one or more
other client devices, and may be identified in any suitable manner. For
example, client devices may be identified individually by a unique
identifier or code. Alternatively or additionally, client devices may be
identified collectively a members of a mailing list or group. Such
groupings may be defined by the system, for example, for users of the
client devices to join. However, this is not to exclude the possibility
of user defined groups, including, but not limited to, personal mailing
lists, such as contacts that may be stored locally on a client device.
[0048]If the intended recipient for the communication is identified,
operation may continue to S106, where a determination may be made as to
whether the intended recipient(s) is/are configured to receive
communications from the client device. As discussed above, each client
device may be configured or set to allow communications from particular
client devices or groups of client devices. If the communication to the
intended recipient(s) is allowed, operation may continue to S108, where a
determination may be made as to whether the intended recipient(s) is/are
configured to receive the particular type of communication, either
generally or from the particular client device. As such, it should be
understood that the operations at S106 and S108 may be reordered,
combined, or otherwise modified, as appropriate or desired, to evaluate
whether a particular communication may be received by a client device.
[0049]If at S106 or at S108, the determination is that the communication
may not be received by the intended recipient(s), then operation may
optionally continue to S110, where the client device that initiated the
communication may be notified that the communication was not delivered.
Alternatively or additionally, the client device may be provided with
additional information, such as the identity of the intended recipient(s)
to which the communication was not delivered and/or the reason(s) for
non-delivery. Operation may then end at S112.
[0050]Returning to S104, if the intended recipient for the communication
is not identified, operation may continue to S116, where a search of a
list of client devices may be made. For example, as discussed above, the
search may be directed to identifying client devices to which the
communication may be of interest. In particular, the search may include a
list of groups of client devices. As also discussed above, the search may
be based on user preferences and/or user profiles associated with the
client devices. If no client devices are identified by the search, then,
although not illustrated, operation may continue to notify the client
device that initiated the communication and then end.
[0051]Also, although not illustrated, it should be understood that the
search performed at S116 may include an evaluation or evaluations similar
to that of S106 and/or S108. Thus, the operations of notification and
ending may similarly result from S116.
[0052]Assuming that at least one client device is identified as a
permitted recipient for the communication at S116, or if the
communication is determined to be permitted (i.e., the intended
recipient(s) is/are determined to be configured to receive the
communication from the client device) at S106 and S108, then operation
may continue to S114, where a determination may be made as to whether the
permission for receiving the communication is conditional. If the
permission is conditional, operation may continue to S120, where the
intended recipient(s) may be notified of the communication. For example,
each intended recipient (client device) may display a message to the user
or otherwise provide an option to the user to accept or reject the
proposed communication. Thus, the permission may be generally conditional
and require user interaction for the communication to proceed.
[0053]It should be understood that specific conditions may be imposed on
the intended communication for a given client device. Such other
conditions are generally unlimited, and may be any useful criteria for
determining whether a communication should be accepted or rejected. It
should also be understood that specific conditions may also require user
interaction for the communication to proceed, but may involve an
automatic acceptance if the condition is satisfied. In such case, the
operation at S120 may be omitted.
[0054]Regardless of the need for user interaction, operation may continue
to S122, where a determination may be made as to whether the proposed
communication is accepted, for example, by a user input or by an
automatic operation. If not accepted, then operation may optionally
continue to S124, where the client device that initiated the
communication may be notified that the communication was not accepted.
Operation may then end at S126.
[0055]If the permission is determined not to be conditional at S114, or if
the condition is determined to be satisfied so that the communication is
accepted at S122, then operation may continue to S118, where the
communication may be delivered to one or more of the intended client
device(s). Once the communication is delivered, operation may end at
S128.
[0056]Although not illustrated, it should be understood that various forms
of delivery may be implemented, such as an audible and/or visual
notification on the display device of the client device receiving the
communication, an overlay of the message on a current display of the
display device, storage of the message at the client device for later
retrieval by the user, etc. In particular, the nature of the delivery of
the communication may be configured to suit the particular user of the
client device, for example, via user preferences set for the client
device.
[0057]Further, although not shown for the sake of clarity and simplicity,
it should be understood that other features described above may be
incorporated in the method. Accordingly, the method shown in the
flowchart of FIG. 3 should be understood as being illustrative only and
not limiting.
[0058]Although various details have been described herein with reference
to particular embodiments, it is to be understood that these embodiments
are merely illustrative of principles and applications. It is therefore
to be understood that numerous modifications may be made to the
illustrative embodiments and that other arrangements may be devised
without departing from the spirit and scope of this disclosure.
* * * * *