1. Field of the Invention
The present invention presents a method for controlling operations of a network system, more particularly a method for controlling operations of a network system having a plurality of client terminals selectively uploading files to a server and the server simultaneously transmitting files to the selected plurality of client terminals.
2. Description of the Prior Art
In the prior art, the basic method of file synchronization/sharing is installing an application program on a client terminal. The application program may then be used to monitor changes in the files of the client terminal and using a default transfer protocol, changed file may be transferred to a server. In the server, the changed file may be recorded in the database and transferred to another client terminal. After performing the file synchronization/sharing, the latest content of the shared files recorded in the server may be completely copied to each of client terminals.
However, different client terminals may have different needs for shared files. If using the above described prior art, the client terminal may download or upload unneeded or unrelated files to the server. Therefore, not only is the storage space of the client terminal and the server is wasted, but also bandwidth and time for synchronizing unnecessary files is wasted.
An embodiment of the present invention presents a method for controlling operations of a network system. The network system comprises a server and a plurality of client terminals linked to the server. The method comprises the server establishing a file set; each of the client terminals establishing a directory; individually setting a first criterion and a second criterion of the each of the client terminals, the first criterion being stored in the each of the client terminals and is configured to set a first file schedule of the each of the client terminals, and the second criterion being stored in the server and being configured to set a second file schedule of the each of the client terminals; a first client terminal of the client terminals selectively uploading file(s) from the directory of the first client terminal to the server according to the first file schedule of the first client terminal, such that the server updates file(s) of the file set using the file(s) received from the first client terminal; and in response to updating of the file(s) of the file set, the server selectively transmitting updated content of the file(s) of the file set to each of rest client terminals other than the first client terminal according to the second file schedule of the each of rest client terminals, such that the each of the rest client terminals updates the file(s)of the directory of the each of the rest client terminals using the updated content of the file(s) received from the server.
The method for controlling operations of the network system of an embodiment of the present invention may individually set the first criterion and the second criterion of different client terminals having the file(s) of the file set of the server selectively shared to the plurality of client terminals and each of the client terminals selectively upload the file(s) to the file set of the server. Therefore, because each of the client terminals need not download irrelevant or unneeded file(s) from the server and does not need to upload unneeded file(s) to the server, a file storage space of each of the client terminals maybe efficiently used and not wasted on unnecessary bandwidth and time on synchronous data.
These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
Please refer to
The server 10 may establish a file set 16 used for managing and storing of file(s) 18. The file(s) 18 of the file set 16 may be stored in a directory or in several different directories. A control program 12 may be installed in the server 10 and the server 10 may execute the control program 12 to manage the file sharing between the server 10 and the plurality of client terminals 20A to 20N. Each of the plurality of client terminals 20A to 20N may establish a directory 26A, 26B . . . or 26N used to store files downloaded from the server 10. Furthermore, each of the plurality of client terminals 20A to 20N may set and store a first criterion 24A, 24B . . . or 24N and each of the plurality of client terminals 20A to 20N may individually upload file(s) 28 of the directory 26A, 26B . . . or 26N according to the first criterion 24A, 24B . . . or 24N. And the server 10 may update the file(s) 18 of the file set 16 according to the file(s) 28 received from each of the plurality of client terminals 20A to 20N. In an embodiment of the present invention, each of the plurality of client terminals 20A to 20N may install an application program 22. Each of the plurality of client terminals 20A to 20N may execute the application program 22 to upload the file(s) 28 of the directory 26A, 26B . . . or 26N. When uploading the file(s) 28 to the server 10, the application program 22 may send file(s) 28 compatible to the first criterion 24A, 24B . . . or 24N to the server 10 according to the first criterion 24A, 24B . . . or 24N of each of the plurality of client terminals 20A to 20N.
For different client terminals 20A to 20N, the first criteria 24A to 24N may be individually set to selectively upload file(s) 28 of the directory 26A to 26N to the server 10. Therefore, the server 10 need not receive unrelated or unneeded file from the client terminals 20A to 20N. As a result, the bandwidth between each of the plurality of client terminals 20A to 20N and the server 10 may be effectively utilized and not wasted.
Furthermore, the server 10 records second criteria 14A to 14N of the plurality of client terminals 20A to 20N. Each of second criteria 14A to 14N corresponds to one of the plurality of client terminals 20A to 20N. For example, the second criterion 14A corresponds to the client terminal 20A, the second criterion 14B corresponds to the client terminal 20B, and the second criterion 14N corresponds to the client terminal 20N. Each of the second criteria 14A to 14N may be individually set to comply with the requirement of the corresponding client terminal 20A, 20B . . . or 20N. After the server 10 has received the file(s) 28 from one of the client terminals 20A, 20B . . . or 20N, the server 10 may selectively send the updated content of the file(s) 18 of the file set 16 to each of rest client terminals according to the second criteria of the rest client terminals to update the file(s) 28 in the directory according to the updated content of the file(s) 18 received from the server 10. For example, when the server 10 receives the file(s) 28 from the client terminal 20A, the server 10 may update the file(s) 18 of the file set 16 according to the file(s) 28 received from the client terminal 20A, and selectively send the updated content of the file(s) 18 of the file set 16 to each of the rest client terminals 20B to 20N according to the second criteria 14B to 14N of the rest client terminals 20B to 20N to update the file(s) 28 of the directories 26B to 26N using the updated content of the file(s) 18 received from the server 10.
Furthermore, the server 10 may individually set the second criteria 14A to 14B of the client terminals 20A to 20N to selectively share the updated content of the file(s) 18 of the file set 16 to the plurality of client terminals 20A to 20N. Therefore, the plurality of client terminals 20A to 20N need not download any unnecessary or unneeded file. As a result, not only would the client terminals 20A to 20N efficiently use their won file storage spaces, but also not waste unnecessary bandwidth and time to download shared files.
In an embodiment of the present invention, each of the first criteria 24A to 24N may set a first file schedule 32 and each of the second criteria 14A to 14N may a second file schedule 42. Please refer to
In addition, the second file schedule 42 of the second criterion 14A corresponding to the client terminal 20A may or may not be the same as the second file schedules 42 corresponding to other client terminals 20B to 20N. The server 10 may selectively transmit the file(s) 18 of the file set 16 to each of the client terminals 20A to 20N according to the corresponding second file schedule 42 of each of the client terminals 20A to 20N. The second file schedule 42 of the embodiment may be set as a full time or one or more predetermined time periods. When the second file schedule 42 is full time, the server 10 may transmit the updated content of the file(s) 18 of the file set 16 to corresponding client terminal 20A, 20B . . . or 20N at any time; and when the second file schedule 42 is one or more predetermined time periods, the server 10 may transmit the updated content of the file(s) 18 of the file set 16 to corresponding client terminal 20A, 20B . . . or 20N during the one or more predetermined time periods.
Please refer to
Step S210: The server 10 establishes a file set 16;
Step S220: Each of the client terminals 20A to 20N establishes a corresponding one of the directories 26A to 26N;
Step S230: Individually set the first criteria 24A to 24N and second criteria 14A to 14N of each of the client terminals 20A to 20N;
Step S240: The client terminal 20A selectively uploads the file(s) 28 of the directory 26A to the server 10 on the first file schedule 32 according to the first criteria 24A to allow the server 10 to update the file(s) 18 of the file set 16 according to the file(s) 28 received from the client terminal 20A; and
Step S250: The server 10, in response to the update of the file(s) 18 of the file set 16, selectively transmits the updated content of the file(s) 18 of the file set 16 to each of the rest client terminals 20B to 20N other than the client terminal 20A on the second file schedule 42 of each of the rest client terminals 20B to 20N according to the second criteria 14B to 14N of the rest client terminals 20B to 20N, such that the each of the rest client terminals 20B to 20N updates the file(s)28 of the directory 26B . . . or 26N thereof using the updated content of the file(s) 18 received from the server 10.
Wherein, the sequence of Steps S210 to S230 may be randomly set or changed and the client terminal 20A may be the first client terminal.
In an embodiment of the present invention, a corresponding upload sequence 34 of the file(s) 28 is set in each of the first criteria 24A to 24N and configured to set an upload priority of the file(s) 28 of the corresponding directory 26A, 26B . . . or 26N of the each of the client terminals 24A to 24N, where the upload sequence 34 of each of the client terminals 20A to 20N may be same or different. Taking the first criterion 24A of the client terminal 20A in
In an embodiment of the present invention, the upload sequence 34 of each of the first criteria 24A to 24N may be set according to the upload history of each of the client terminals 20A to 20N. For example, the client terminal 20A uploads document files most often, therefore, the application program 22 executed by the client terminal 20A may make the document files have the highest upload priority by setting the upload sequence 34 of the first criterion 24A.
In an embodiment of the present invention, a corresponding download sequence 44 of the file(s) 18 is set in each of the second criteria 14A to 14N and configured to set a corresponding download priority of the file(s) 18 of the file set 16, where a file 18 in the file set 16 corresponding to the client terminal 20A, 20B . . . or 20N having a higher download priority value is downloaded first to the corresponding client terminal 20A, 20B . . . or 20N. The download priority 44 of each of the client terminals 20A to 20N may be same or different. Taking the second criterion 14A corresponding to the client terminal 20A in
In an embodiment of the present invention, the download sequence 44 of each of the second criteria 14A to 14N may be set according to download history of each of the client terminals 20A to 20N. For example, the client terminal 20A may download audio files most often, therefore, the control program 12 executed by the server 10 may make the audio files have the highest download priority by setting the download sequence 44 of the second criterion 14A.
In an embodiment of the present invention, a length of a predetermined time 36 of a predetermined file 18 in the file set 16 may be set on each of the first criteria 24A to 24N and/or each of the second criteria 14A to 14N. Wherein, the length of the predetermined time 36 is configured to set the life cycle of the predetermined file 18 after being downloaded. For example, when the time after the server 10 transmits the predetermined file 18 to the client terminal 20B exceeds the length of the predetermined time, the application program 22 of the client terminal 20B may automatically delete the predetermined file 18 from the directory 26B of the client terminal 20B. Therefore, if the shared file is a paid for file (i.e. movie file), such sharing method may be used to limit the use of the paid for file within the length of the predetermined time.
In an embodiment of the present invention, a predetermined deletion time 38 of the predetermined file 18 in the file set 16 may be set on each of the first criteria 24A to 24 N and/or each of the second criteria 14A to 14N. The predetermined deletion time 38 is configured to set the time when the predetermined file 18 is deleted. For example, after the server 10 transmits the predetermined file 18 to the client terminal 20N, if a system time of the server 10 exceeds the predetermined deletion time, the application program 22 of the client terminal 20N may automatically delete the predetermined file 18 from the directory 26N of the client terminal 20N. Therefore, such sharing method may limit the use of the paid for file to time before the predetermined deletion time.
Furthermore, in an embodiment of the present invention, the application program 22 maybe used to determine if each of the client terminals 20A to 20N is authorized to copy a predetermined downloaded file 18. If the application program 22 determines that any one of the client terminals 20A to 20N is copying or moving the predetermined downloaded file 18, the application program 22 may force the client terminals 20A to 20N performing copying or moving to delete the predetermined downloaded file 18 to avoid having the predetermined file 18 from being illegally copied or used. Therefore a better protection is provided to the predetermined downloaded file 18 that has a time-limited property.
In an embodiment of the present invention, a second file schedule 42 of each of the client terminals 20A to 20N may have a plurality of settings 52. Please refer to
In an embodiment of the present invention, upload schemes 68 and upload time periods 64 of the first file schedule 32 may be set on the first criteria 24A to 24N. Please refer to
In an embodiment of the present invention, a plurality of download time periods 74 and download schemes 76 of a second file schedule 42 may be separately set for each of the second criteria 14A to 14N. Please refer to
Please refer to
Furthermore, in an embodiment of the present invention, each of the first criteria 24A to 24N is set to be compatible to the standard of the corresponding second criterion 14A, 14B . . . or 14N. In other words, in an embodiment of the present invention, each of the first criteria 24A to 24N may be set based on the corresponding second criterion 14A, 14B . . . or 14N. For example, the second criterion 14A may be set to allow the client terminal 20A to download mp3 or jpg files. Accordingly, the first criterion 24A may only be set according to the above mentioned setting (e.g. the client terminal 20A may be set to only be able to download mp3 files). In another example, the second criterion 14B may be set to only allow the client terminal 20B to perform file download during three download time periods. Therefore, the first criterion 24B is set according to the second criterion 14B. Thus, the allowable download time periods of the client terminal 20B may not exceed the three download time periods set in the second criterion 14B.
Furthermore, in an embodiment of the present invention, when a second criterion 14A, 14B . . . or 14N of a client terminal 20A, 20B . . . or 20N is updated, the server 10 may transmit the updated second criterion 14A, 14B . . . or 14N to the client terminal 20A, 20B . . . or 20N and have the updated second criterion 14A, 14B . . . or 14N downloaded by the client terminal 20A, 20B . . . or 20N to replace the corresponding first criterion 24A, 24B . . . or 24N of the client terminal 20A, 20B . . . or 20N.
In another embodiment of the present invention, the application program 22 may determine if the client terminals 20A to 20N have performed update, modify, delete, and/or move operations on the files 28 in the directories 26A to 26N. If the application program 22 detects any update, modify, delete, and/or move operation of the files 28 of the directories 26A to 26N of the client terminals 20A to 20N, the application program 22 may notify the control program 12 of the server 10 of the result of the determination for the control program 12 to perform corresponding update, modify, delete, and/or move operation on the files 18 of the file set 16. Similarly, the controller program 12 may determine if the server 10 has performed update, modify, delete, and/or move operation on the files 18 of the file set 16. If the application program 22 determined that the server 10 have performed update, modify, delete, and/or move operation on the files 18 of the file set 16, the control program 12 may notify the application program 22 of the client terminals 20A to 20N of the result of the determination for the application program 22 to perform corresponding update, modify, delete, and/or move operation on the files 28 of the directory 26A to 26N.
In summary, an embodiment of the method of the network system may be used to separately set first criteria and second criteria of client terminals for the client terminals to selectively upload files to a server and for the server to share files from the file set to the client terminals. Thus, the server and each of the client terminals need not receive unrelated or unneeded files. Not only can the server and the client terminals effectively use their own file storage spaces but also not waste unnecessary bandwidth and time to upload and download shared files. Furthermore, to respond to the variations of the files of the file set of the server, the server may be triggered to selectively transmit the files of the file set to each of the client terminals according to sync criteria of the files of the client terminals for each of the client terminals to be able to receive needed files from the server. In addition, the server may use different criteria on different client terminals to increase the security of the files of the file set of the server and avoid unauthorized user from downloading secure or important files.
Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
102143515 | Nov 2013 | TW | national |