System and method of delivering notifications

The present disclosure is directed to a system and method of delivering notifications. The method can include receiving a communication at a server within an Internet Protocol Television (IPTV) network, where the communication is directed to a destination device outside of the IPTV network. The method can also include identifying the destination device and associating the destination device with a set-top box device. The method can also include transmitting a notification of the communication to the set-top box device via a private data network within the IPTV network.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to delivering notifications.

BACKGROUND

Television viewing is part of daily life. Many individuals prefer not be interrupted while watching television, but they may desire to monitor telephone calls and other forms of communication, for example, in case of an emergency or to avoid reviewing a large number of new messages at a future time. Nonetheless, the integration of communications with television viewing is uncommon. Technical compatibilities pose challenges when integrating conventional telephone and television networks, in addition to data networks, such as the Internet or wireless networks.

Systems that allow a user to access a store of messages from a television do not provide notifications of communications as they occur. They also typically require that the user interrupt television programming. Moreover, these systems provide, at most, message header information, such as a source or time of a message. This header information does not allow a user to monitor the actual content recorded by a sender of the message. Thus, users often cannot accurately assess—based on the limited header information—whether they should interrupt their television viewing to answer a call or make contact with a party who has left a voice or e-mal message.

DETAILED DESCRIPTION OF THE DRAWINGS

A set-top box within an IPTV system is disclosed and can include a processor and a memory accessible to the processor. A computer program can be embedded in the memory and can contain instructions to receive a notification of a communication to a destination device outside of the IPTV system, where the notification is received at the set-top box device via a private network within the IPTV network.

In another embodiment, a method of delivering notifications is disclosed. The method can include receiving a communication at a server within an Internet Protocol Television (IPTV) network, where the communication is directed to a destination device outside of the IPTV network. The method can also include identifying the destination device and associating the destination device with a set-top box device. The method can also include transmitting a notification of the communication to the set-top box device via a private data network within the IPTV network.

In another embodiment, a method of receiving notifications is disclosed and includes receiving a notification at a set-top box device via a private data network within an Internet Protocol Television (IPTV) network, where the notification is associated with a communication to a destination device outside of the IPTV network.

Referring toFIG. 1, an IPTV system is shown and is generally designated100. As shown, the system100can include a client facing tier102, an application tier104, an acquisition tier106, and an operations and management tier108. Each tier102,104,106,108is coupled to a private network110, a public network112, or both the private network110and the public network112. For example, the client-facing tier102can be coupled to the private network110. Further, the application tier104can be coupled to the private network110and to the public network112, such as the Internet, a public switched telephone network (PSTN), a plain old telephone service (POTS) network, or an Internet Protocol (IP) phone network. The acquisition tier106can also be coupled to the private network110and to the public network112. Moreover, the operations and management tier108can be coupled to the public network112.

As shown inFIG. 1, the various tiers102,104,106,108communicate with each other via the private network110and the public network112. For instance, the client-facing tier102can communicate with the application tier104and the acquisition tier106via the private network110. The application tier104can also communicate with the acquisition tier106via the private network110. Further, the application tier104can communicate with the acquisition tier106and the operations and management tier108via the public network112. Moreover, the acquisition tier106can communicate with the operations and management tier108via the public network112. In a particular embodiment, elements of the application tier104can communicate directly with the client-facing tier102.

As illustrated inFIG. 1, the client-facing tier102can communicate with user equipment via a private access network166, such as an Internet Protocol Television (IPTV) network. In an illustrative embodiment, modems, such as a first modem114and a second modem122can be coupled to the private access network166. The client-facing tier102can communicate with a first representative set-top box device116via the first modem114and with a second representative set-top box device124via the second modem122. The client-facing tier102can communicate with a large number of set-top boxes, such as the representative set-top boxes116,124, over a wide geographic area, such as a regional area, a metropolitan area, a viewing area, or any other suitable geographic area that can be supported by networking the client-facing tier102to numerous set-top box devices.

In one embodiment, the client-facing tier102can be coupled to the modems114,122via fiber optic cables. Alternatively, the modems114and122can be digital subscriber line (DSL) modems that are coupled to one or more network nodes via twisted pairs, and the client-facing tier102can be coupled to the network nodes via fiber-optic cables. Each set-top box device116,124can process data received via the private access network166, via an IPTV software platform, such as Microsoft® TV IPTV Edition.

Additionally, the first set-top box device116can be coupled to a first display device118, such as a first television monitor, and the second set-top box device124can be coupled to a second display device126, such as a second television monitor. Moreover, the first set-top box device116can communicate with a first remote control120, and the second set-top box device can communicate with a second remote control128.

In an exemplary, non-limiting embodiment, each set-top box device116,124can receive data or video from the client-facing tier102via the private access network166and render or display the data or video at the display device118,126to which it is coupled. In an illustrative embodiment, the set-top box devices116,124can include tuners, such as the tuner184shown inFIG. 1, that receive and decode television programming information for transmission to the display devices118,126. Further, the set-top box devices116,124can include a STB processor178and a STB memory device180that is accessible to the STB processor178. In a particular embodiment, the set-top box devices116,124can also communicate commands received from the remote control devices120,128back to the client-facing tier102via the private access network166.

In an illustrative embodiment, the client-facing tier102can include a client-facing tier (CFT) switch130that manages communication between the client-facing tier102and the private access network166and between the client-facing tier102and the private network110. As shown, the CFT switch130is coupled to one or more data servers132that store data transmitted in response to user requests, such as video-on-demand material. The CFT switch130can also be coupled to a terminal server134that provides terminal devices, such as a game application server168and other devices with a common connection point to the private network110. In a particular embodiment, the CFT switch130can also be coupled to a video-on-demand (VOD) server136.

As shown inFIG. 1, the application tier104can communicate with both the private network110and the public network112. In this embodiment, the application tier104can include a first application tier (APP) switch138and a second APP switch140. In a particular embodiment, the first APP switch138can be coupled to the second APP switch140. The first APP switch138can be coupled to an application server142and to an OSS/BSS gateway144. The application server142provides applications to the set-top box devices116,124via the private access network166, so the set-top box devices116,124can provide functions, such as display, messaging, processing of IPTV data and VOD material, etc. In a particular embodiment, the OSS/BSS gateway144includes operation systems and support (OSS) data, as well as billing systems and support (BSS) data.

Further, the second APP switch140can be coupled to a domain controller146that provides web access or e-mail messaging, for example, to users via the public network112. The second APP switch140can be coupled to a subscriber and system store148that includes account information, for example, account information that is associated with users who access the system100via the private network110or the public network112. In a particular embodiment, the application tier104can also include a client gateway150that communicates data directly to the client-facing tier102. In this embodiment, the client gateway150can be coupled directly to the CFT switch130. The client gateway150can provide user access to the private network110and the tiers coupled thereto.

In a particular embodiment, the set-top box devices116,124can access the system via the private access network166, using information received from the client gateway150. The private access network166provides security for the private network110. User devices can access the client gateway150via the private access network166, and the client gateway150can allow such devices to access the private network110once the devices are authenticated or verified. Similarly, the client gateway150can prevent unauthorized devices, such as hacker computers or stolen set-top box devices from accessing the private network110, by denying access to these devices beyond the private access network166.

For example, when a set-top box device116accesses the system100via the private access network166, the client gateway150can verify subscriber information by communicating with the subscriber and system store148via the private network110, the first APP switch138and the second APP switch140. Further, the client gateway150can verify billing information and status by communicating with the OSS/BSS gateway144via the private network110and the first APP switch138. The OSS/BSS gateway144can transmit a query across the first APP switch138, to the second APP switch140, and the second APP switch140can communicate the query across the public network112to the OSS/BSS server164. After the client gateway150confirms subscriber and/or billing information, the client gateway150can allow the set-top box device116access to IPTV content and VOD content. If the client gateway150cannot verify subscriber information for the set-top box device116, e.g., because it is connected to a different twisted pair, the client gateway150can deny transmissions to and from the set-top box device116beyond the private access network166.

Additionally, the second APP switch140can be coupled to a communication server190. The communication server190includes a processor192and a memory portion194accessible to the processor192. The communication server190also includes a computer program embedded in the memory device194. In a particular embodiment, the communication server190receives calls from caller phones186and transmits the calls to user phones184via the public network112. Further, the call server190can receive voice mail messages via the public network112. The communication server190can store the voice mail messages after associating them with user accounts, or the communication server190can transmit the voice mail messages to the subscriber and system store148for storage. In a particular embodiment, the communication server190also generates notifications of calls and voice mails and transmits the notifications to set-top box devices116,124over the private access network166.

In an illustrative embodiment, the communication server190can receive messages from the domain controller146, set-top boxes116,124, and other components of the system100. In a particular embodiment, the communication server190generates messages, such as wireless access protocol (WAP) messages, and transmits the messages to cellular phones180via the data network176.

Additionally, the communication server190can communicate via the public network112with one or more user personal computers (PCs)168and sender PCs188. The communication server190can receive e-mail messages from sender PCs188via the public network112and transmit the messages or notifications of the messages to user PCs168or set-top box devices116,124.

As indicated inFIG. 1, the acquisition tier106includes an acquisition tier (AQT) switch152that communicates with the private network110. The AQT switch152can also communicate with the operations and management tier108via the public network112. In a particular embodiment, the AQT switch152can be coupled to a live acquisition server154that receives television content, for example, from a broadcast service156. Further, the AQT switch can be coupled to a video-on-demand importer server158that stores television content received at the acquisition tier106and communicate the stored content to the client-facing tier102via the private network110.

FIG. 1further illustrates that the operations and management tier108can include an operations and management tier (OMT) switch160that conducts communication between the operations and management tier108and the public network112. In the embodiment illustrated byFIG. 1, the OMT switch160is coupled to a TV2 server162. Additionally, the OMT switch160can be coupled to an OSS/BSS server164and to a simple network management protocol (SNMP) monitor166that monitors network devices. In a particular embodiment, the OMT switch160can communicate with the AQT switch152via the public network112.

In a particular embodiment during operation of the IPTV system, the live acquisition server154can acquire television content from the broadcast service156. The live acquisition server154can transmit the television content to the AQT switch152, in turn, and the AQT switch152can transmit the television content to the CFT switch130via the private network110. Further, the television content can be encoded at the D-servers132, and the CFT switch130can communicate the television content to the modems114,122via the private access network166. The set-top box devices116,124can receive the television content from the modems114,122, decode the television content, and transmit the content to the display devices118,126according to commands from the remote control devices120,128.

Additionally, at the acquisition tier106, the video-on-demand (VOD) importer server158can receive content from one or more VOD sources outside the IPTV system100, such as movie studios and programmers of non-live content. The VOD importer server158can transmit the VOD content to the AQT switch152, and the AQT switch152, in turn, can communicate the material to the CFT switch130via the private network110. The VOD content can be stored at one or more servers, such as the VOD server136.

When a user issues a request for VOD content to a set-top box device116,124, the request can be transmitted over the private access network166to the VOD server136, via the CFT switch130. Upon receiving such a request, the VOD server136can retrieve requested VOD content and transmit the content to the set-top box device116,124across the private access network166, via the CFT switch130.

In a particular embodiment, the computer program196embedded within the communication server190can include instructions to receive a call from the caller phone186via the public network112. The computer program196can include instructions to receive caller identification (caller ID) information with the call. Additionally, the computer program196can include instructions to identify the destination device of the call, for example, by querying the subscriber and system store148for account information corresponding to the destination telephone number. Further, the computer program196can include instructions to associate the user phone184with a set-top box device116,124, by querying the subscriber and system store148for account information corresponding to the telephone number of the user phone184.

Additionally, the computer program196can include instructions to generate a notification relating to the call and transmit the notification to the user's set-top box device116,124via the private access network166. The computer program196can also include instructions to the notification of transmit a copy of the notification to the subscriber and system store148for storage via the user's account.

In an illustrative embodiment, the computer program196can include instructions to receive a voice mail from the caller phone186via the public network112, if the call is not answered. Further, the computer program196can include instructions to generate a notification of the voice mail and to transmit the notification to the set-top box device116,124via the private access network166. In a particular embodiment, the computer program196can include instructions to receive a request for the voice mail message from the user phone184or a set-top box device116,124and to transmit the voice mail message to the device from which the request is issued. In one embodiment, the computer program196can include instructions to transmit an audio file containing the voice mail message to the set-top box device116,124. Alternatively, the computer program196can include instructions to convert the message to a text message and transmit the text message to a set-top box device116,124. In a particular embodiment, the computer program196can include instructions to store the voice mail and/or the related notification or to transmit the voice mail and/or notification to the subscriber and system store148for storage.

Call notifications and voice mail notifications can include any information suitable for notifying the user that a telephone call is being or has been issued to the user. For example, the notification can include the caller's name, the caller's telephone number, the caller's address, the destination telephone number, any portion of caller identification information received at the communication server190, a telephone call symbol, a telephone call audio tone, a voice mail symbol, a voice mail audio tone, a date of a call, a time of a call, a date of a voice mail message, a time of a voice mail message or any combination of these.

In another embodiment, the computer program196can include instructions to receive an e-mail message from the sender PC188via the public network112. The computer program196can include instructions to identify the destination device of the e-mail, for example, by querying the subscriber and system store148for account information corresponding to the destination e-mail address. Further, the computer program196can include instructions to associate the user PC168with a set-top box device116,124, by querying the subscriber and system store148for account information corresponding to the e-mail address of the user phone184.

Further, the computer program196can include instructions to generate a notification of the e-mail and to transmit the notification to the set-top box device116,124via the private access network166. In a particular embodiment, the computer program196can include instructions to receive a request for the e-mail message from the user PC168or a set-top box device116,124and to transmit the e-mail message to the device from which the request is issued. In a particular embodiment, the computer program196can include instructions to store the voice mail and/or the related notification or to transmit the voice mail and/or notification to the subscriber and system store148for storage.

The e-mail notification can include any information suitable for notifying the user that an e-mail message has been transmitted to the user. For example, the notification can include the sender's name, the sender's e-mail address, a subject of the e-mail message, thumbnail images of any picture attachments, a portion of the e-mail message text, an e-mail symbol, an e-mail audio tone, or any combination of these.

In an additional embodiment, the computer program196can include instructions to receive messages from set-top box devices116,124via the private access network166. The computer program196can include instructions to store the messages or transmit the messages to the subscriber and system store148for storage. Additionally, the computer program196can include instructions to use information in a message and information associated with a set-top box device116,124that sends the message (such as an IP address of the set-top box device, data associated with one or more twisted pairs or fiber optic cables coupled to the set-top box device, or an identifier of the set-top box device) to identify a destination device for the message. Moreover, the computer program196can include instructions to transmit the message over the data network176to the cell phone180via the wireless access point178.

For example, if the communication server190receives a message regarding the status of a digital video recorder (DVR) within the set-top box device116, in conjunction with a user-selected destination named ‘my cell phone,’ the communication server190can query the subscriber and information store148for account information associated with the set-top box device116. The account information can associate the set-top box device116, for example, with the cell phone180. The message server192can transmit the DVR status message over the data network176to the cell phone180via the wireless access point178. In an illustrative embodiment, the status can be sent via a wireless access protocol (WAP).

In a particular embodiment, a set-top box device, such as the second set-top box device124, can include a processor170and a memory device172that is accessible to the processor170. The set-top box device124also includes a computer program174that is embedded within the memory device172. In a particular embodiment, the computer program174can contain instructions to receive notifications of phone calls, e-mail messages, and voice mail messages from the IPTV system100via the private access network166.

In a particular embodiment, the computer program174can include instructions to receive a notification of a communication to a destination device outside of the IPTV system, such as the user phone184or the user PC168. Further, the computer program174can include instructions to store the notification. Additionally, the computer program174can include instructions to transmit the notification to a display device126.

In an illustrative embodiment, the computer program174can include instructions to transmit a menu of at least one stored message and/or notification to the television monitor126. For example, a user can request a menu of stored messages and notifications by issuing a command from a remote control device128to the second set-top box device124. The computer program174can include instructions to receive a selection of a stored message or notification via the menu and to transmit the selected stored message or notification to the display device126. When messages and notifications are stored at the second set-top box device124, they are retrieved from the memory device172. When messages are not stored at the second set-top box device124, computer program174can include instructions to receive menu constituents and selected messages and notifications from the call server190, the domain controller146, and/or the subscriber and system store148.

In an illustrative embodiment, the computer program174can include instructions to communicate a message from the set-top box device124that communicates with the IPTV system100to a communication device outside the IPTV system100, such as the cellular phone180. For example, the computer program174can include instructions to monitor the digital video recorder (DVR)182within the set-top box device124. The computer program174can include instructions to communicate a message to the cellular phone180via the IPTV system100, when the DVR182reaches a certain status, such as having started or finished recording a specific program.

Referring toFIG. 2, a method of delivering notifications is shown. At block200, a server within an Internet Protocol Television (IPTV) system receives a communication from a source device. A communication can include, for example, a phone call, an e-mail message, or a voice mail message, that is issued from a source device outside the IPTV system to a destination device outside of the IPTV system. In a particular embodiment, the communication can be received at the server via a public network, such as the Internet, a public switched telephone network (PSTN), a plain old telephone service (POTS) network, or an Internet Protocol (IP) phone network. In another embodiment, the communication can be a message intended for a destination device outside the IPTV system received from a set-top box device that communicates with the server via the IPTV system.

Proceeding to decision step202, the type of communication received is determined at the server. If it is determined that the communication is an e-mail message, the method continues to block204, and the e-mail message can be stored in a memory portion at the server or at a device coupled to the server. Moving to block206, the destination of the e-mail message is determined at the server. For example, the destination can be an e-mail address or IP address corresponding to a user computer outside of the IPTV system. Continuing to block208, the server associates the destination with a set-top box device. In an illustrative embodiment, the server can communicate with an information store, such as the subscriber and system store shown inFIG. 1, that contains user account information associating various set-top box devices with various destinations. For instance, the information store can relate data associated with destination devices, such as an IP address of a user computer with data relating to the set-top box device, such as an IP address of the set-top box device, data associated with one or more twisted pairs connected with the set-top box device, data associated with one or more fiber optic cables coupled to the set-top box device, an alphanumeric identifier of the set-top box device, any other data that is suitable for associating a set-top box device with a user account, or any combination of these.

Moving to block210, a notification of the e-mail message is transmitted from the server to the set-top box device via a private network within the IPTV system. In a particular embodiment, the notification can be transmitted from the set-top box device to a display device, such as a television monitor. The notification can include any information suitable for notifying the user that an e-mail message has been transmitted to the user. For example, the notification can include the sender's name, the sender's e-mail address, a subject of the e-mail message, thumbnail images of any picture attachments, a portion of the e-mail message text, an e-mail symbol, an e-mail audio tone, or any combination of these. One example of an e-mail message notification is disclosed with reference toFIG. 5.

Continuing to decision step212, a selection to receive the full text of the e-mail message can be received at the server from the set-top box device. In an illustrative embodiment, a user can issue a command to the set-top box device via a remote control to display the text of the e-mail message, and the command can be transmitted to the server. If the server receives a command to transmit the text of the e-mail message, the method proceeds to block214, and the message is transmitted to the set-top box device for display to the user. If such a command is not received at the server, the method may continue to decision step244.

Returning to decision step202, if the communication received at the server is a telephone call, the method proceeds to block216, and the destination is identified at the server. For example, the destination can be a telephone number corresponding to a user phone outside of the IPTV system. Continuing to block218, the server associates the destination with a set-top box device. In an illustrative embodiment, the server can communicate with an information store, such as the subscriber and system store shown inFIG. 1, that relates the telephone number of a user phone, with data relating to the user's set-top box device.

Moving to block220, a notification of the telephone call is transmitted from the server to the set-top box device via a private network within the IPTV system. In a particular embodiment, the notification can be transmitted from the set-top box device to a display device, such as a television monitor. The notification can include any information suitable for notifying the user that a telephone call is being issued to the user. For example, the notification can include the caller's name, the caller's telephone number, the destination telephone number, any portion of caller identification information received at the server, a telephone call symbol, a telephone call audio tone, or any combination of these. One example of a telephone call notification is disclosed with reference toFIG. 4.

At decision step222, the server can determine whether the telephone call is answered. If the call is answered, the method proceeds to decision step244and continues as described. If the call is not answered, the method moves to decision step224, and it can be determined whether the caller has left a voice mail at the server. If a voice mail is not received at the server, the method moves to decision step244and continues as described. Conversely, when a voice mail is left at the server, the method moves to block226, and the voice mail is stored in a memory portion at the server or at a device to which the server is coupled.

Continuing to block228, the server transmits a notification of the voice mail to the set-top box device. The notification can include any information suitable for notifying the user that a voice mail has been left for the user. For example, the notification can include the caller's name, the caller's telephone number, any portion of caller identification information received at the server, a voice mail symbol, a voice mail audio tone, or any combination of these.

At decision step230, a selection to receive the voice mail message is received at the server from the set-top box device via the private network within the IPTV system. In an illustrative embodiment, a user can issue a command to the set-top box device via a remote control to broadcast the voice mail message, and the command can be transmitted to the server. If the server does not receive a command to transmit the voice mail message, the method continues to decision step244. If the server receives a command to transmit the voice mail message, the method proceeds to decision step232, and it is determined whether a command to convert the voice mail to text is received at the server. When a command to convert the voice mail to text is received, the server can convert the audio voice mail message to a text message at block234. The method then moves to block236, and the text message is transmitted to the set-top box device via the private network within the IPTV system. The method can then proceed to decision step244. One example of the text of a voice mail message is disclosed with reference toFIG. 7.

Returning to decision step232, if a command to convert the voice mail message to text is not received, the method continues to block238, and the server transmits the audio voice mail message to the set-top box device via the private network within the IPTV system. In a particular embodiment, the audio message can be transmitted to a display device and broadcast through speakers coupled to the display device. Alternatively, the audio message can be broadcast through speakers coupled to the set-top box device. The method can then proceed to decision step244.

Returning to decision step202, it can be determined that the server has received a communication from a set-top box device. For example, the server can receive a message regarding the status of a program or of a digital video recorder within the set-top box device. In a particular embodiment, if the server determines that a set-top box communication has been received, the method can move to block240, and the server can generate a message, such as a wireless access protocol (WAP) message that can be transmitted to a wireless device via a wireless network. In this embodiment, the WAP message can be transmitted to the wireless network at block242. The method can then proceed to decision step244.

Proceeding to decision step244, the server can determine whether a request for a menu of messages has been received. For instance, a user can issue a command to the set-top box device via a remote control requesting a menu of messages from a previous time period, and the set-top box can transmit the request to the server. If no menu has been requested, the method ends at state254. On the other hand, if a request is received at the server, a menu of stored messages is generated at block246. The menu can include, for example, data relating to all telephone calls, voice mail messages, and e-mail messages received in the last three days, received from a particular party, and the like. The server transmits the menu to the set-top box device at block248. One example of a menu is disclosed with reference toFIG. 6.

Continuing to decision step250, the server can determine whether a message from the menu is requested. For example, a user can select a message by issuing a command to the set-top box device, and the selection can be transmitted to the server. If no message is selected, the method ends at state254. Conversely, if a selection of a message is received at the server, the server can retrieve the message from its memory portion and transmit the message to the set-top box device at block252. The method ends at state254.

Referring toFIG. 3, a method of receiving notifications is shown. At block300, a notification of a communication if received at a set-top box from a server. The set-top box can receive the notification form the server via a private network within an IPTV system. The notification can be associated with a communication from a source device outside the IPTV system to a destination outside the IPTV system.

At decision step302, the type of message for which the set-top box has received a notification is determined. If the notification is associated with an e-mail message received at the server, the method proceeds to block304, and the set-top box transmits the e-mail notification to a display device. The notification can include any information suitable for notifying the user that an e-mail message has been transmitted to the user. For example, the notification can include the sender's name, the sender's e-mail address, a subject of the e-mail message, thumbnail images of any picture attachments, a portion of the e-mail message text, an e-mail symbol, an e-mail audio tone, or any combination of these.

Moving to decision step306, the set-top box can prompt the user for an acknowledgement of the notification. For example, the set-top box can transmit a user interface to the display device, which includes the notification and soft buttons that the user can select to indicate that the notification has been seen, that the message should be saved or deleted, and the like. In a particular embodiment, the e-mail notification can be displayed until an acknowledgement is received. After the acknowledgement is received, the method continues to block308, and the set-top box can remove the notification from display or cease transmitting the notification for display.

At decision step310, the set-top box can determine whether to store the e-mail message. In one embodiment, a command to save the message or not save the message can be received from a user via a remote control device that communicates with the set-top box device. The command can be issued by selecting soft buttons on a user interface or by pressing designated keys on the remote control. If a command to store the e-mail message at the set-top box device is not received, the method proceeds to decision step314. On the other hand, if a command to store the message is received, the method moves to block312, and the message is stored. The message can be stored at the set-top box device and/or at a device within the IPTV system. The message then proceeds to decision step314.

Moving to decision step314, the user can be prompted to determine whether or not to view the e-mail message. If the set-top box receives a command to not display the e-mail message, the method proceeds to decision step342. Conversely, if the set-top box device receives a command to display the text of the e-mail message, the set-top box device transmits the e-mail message to a display device at block316, and the method proceeds to decision step342.

Returning to decision step302, if the set-top box device determines that a telephone call notification has been received, the method moves to block318, and the telephone notification is transmitted to the display device. For example, the notification can include the caller's name, the caller's telephone number, the destination telephone number, any portion of caller identification information received at the server, a telephone call symbol, a telephone call audio tone, or any combination of these.

Moving to decision step320, the set-top box can prompt the user for an acknowledgement of the notification. For example, the set-top box can transmit a user interface to the display device, which includes the notification and soft buttons that the user can select to indicate that the notification has been seen, that the message should be saved or deleted, and the like. In a particular embodiment, the telephone call notification can be displayed until an acknowledgement is received. After the acknowledgement is received, the method continues to block322, and the set-top box can remove the notification from display or cease transmitting the notification for display.

Continuing to decision step324, the set-top box device can determine whether the telephone call has been answered. In one embodiment, the set-top box device can receive an indication from the server that transmitted the notification whether or not the call was answered. If the call is answered, the method can continue to decision step342. Alternatively, if the call is not answered, the method can proceed to decision step326, and the set-top box device can determine whether a voice mail has been left at the server. For instance, the set-top box device can receive an indication from the server of whether or not a voice mail has been left by the caller. When a voice mail has not been left, the method can proceed to decision step342. On the other hand, when a voice mail is left, the set-top box device can prompt the user at decision step328to decide whether to retrieve the voice mail from the server.

In a particular embodiment, if the user decides not to retrieve the voice mail message, the method proceeds to decision step342. Conversely, if the user decides to retrieve the voice mail message, the method continues to block330and the set-top box requests the voice mail from the server. The voice mail message is received and stored at the set-top box device at block332. Moving to decision step334, the set-top box device can prompt the user to decide whether the voice mail message should be broadcast as an audio message or converted to a text message. If a command to convert the message to text is received at the set-top box device, the method proceeds to block338, and the audio message can be converted to text by a computer program embedded within the set-top box device. The text message is transmitted to the display device at block340, and the method proceeds to decision step342. Returning to decision step334, if a command not to convert the audio message to text is received, the voice mail message can be broadcast at block336. In one embodiment, the voice mail message can be transmitted as an audio message to the display device for broadcast to the user. In another embodiment, the set-top box device can broadcast the voice mail message to the user.

In an illustrative embodiment, the set-top box device can determine at decision step342whether to send a communication, such as a status of a DVR within the set-top box device, to the server. In this embodiment, if no command to send a DVR status to the server has been received or set by the user, the method can proceed to decision step348. Alternatively, if a command to transmit the DVR status has been received or set by the user, the method proceeds to block344, and the set-top box device generates a DVR status message via a computer program embedded within a memory portion of the set-top box device. At block346, the DVR status message is communicated to the server via the private network within the IPTV system.

Moving to decision step348, the set-top box device can determine whether a user has requested a menu of messages. When a menu is requested, for instance, from a remote control device communicating with the set-top box device, the set-top box device can generate a menu of prior messages at block350and transmit the menu to the display device at block352. The menu can include, for example, data relating to all telephone calls, voice mail messages, and e-mail messages received in the last three days, received from a particular party, and the like.

Continuing to decision step354, the set-top box device can determine whether a message from the menu is requested. For example, a user can select a message by issuing a command to the set-top box device using a remote control. If no message is selected, the method ends at state360. On the other hand, if a selection of a message is received at the set-top box, the set-top box can retrieve the message from its memory portion and transmit the message to the display device at block358. The method ends at state360.

Referring toFIG. 4, a diagram of an embodiment of a user interface to receive notifications is shown at400. The user interface400can be displayed at a display device, such as a television monitor402. In the embodiment shown inFIG. 4, the user interface400includes a telephone call notification. The user interface400can overlay television content408and can contain multiple types of information. For example, the user interface400for the telephone call notification can include a caller or destination telephone number404and a telephone call symbol406.

Referring toFIG. 5, a diagram of a second embodiment of a user interface to receive notifications is shown at500. The user interface500can be displayed at a display device, such as a television monitor502. In the embodiment shown inFIG. 5, the user interface500includes an e-mail message notification. The user interface500can overlay television content504and can contain multiple types of information. For example, the user interface500for an e-mail message notification can include a statement506indicating a sender name and subject of the e-mail message. In a particular embodiment, the user interface500can also indicate whether a picture attachment or presentation is attached to the e-mail message, by displaying a first attached picture512or a picture indicator.

In an illustrative embodiment, the user interface500can include selectable commands that a user can select by manipulating a cursor514. In a particular embodiment, the user interface500can include a soft button508that a user can select to indicate a decision to view the e-mail message at a later time. When pictures are attached to the e-mail message, the user interface500can include a soft button510that a user can select to indicate a decision to view a slide show of pictures attached to the e-mail message. Examples of other soft buttons include buttons indicating whether to store, delete, or display the text of the e-mail message.

Referring toFIG. 6, a diagram of a third embodiment of a user interface to receive notifications is shown at600. The user interface600can be displayed at a display device, such as a television monitor602. In the embodiment shown inFIG. 6, the user interface600includes a menu of messages stored at a server and/or set-top box device. The user interface600can contain multiple types of information for each stored message on the menu. For example, the user interface600can contain a symbol604indicating the type of message. Additionally, the user interface600can include the name of the sender606of the message. The user interface600can further include a subject608of each message. Moreover, the user interface600can include a date or time of receipt610of each message.

In a particular embodiment, a user may select a message on the menu by manipulating a highlight bar612, using UP, DOWN, and ENTER keys, for example, on a remote control. Further, a user can sort messages on the menu by highlighting a sorting criteria614, such as ‘by date’ or ‘by name’ on the user interface600. If the messages on the menu are too great to be displayed on one screen, the current and total number of menu pages 616 can be displayed in conjunction with selectable symbols indicating a next page618or a previous page.

Referring toFIG. 7, a diagram of a fourth embodiment of a user interface to receive notifications is shown. The user interface700can be provided on a television monitor702. The user interface700can overlay a display region704that displays television content. In a particular embodiment, the user interface700can include a message content region706that displays content of a message, such as the text of an e-mail message, or a text message converted from a voice message. In an illustrative embodiment, the content is displayed as streaming text that overlays the television content in the display region704and moves from right to left, as indicated by arrow710.

As shown inFIG. 7, the user interface can include a tag region708that displays header information for each message displayed in the message content region706. The tag region708can be appended to the message content region706. In an illustrative embodiment, header information in the tag region708can include indicators of the type of message being displayed, e.g., ‘Voice Mail’ or ‘e-Mail.’ Moreover, the header information can also include other information, such as the source, date, time, or subject of the message, as well as return information or other identifying indicia.

In a particular embodiment, the television content displayed in the display region704continues uninterrupted, while the message content is displayed in the message content region706and while any header information is displayed in the tag region708.

Referring toFIG. 8, an illustrative embodiment of a general computer system is shown and is designated800. The computer system800can include a set of instructions that can be executed to cause the computer system800to perform any one or more of the methods or computer based functions disclosed herein. The computer system800, or any portion thereof, may operate as a standalone device or may be connected, e.g., using a network, to other computer systems or peripheral devices, including a server or set-top box device, as shown inFIG. 1.

As illustrated inFIG. 8, the computer system800may include a processor802, e.g., a central processing unit (CPU), a graphics-processing unit (GPU), or both. Moreover, the computer system800can include a main memory804and a static memory806that can communicate with each other via a bus808. As shown, the computer system800may further include a video display unit810, such as a liquid crystal display (LCD), an organic light emitting diode (OLED), a flat panel display, a solid state display, or a cathode ray tube (CRT). Additionally, the computer system800may include an input device812, such as a keyboard, and a cursor control device814, such as a mouse. Further, the computer system800can include a wireless input device815, e.g., a remote control device. The computer system800can also include a disk drive unit816, a signal generation device818, such as a speaker or remote control, and a network interface device820.

In a particular embodiment, as depicted inFIG. 8, the disk drive unit816may include a computer-readable medium822in which one or more sets of instructions824, e.g. software, can be embedded. Further, the instructions824may embody one or more of the methods or logic as described herein. In a particular embodiment, the instructions824may reside completely, or at least partially, within the main memory804, the static memory806, and/or within the processor802during execution by the computer system800. The main memory804and the processor802also may include computer-readable media.

The present disclosure contemplates a computer-readable medium that includes instructions824or receives and executes instructions824responsive to a propagated signal, so that a device connected to a network826can communicate voice, video or data over the network826. Further, the instructions824may be transmitted or received over the network826via the network interface device820.

In a particular embodiment, the steps of the methods described herein are executed in the order shown by the figures. In alternative embodiments, the steps may be executed in alternative sequences. For example, menus of previous messages can be requested and generated prior to receiving new notifications at the set-top box device or server. Additionally, messages regarding DVR status can be transmitted from the set-top box device to the server prior to receiving new notifications at the set-top box device.

In conjunction with the configuration of structure described herein, the system and method disclosed provide notifications of various communications and messages on an IPTV platform, over an IPTV system. Integration of communication and messaging functions, as well as functions such as caller identification are integrated at a central location that communicates with the set-top box device through the IPTV system. Moreover, messages can be stored at the server and/or set-top box device for access by users at a later time. Further, communications from the set-top box device can be sent back through the network and can be transmitted to devices on other networks, such as wireless phones.

In accordance with various embodiments, the methods described herein may be implemented as one or more software programs running on a computer processor. Dedicated hardware implementations including, but not limited to, application specific integrated circuits, programmable logic arrays and other hardware devices can likewise be constructed to implement the methods described herein. Furthermore, alternative software implementations including, but not limited to, distributed processing or component/object distributed processing, parallel processing, or virtual machine processing can also be constructed to implement the methods described herein.

It should also be noted that software that implements the disclosed methods may optionally be stored on a tangible storage medium, such as: a magnetic medium, such as a disk or tape; a magneto-optical or optical medium, such as a disk; or a solid state medium, such as a memory card or other package that houses one or more read-only (non-volatile) memories, random access memories, or other re-writable (volatile) memories. The software may also utilize a signal containing computer instructions. A digital file attachment to e-mail or other self-contained information archive or set of archives is considered a distribution medium equivalent to a tangible storage medium. Accordingly, the disclosure is considered to include a tangible storage medium or distribution medium as listed herein, and other equivalents and successor media, in which the software implementations herein may be stored.