This application claims the priority of Korean Patent Application No. 10-2003-0024469 filed on Apr. 17, 2003 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.
1. Field of the Invention
The present invention relates to a method of selecting a device capable of executing contents and setting detailed options required when the selected device executes the contents in the case where it is desired to execute contents stored in a home device through another home device in a home network.
2. Description of the Related Art
In accordance with prior art technology, since there is no provision for a procedure of systematically defining and managing setting information data on the execution of contents, there is employed a method of performing a process of selecting a device and setting detailed options required for the execution of the contents according to the commands of a user.
A system, as illustrated in
The source device 110 is a device that holds contents that are downloaded from external devices and the Internet and are required by the user 160. For example, in the case where the user 160 downloads a desired music file (contents) from a specific place or the Internet and stores the music file in a device, the device, in which the music file is stored, corresponds to the source device 110.
The target device 120 is a device that synchronizes the contents stored in the source device 110 according to the manipulation of the user 160. For example, when the user 160 plays a music file using a music player after the user 160 stores the music file (contents) downloaded from a remote place in the source device 110 of the user 160 and comes home, the music player corresponds to the target device 120.
The control device 140 is a device that provides an interface required for the user 160 to issue a command to transfer the contents stored in the source device 110 to the target device 120. For example, when the user 160 searches for a device holding a desired music file and a device capable of playing the music file, and plays the music file, a device, which provides an interface allowing the user 160 to issue a command to search all the devices of a home for devices fulfilling requirements, corresponds to the control device 140.
In accordance with the prior art technology, contents are executed through the below-described process. A prior art device search method is described with reference to
A prior art process of a user selecting a device is described with reference to
Prior art operations between devices are described with reference to
The prior art is problematic in that the user 160 directly performs contents-related operations itself. That is, if there is a plurality of target devices 120, the user 160 must select one from the target devices 120. Further, the user 160 cannot previously set a time and conditions when and under which the user 160 desires to execute the contents.
Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and an object of the present invention is to provide a method, in which a device searches for and selects a target device and executes contents stored in a specific device through the selected target device to comply with information set and preferred by a user at a certain time and under certain conditions without the intervention of the user.
Another object of the present invention is to provide a method of defining a data format for representing commands to allow devices to be automatically operated, and defining an operation method of each device using the defined data format.
In order to accomplish the above object, the present invention provides a method for synchronizing contents, comprising the steps of a content device downloading the contents from a source device, storing synch data required to synchronize the downloaded contents, determining a target device by interpreting the synch data, and executing the contents through the target device.
In order to accomplish the above object, the present invention provides a content device that is provided with contents by a source device and controls the contents to be automatically executed in a target device, comprising a data composer for receiving information required to construct synch data retrieved externally and constructing the synch data, a data parser for interpreting the synch data and transmitting a user command to modules requiring the interpreted synch data, a sync handler for determining conditions for the execution of the contents using the interpreted synch data, and a content processor for issuing an action command to the target device through a service manager if the conditions are fulfilled.
In order to accomplish the above and other objects, the present invention provides a synch data structure for storing information required to allow a target device to execute contents at a certain time without the intervention of a user. A system in accordance with the invention comprises SynchTime for defining a time at which contents stored in a content device are executed in a target device, SynchAction for defining actions that are required to allow the content device to execute the contents in the target device, ContentInfo for defining the kinds of contents, PreferenceInfo for defining the basic information of an owner if the owner of the contents exists, and SelectDeviceInfo for defining a certain criterion to select a certain device if a plurality of devices providing the corresponding service exist at the time of synchronization.
The above and other objects, features and other advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
Reference now should be made to the drawings, in which the same reference numerals are used throughout the different drawings to designate the same or similar components.
The operations and functions of the above-described elements are described below in brief. The contents are, for example, data that can be synchronized between two or more devices, such as AV media data, printer script, text, and personal schedule information. The synchronization refers to the transmission of contents from a device to another device and the execution of the contents.
The source device 210 is a device that provides contents desired by the user to the content device. The provided contents include various data, such as music files, print script, schedule information and text. Source devices may exist in various forms depending upon methods of providing contents. For example, in the case where contents are provided via the Internet, a remote server existing on the Internet may be the source device. In the case where contents are provided via a local area network, a personal computer or home server may be the source device. An existing method can be used to move contents between the source device and the content device.
The target device 220 is a device that receives contents desired by the user from the content device and executes the contents. A process of receiving and executing contents is the same as that of prior art technology. That is, when a device needs information, another device provides device and service information thereof, receives a command to execute contents through a service supported thereby, and processes the command. Meanwhile, if there are two or more devices capable of executing contents, one device is selected from the devices as the target device based upon device information defined and desired by the user. In this case, the device, which can execute the contents but is not selected as the target device, may be defined as the alternative device 230, and a device, which is not related to the execution of the contents, may be defined as other device 240.
The content device 300 is a device that receives contents from the source device 210 and controls the target device 220 to automatically execute the contents. The synch data are data that include information required to execute contents stored in the content device 300 at a specific time in the target device 220 without intervention by the user. The content device and the synch data are very important elements in regard to the present invention. The content device is described in detail in conjunction with
The entire operation of the present invention includes five steps. First, contents are downloaded from the source device 210 to the content device 300. This step may be performed on-line or off-line, via a wired or wireless communication. Second, the synch data 400 required to synchronize the downloaded contents are stored. In this case, the user can directly input the synch data or can download previously prepared synch data from an external source. Third, the content device 300 is moved to another location. That is, the user carries the content device 300 to another location. For example, as illustrated in
The content device 300 constructs the synch data 400 required to synchronize downloaded data. The synch data 400, constructed as described above, includes SynchTime 410 for defining the time to execute contents stored in the content device 300 through the target device 220, SynchAction 420 for defining actions to execute contents stored in the content device 300 through the target device 220, ContentInfo 430 that is service information required to execute the contents, SelectDeviceInfo 450 for selecting one device when there are a plurality of devices, and PreferenceInfo 440 that is setting information additionally required when an action command is issued to the target device 220.
Exemplary methods by which the content device 300 obtains synch data information include the following three methods.
First, a method of constructing synch data using the user interface is described with reference to
Second, a method of constructing synch data using a remote storage with reference to
Third, a method of updating synch data through an interaction with a target device with reference to
Processes of searching for a target device, determining a synchronization time using synch data constructed by the user and executing contents through the target device are illustrated in
Referring to
In the searching process, devices supporting a protocol and a service corresponding to contents are searched for using the ContentInfo (see 430 in
Referring to
Since the user does not intervene in the selection process, information, which allows the device selector 370 to select the target device 220 using the SelectDeviceInfo (see 450 in
Referring to
Referring to
In accordance with the present invention, the service manager 360 is a module that serves like the control point of a UPnP system, has functions of actually finding the target device selected by the device finder and the device selector and controlling the target device to execute the action command issued by the content processor 320. The service manager 360 may exist inside the content device, or may exist outside the content device as a separate device.
Referring to
Referring to
Referring to
The operation of the content processor 320 is described below. When the synch data interpreted by the data parser 340 are read by the data reader 324 and transmitted to the message maker 322, the message maker 322 constructs an action message using the parameters and information required to transmit a command and transmits the constructed action message to the action starter 321. The service manager 360 having received the command to perform the action from the action starter 321 controls the target device to execute contents. Meanwhile, when the message maker 322 transmits the action message to the preference analyzer 323, the preference analyzer 323 analyzes the pattern of actions of the user by interpreting contents-related actions, and transmits the results of the pattern analysis to the data composer 310. Thereafter, the data composer 310 updates the synch data 400 through the data parser 340.
The synch data 400 is data that is used to store information required to cause the target device to execute contents stored in the content device at a specific time without the intervention of the user. These data must be represented to be consistent with a data format that is defined in the present invention to perform synchronization. The basic format of the synch data defined in the present invention is as follows:
The synch data 400 generally includes SynchTime 410, SynchAction 420, ContentInfo 430, PreferenceInfo 440 and SelectDeviceInfo 450.
The SynchTime 410 defines the time to cause the target device to execute contents stored in the content device, and includes TriggerPoint 411 for defining the time to perform synchronization, ValidTime 412 for defining an effective period in which synchronization can be performed, and MaxCount 413 for defining the maximum number of times synchronization is performed.
The SynchAction 420 defines actions required to cause the target device to execute contents stored in the content device, and includes ProtocolInfo 433 for defining protocols required to perform the actions and ServiceInfo 434 for defining services suitable for the actions.
The ContentInfo 430 includes Type 431 for defining the type of contents stored in the content device, Source 432 for defining the position of content storage 330 in which contents are stored, and ProtocolInfo 433 for defining a protocol required to cause the target device to execute the contents.
The PreferenceInfo 440 includes UserInfo 441 for representing the information of the user who executes contents, and FavoriteInfo 442 for defining devices, services and content formats that the user likes to use.
The SelectDeviceInfo 450 includes SpecificDevice 451 for defining information for specifying a device so that the user can previously set information to select one from a plurality of devices if there are the plurality of devices capable of executing corresponding contents, and AnyDevice 452 that is required to select a device using the pattern of actions of the user in the case where a random device is selected.
The TriggerPoint 411 of the SynchTime 410 determines the time to perform synchronization, and is divided into Condition 411 for defining conditions, Period for defining the time interval of execution of synchronization, and AbsoluteTime for defining the absolute time to perform synchronization. The Condition defines the states of a content device and a target device to which synchronization is applied, and includes Target (content device or target device), ServiceType (service including StateVariale for checking states), ServiceID, StateVariable, DataType, Value (a value satisfying the state), Range (below, above, equal), and Time (the pre-time and post-time that satisfy conditions).
The Period defines the time interval at which synchronization is performed based upon BasicTime, and includes BasicTime (24-hour basis, hh:mm), Unit (second, minute, hour, day, week, month) and Value. The AbsoluteTime defines the absolute time to perform synchronization, and includes Value. The Value may be set to various values, and synchronization is performed at the times recorded in the Value.
The ValidTime 412 of the SynchTime 410 defines an effective period in which synchronization can be performed, and includes StartTime that is the start time of the effective period and EndTime that is the end time of the effective period.
The MaxCount 412 of the SynchTime 410 defines the maximum number of times synchronization is performed.
The ProtocolInfo 433 of the SynchAction 420 defines a protocol that performs synchronization, which may be exemplified by UPnP and SynchML.
The ServiceInfo 434 of the SynchAction 420 defines a service that performs actions, which may be exemplified by UPnP AV Service and UPnP Printer Service. There are ActionName and Parameter used to perform the actions as elements.
The ConFIGInfo 443 of the SynchAction 420 gives a definition so that, when an action is transmitted, the user transmits the action using preset information. The Type of the ContentInfo 430 defines the types of contents, and the Source of the ContentInfo 430 defines a local path name to reach contents.
The ProtocolInfo 433 of the ContentInfo 430 defines a protocol capable of executing contents, and includes Name, Type and Version. The ServiceInfo 434 of the ContentInfo 430 defines a service capable of execute contents, and includes Type and ServiceID.
The UserInfo 441 of the PreferenceInfo 440 defines the basic information of the user if the owner of contents exists, and includes ID, Name, Birthday and Address. The FavoriteInfo 442 of the PreferenceInfo 440 defines information preferred by the user, and includes FavoriteDevice 442-1, FavoriteService 442-2 and FavoriteContentFormat 442-3. The FavoriteDevice 442-1 defines the information of devices preferred by the user, and includes DeviceType, DeviceID, DeviceName, DeviceFriendlyName, and DeviceManufacturer. The FavoriteDevice 442-2 defines the information of services preferred by the user, and includes ServiceType and ServiceName. The FavoriteContentFormat 442-3 defines the types of contents preferred by the user, and includes ContentType and ContentInfo.
The ConfigInfo 443 of the PreferenceInfo 440 is information in which information on the preference of the user is previously set at the time of synchronization, defines a corresponding service using ServiceType 443-1, and defines Name, DataType and Value under StateVariable.
The SelectDeviceInfo 450 defines a selection criterion to select a device from a plurality of devices if the plurality of devices providing a service exist when synchronization is performed. The selection criterion employs a method in which the user appoints a device or a method of appointing a device with reference to the preference of the user.
The SpecificDevice 451 of the SelectDeviceInfo 450 defines information to previously appoint a device that the user will operate. The user can appoint a specific device using ByDeviceID, ByDeviceType, ByContentFormat, ByFriendlyName, ByManufacturer and ByMedia.
The AnyDevice 452 of the SelectDeviceInfo 450 functions to select a device if a device appointed by the user does not exist. A device that supports the device, the service and the content format preferred by the user using UserFavorite 452-1 can be selected first.
The operation of the embodiment constructed as described above is described with reference to an example.
An example in which the user downloads music to his own content device via the Internet is cited as a first example. In order to use the downloaded music as a morning call, after the music is downloaded, synch data may be constructed as described below through the user interface of a content device.
In the case where the synch data are constructed by the input of the user as descried above, the data are stored in the content device. Then, the content device can determine when the synchronization is performed in the target device based upon the above-described synch data.
The time when the synchronization is performed can be determined by (1). That is, a corresponding action is performed at 06:00 every day.
A protocol and a service to be performed at a corresponding time are determined by (2). That is, the UPnP protocol is used, and devices performing the ContentDirectory Service and the AVTransport Service are first searched for.
If a plurality of devices fulfilling the conditions of (2) have been searched for, one device must be selected from the plurality of devices. One device is selected using the information defined by (5). That is, since the user inputs the information to execute contents through a device having the DeviceType of Audio, an audio device is selected from the plurality of devices.
The contents to be executed are determined by (3). Therefore, a getting-up.mp3 file is played by the protocol and the service defined by (2).
In the process of executing the contents according to (4), the contents can be executed according to a predetermined value. That is, the content device can set volume to 5 to operate the target device.
The content device can store the Type of a device preferred by the user as history information. Like (6), Audio can be recorded as the DeviceType preferred by the user.
Through the above-described process, the getting-up.mp3 file can be played by the audio device at 6 a.m. every day using the UPnP protocol and service.
Another example, in which a manufacturer producing and selling printers uploads synch data onto a specific Web site to manage the printers and the synch data are provided to the printers, is cited as a second example. Through this service, a printer installed in a home may access the Web site recorded in the memory thereof and can fetch the synch data provided by the manufacturer. In this case, the printer can be the content device.
The synch data constructed by the manufacturer are as follows:
The printers perform the following actions using the Synch data constructed by the manufacturer.
Each of the printers determines the time to perform synchronization using (1). That is, when the amount of toner is less than LOW, the action starts.
The protocol used to perform the action is determined using (2). That is, it is determined that the action is performed using RDS (protocol for managing the printers).
The target device for performing the action is determined using (4). That is, a RDS server is selected as the target device.
The contents to be transmitted to the target device are determined using (3). That is, the current state of the toner is reported to the target device by transmitting the state of TonerRemainder, that is, one of Types defined by the RDS, to the target device. Through this process, when the amount of toner of the printer is reduced, the printer can transmit the current state thereof to the server that manages the printer.
Although the present invention has been described by using the preferred embodiment, the present invention is not limited to the embodiment, but various modifications can be made by those skilled in the art without departing from the inventive concept of the present invention.
A device in accordance with the present invention can previously construct data in which the command and preferences of the user can be previously defined, so that the target device is allowed to execute contents stored in the content device at a specific time without the intervention of the user.
In detail, the present invention has effects in which the following items are automatically performed without the intervention of the user. First, the device that supports the service capable of executing contents stored in the content device can be searched for. Second, if two or more devices capable of performing a corresponding service exist, one device can be selected using device information defined by the user or information on the device preferred by the user. Third, contents stored in the content device can be executed using the target device at a certain time by detecting certain conditions, a time or a period preferred by the user. Four, when contents are executed by the target device, the target device can be controlled using information previously set by the user. Finally, preference information can be updated by analyzing execution methods and setting information based upon the information of contents executed through the content device and the target device.
Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2003-0024469 | Apr 2003 | KR | national |