1. Field of the Invention
The present invention relates to computing. More particularly, the present invention relates to delayable events in a home network.
2. Description of the Related Art
Universal Plug and Play (UPnP) is a distributed, open networking architecture that allows devices to connect seamlessly and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments. UPnP achieves this by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
UPnP has grown in popularity of late in part due to the rise in popularity of media servers. Media servers are small computers that store multiple types of content (e.g., photos, music, videos, etc.). The content may then be streamed from a media server to one or more control points (e.g., iPod, television set, etc.).
As an example, a “Media Server” device might contain a significant portion of the homeowner's audio, video, and still-image library. In order for the homeowner to enjoy this content, the homeowner must be able to browse the objects stored on the Media Server, select a specific one, and cause it to be “played” on an appropriate rendering device.
For maximum convenience, it is highly desirable to allow the homeowner to initiate these operations from a variety of User Interface (UI) devices. In most cases, these UI devices will either be a UI built into the rendering device, or a stand-alone UI device such as a wireless PDA or tablet. In other cases, the home network user interface device could be more remote and communicate with the home network through a tunneling mechanism on the Internet.
Currently, UPnP clients (“control points”) may subscribe to event messages from a UPnP service. When an event occurs in the service, such as the addition or deletion of a file, service errors, etc., the subscribing control points receive event messages notifying them of the event. Each event reflects a change in some state variable being monitored by the service.
The drawback of this approach is that the service can only send events to control points that are connected to the network at the time the event is detected. The event publisher discards the event message if the subscriber doesn't respond for 30 seconds after the event transmission. If a control point is disconnected, or is in sleep mode, the control point never receives the event message.