Abstract: The disclosure relates to a method of sharing content with recipients. In the disclosed method the process of sharing content is divided into uploading of the content and then sharing of the content. During the process of uploading of the content, the sending user is able to control and avoid duplicate uploading of the digital content. Likewise, at the time of downloading, the recipient is able to control and avoid duplicate downloading of the digital content. During the process of uploading or downloading, an initial determination of a possibility of the digital content being a duplicate is made and a confirmation in this regard is sought from the user using preview data. Additionally, prior to actual sharing of the digital content, consent is sought from the user for sharing of the file with the receiver. FIGURE 2
CLIAMS:We Claim:
1. A method of sharing digital content, said method comprising:
sending, by a transmitting device, a first identification data associated with a first digital content to a server device, the first digital content being stored on a local memory associated with the transmitting device;
receiving, by the transmitting device, a preview data from the server, the preview data corresponding to a second digital content available at the server device;
rendering the preview data corresponding to the second digital content available at the server device, the second digital content being associated with a second identification data;
sending an approval message to the server device, the approval message authorizing the server to share the second digital content available at the server with a receiving device.
2. The method as claimed in claim 1, wherein the local memory includes a memory forming part of the transmitting device or a memory device connected to the transmitting device via a short range communication medium or an electronic device having memory connected to the transmitting device via a short range communication medium.
3. The method as claimed in claim 1, further comprising receiving, by the transmitting device, a first selection corresponding to the first digital content stored on the local memory associated with the transmitting device.
4. The method as claimed in claim 1, further comprising rendering, on a display device associated with the transmitting device, a preview of the first digital content.
5. The method as claimed in claim 1, wherein the approval message is sent to the server, if preview data received from the server corresponding to the second digital content is selected vide a second selection.
6. The method as claimed in claim 5, wherein the second selection comprises election of the preview data received from the server corresponding to the second digital content, said election being made between a preview of the first digital content and the preview data received from the server corresponding to the second digital content.
7. The method as claimed in claim 5, wherein the second selection comprises receiving a command indicative of acceptance of the preview data received from the server corresponding to the second digital content.
8. The method as claimed in claim 1, further comprising sending the first digital content stored in the local memory associated with the transmitting device for delivery to the receiving device , if preview data received from the server corresponding to the second digital content is not selected.
9. The method as claimed in claim 1, further comprising receiving a selection of a recipient with whom the first digital content or the second digital content is to be shared.
10. The method as claimed in claim 9, further comprising sending a message to the user, said message prompting the user to provide a consent to share the first digital content or the second digital content with the selected recipient.
11. The method as claimed in claim 1, further comprising checking by the transmitting device a local connection with the receiving device.
12. The method as claimed in claim 11, wherein if a local connection exists between the transmitting device and the receiving device, terminating upload of the first digital content to the server device.
13. The method as claimed in claim 12, further comprising initiating a transfer of the first digital content from the transmitting device to the receiving device vide the local connection.
14. A method of sharing digital content, said method comprising:
receiving, by a server device, a first identification data associated with a first digital content selected, the first digital content being stored on a local memory associated with a transmitting device;
sending, by the server device, preview data to the transmitting device, the preview data corresponding to a second digital content available at the server, the second digital content being associated with a second identification data;
receiving, by the server device, an approval message from the transmitting device; and
sending, by the server device, one or more of the first identification data, the second identification data, preview data corresponding to the first digital content, preview data corresponding to the second digital content , the first digital content or the second digital content to a receiving device.
15. The method as claimed in claim 14, further comprising comparing the first identification data with the second identification data.
16. The method as claimed in claim 15, wherein sending, by the server device, preview data corresponding to the second digital content to the transmitting device is conditioned upon the first identification data matching with the second identification data.
17. The method as claimed in claim 14, further comprising requesting the first digital content from the transmitting device for delivery to the receiving device, if the first identification data does not match with the second identification data or if no second identification data is available with the server.
18. The method as claimed in claim 17, further comprising receiving the first digital content from the transmitting device for delivery to the receiving device.
19. The method as claimed in claim 14, further comprising receiving the first digital content from the transmitting device for delivery to the receiving device instead of receiving the approval message.
20. A method of sharing digital content, said method comprising:
sending, by a server device, a first identification data associated with a digital content to a receiving device;
receiving, by the server device, either a first message or a second message from the receiving device; and
sending, by the server device, preview data associated with the digital content to the receiving device in response to receiving the first message or sending one or more of preview data associated with the digital content or the digital content to the receiving device in response to receiving the second message.
21. The method as claimed in claim 20, further comprising optionally receiving a third message in response to sending the preview data to the receiving device.
22. The method as claimed in claim 21, further comprising sending the digital content to the receiving device in response to receiving the third message.
23. A method of sharing digital content, said method comprising:
receiving, by a receiving device, a first identification data associated with a first digital content from a server device;
comparing the first identification data with a second identification data, the second identification data corresponding to a second digital content stored at a local memory associated with the receiving device; and
sending, by the receiving device, either of a first message or a second message to the server device, wherein the first message requests for preview data associated with the first digital content available with the server and the second message requests for one or more of preview data associated with the first digital content available with the server or the first digital content available with the server.
24. The method as claimed in claim 23, wherein the local memory includes a memory forming part of the receiving device or a memory device connected to the receiving device via a short range communication medium or an electronic device having memory connected to the receiving device via a short range communication medium.
25. The method as claimed in claim 23, wherein sending, by the receiving device, the first message is conditioned upon the first identification data matching with the second identification data.
26. The method as claimed in claim 23, further comprising optionally sending a third message in response to receiving the preview data.
27. The method as claimed in claim 23, further comprising receiving the first digital content in response to sending the third message.
28. The method as claimed in claim 23, further comprising checking by the receiving device a local connection with a transmitting device.
29. The method as claimed in claim 28, wherein a local connection exists between the receiving device and the transmitting device, terminating a download of the first digital content from the server device.
30. The method as claimed in claim 29, further comprising initiating a download of a digital content corresponding to the first digital content from the transmitting device vide the local connection.
31. A device for transmitting digital content, said device comprising:
a sending module for sending a first identification data associated with a first digital content to a server device, the first digital content being stored on a local memory associated with the transmitting device;
a receiving module for receiving a preview data from the server, the preview data corresponding to a second digital content available at the server device;
a rendering module for rendering the preview data corresponding to the second digital content, the second digital content being associated with a second identification data; and
a processing module in operational communication with the sending module for generating and sending an approval message to the server device, the approval message authorizing the server to share the second digital content available at the server with a receiving device.
32. A server device involved in sharing of digital content, said device comprising:
a receiver module for receiving a first identification data associated with a first digital content, the first digital content being stored on a local memory associated with a transmitting device;
a first sending module for sending a preview data to the transmitting device, the preview data corresponding to a second digital content available at the server, the second digital content being associated with a second identification data;
the receiver module being further adapted to receiving an approval message from the transmitting device; and
a second sending module for sending one or more of the first identification data, the second identification data, preview data corresponding to the second digital content, preview data corresponding to the first digital content, the first digital content or the second digital content to a receiving device.
33. A server device involved in sharing of digital content, said device comprising:
a sending module for sending a first identification data associated with a digital content to a receiving device;
a receiving module for receiving either a first message or a second message from the receiving device; and
a processing module in operational communication with the sending module for sending preview data associated with the digital content to the receiving device in response to receiving the first message or sending one or more of preview data associated with the digital content or the digital content to the receiving device in response to receiving the second message.
34. A device for receiving shared digital content, said device comprising:
a receiving module for receiving a first identification data associated with a first digital content from a server device;
a comparator module for comparing the first identification data with a second identification data, the second identification data corresponding to a second digital content stored at a local memory associated with the device; and
a sending module in operational communication with the comparator module for sending either of a first message or a second message to the server device, wherein the first message requests for preview data associated with the first digital content available with the server and the second message requests for one or more of preview data associated with the first digital content available with the server or the first digital content available with the server.
,TagSPECI:Field of the Invention:
The disclosure relates to sharing of digital contents. Particularly, the disclosure relates to avoiding transmission of duplicate copy of digital content vide applications such as chat application, messenger applications or social media network applications.
Background of the Invention:
In today’s world, users generate a large number of digital content, such as emails, web pages, word processing documents, spreadsheet documents, instant messenger messages, multimedia files, presentation documents, using a client device, such as a personal computer, personal digital assistant, or a mobile phone. In some instances, a user who has either created or is in possession of a digital content may wish to share the same with other users.
In many instances, when the user who has either created or is in possession of a digital content (can be referred to as transmitting user) wishes to share the same with other users (can be referred to as receiving user), he uploads the document on a central repository, which is accessible by the receiving user. Alternatively, the transmitting user sends a message containing the digital content (which is intended to be shared) vide a network for delivery to the receiving user. The network, in such instance, stores and forwards the message along with the digital content intended to be shared.
It has however been noticed that while adopting the aforesaid methods of sharing the digital content, one or more of the following problems are faced:
• Many a times, user transmits, duplicate copies of the digital content for delivery to the same recipient;
• Many a times, user transmitted digital content might also be available at the recipient or may have been received by the recipient from yet another sender;
• Many a times, the user transmits, same digital content which he has already sent for delivery to a first recipient for delivery to a second recipient or to one or more further recipients;
• Many a times, the user transmits, a digital content wrongly for delivery to a recipient. This can be either in the form of a wrong identification of the recipient or a wrong identification of the digital content.
In accordance with prior art, a method for managing uploads of duplicate files includes receiving a request from a user for upload of a first file to an online repository, determining whether the first file is a duplicate of a second file stored in the online repository based on one or more attributes shared between the first file and the second file. On the basis of the determination the method further causes the first file to be not uploaded to the online repository. In case, the user preference is to store the first file, the first file is caused to be uploaded as a replacement of the second file.
In accordance with another prior art, a method for managing uploads of duplicate files includes the user receiving hash value list associated with the files stored in an online repository. The user device calculates a hash value associated with a new filed intended to be uploaded. The user device then compares the hash value of the new file intended to be uploaded with the hash value list received from the online repository (which are associated with the files stored in the online repository). If the hash value of the new file intended to be uploaded matches a hash value on the hash value list, the user device prevents the new file from being uploaded.
In accordance with yet another prior art, a method for managing uploads of duplicate files includes the online repository receiving an image file. The online repository calculates a hash value for the received image file. The online repository then compares the hash value calculated for the received image file with hash values pertaining to image files already stored in the online repository. If the hash value calculated for the received file matches a hash value of any of the already stored image files, the online repository prevents the new received image file from being stored.
In accordance with still another prior art, a method of managing upload of duplicate files includes filtering outbound network traffic originating from a client device to check for files targeted for upload to remote sites. When a file targeted for upload to a remote site is detected, a remote storage location at which the client’s backup data is stored is checked for a copy of the detected file. If a copy of the file is located at the remote backup site, that copy is substituted for the client copy in the network transmission to the target remote site. By uploading online copies of files, when available, the client upload experience is thus enhanced and local bandwidth is preserved.
It has been observed that many a times, a user shares file(s) that he/she has already shared with other recipients. In most cases, the servers which acted as an intermediate during the transfer of the file(s) maintain the file share by the user in a database location corresponding to the user profile. So, if the user shares the same file again with other set of recipients, duplicate file uploading will take place in the server. Thus, the cost incurred by the user is higher. While there are prior arts as described above that suggest mechanisms in server to remove duplicate copies, the user still has to bear some cost due to the local file being uploaded to the server. The mechanisms which revolve around the user device have not been found very effective for one or more reasons.
Thus, it can be said that while the above described prior arts provide for some mechanisms for managing upload of duplicate files, there is still a need to develop methods which avoid transmission of duplicate copy of digital content in an efficient manner.
Object of the Invention:
The object of the invention is therefore, to provide a method for sharing of digital contents that avoids transmission of duplicate copy of digital content.
Summary of the Invention:
Accordingly, the present invention provides a method for sharing of digital content. In the proposed method, a sender selects a digital content to be shared from a local memory associated with a transmitting device (i.e. a device associated with the sender). Thereafter, the transmitting device checks whether the digital content has been previously shared or uploaded. If it is determined that the digital content has been previously shared or uploaded, the transmitting device sends only the file ID to the server. The server device receives the file ID and checks for a file corresponding to the file ID stored on an online repository. If a file corresponding to the ID is stored in the online repository, the server sends a thumbnail (preview) of the associated file to the transmitting device. The thumbnail thus received from the server is rendered on a display device associated with the transmitting device. Along with the aforesaid, the transmitting device may also render a thumbnail of the digital content which the sender selected from the local memory. The transmitting device now allows the sender to select between the thumbnail received from the server and the thumbnail corresponding to the local memory. In case, the sender selects the thumbnail received from the server, an approval message is sent to the server to share the server copy with a recipient.
Similarly, the server checks whether the digital content has been previously shared with the recipient having a receiving device associated with him, wherein the receiving device is further associated with a local memory. If it is determined that the digital content has been previously shared with the recipient, the server device sends only the file ID to the receiving device. The receiving device receives the file ID and checks for a file corresponding to the file ID in the local memory. In case a digital content corresponding to the file ID is not located, the receiving device may opt to either directly download the digital content or may opt to obtain a preview from the server and render the same on a display device associated with the receiving device. On the other hand, if a file corresponding to the ID is found in the local memory associated with the receiving device, the receiving device requests the server to send a thumbnail (preview) of the associated file. The receiving device renders on a associated display device the thumbnail thus received from the server alongside a thumbnail of the digital content stored on the local memory . The receiving device now allows the recipient to select between the thumbnail received from the server and the thumbnail corresponding to the local memory. In case, the recipient selects the thumbnail corresponding to the local memory available, the server copy is not downloaded.
To further clarify advantages and features of the present invention, a more particular description of the invention will be rendered by reference to specific embodiments thereof, which is illustrated in the appended drawings. It is appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail with the accompanying drawings.
Brief Description of Figures:
These and other features, aspects, and advantages of the present invention will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
Figure 1 shows a flow chart as performed by prior art for sharing of digital content between a transmitting device and a receiving device;
Figure 2 shows a flow chart as performed by in accordance with one embodiment of the present invention for sharing of digital content between a transmitting device and a receiving device;
Figure 3 shows a flow chart of the process as adopted by the transmitting device during sharing of the digital content;
Figure 4 shows a flow chart of the process as adopted by the server device while receiving the digital content from the transmitting device;
Figure 5 shows a flow chart of the process as adopted by the server device while sending digital content to the receiving device;
Figure 6 shows a flow chart of the process as adopted by the receiving device while sharing of the digital content;
Figure 7 shows a block diagram of the transmitting device in accordance with one embodiment of the invention;
Figure 8 shows a block diagram of a server device in accordance with one embodiment of the invention;
Figure 9 shows a block diagram of the receiving device in accordance with one embodiment of the invention;
Figure 10 shows a detailed construction of the device as illustrated in any of figures 7, 8 or 9;
Figure 11 shows a user interface as may be presented at the transmitting device, in case a server copy is available;
Figure 12 shows the user interface as may be presented at the transmitting device, in case the server copy is chosen for sharing;
Figure 13 shows the user interface as may be presented at the transmitting device, in case the local copy (copy stored on the local memory associated with the transmitting device) is chosen for sharing;
Figure 14 shows the user interface as may be presented at the transmitting device, in case the sender exercise control to avoid wrongful delivery of digital content to a recipient;
Figure 15 shows a user interface as may be presented at the receiving device, in case a local copy (copy stored on a local memory associated with the receiving device) is available;
Figure 16 shows the user interface as may be presented at the receiving device, in case the local copy is chosen (or in other words, the download is not proceeded); and
Figure 17 shows the user interface as may be presented at the receiving device, in case the server copy of chosen for downloading.
Further, skilled artisans will appreciate that elements in the drawings are illustrated for simplicity and may not represent all the elements which may be included in the system / method. For example, the flow charts illustrate the method in terms of the most prominent steps involved to help to improve understanding of aspects of the present invention. Furthermore, in terms of the construction of the device, one or more components of the device may have been represented in the drawings by conventional symbols, and the drawings may show only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the drawings with details that will be readily apparent to those of ordinary skill in the art having benefit of the description herein.
Detailed Description:
For the purpose of promoting an understanding of the principles of the invention, reference will now be made to the embodiment illustrated in the drawings and specific language will be used to describe the same. It will nevertheless be understood that no limitation of the scope of the invention is thereby intended, such alterations and further modifications in the illustrated system, and such further applications of the principles of the invention as illustrated therein being contemplated as would normally occur to one skilled in the art to which the invention relates.
It will be understood by those skilled in the art that the foregoing general description and the following detailed description are exemplary and explanatory of the invention and are not intended to be restrictive thereof.
Reference throughout this specification to “an aspect”, “another aspect” or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrase “in an embodiment”, “in another embodiment” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.
The terms "comprises", "comprising", or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a process or method that comprises a list of steps does not include only those steps but may include other steps not expressly listed or inherent to such process or method. Similarly, one or more devices or sub-systems or elements or structures or components proceeded by "comprises... a" does not, without more constraints, preclude the existence of other devices or other sub-systems or other elements or other structures or other components or additional devices or additional sub-systems or additional elements or additional structures or additional components.
Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The system, methods, and examples provided herein are illustrative only and not intended to be limiting.
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
As illustrated in figure 1, a transmitting device (102) sends (108) a message containing the digital content (which is intended to be shared) vide a server (104) for delivery (110) to a receiving device (106). The server, in such instance, stores and forwards the message along with the digital content intended to be shared. In the above scenario, neither the server nor the transmitting devcie performs a check to detect duplicate transmission of the digital content from the transmitting deice to the server. Likewise, at the time of delivery (110), neither the server nor the receiving device performs a check to detect a duplicate copy. The aforesaid process, which is still the most prevalent method suffers from the drawback as highlighted above.
In order to overcome one or more of the problems associated with the aforesaid method, as illustrated in figure 2, the present invention provides a method for sharing of digital content which involves a transmitting device (202), a server (204) and a receiving device (206). The transmitting device may be associated with a local memory (207) and likewise, the receiving device may be associated with a local memory (208). In the proposed method, a sender (not illustrated) selects (210) a digital content to be shared at the transmitting device (202) from the local memory (207). Thereafter, the transmitting device checks (212) whether the digital content has been previously shared or uploaded. If it is determined that the digital content has been previously shared or uploaded, the transmitting device fetches (214) the file ID corresponding to the digital content sends (216) only the file ID to the server. The server device receives the file ID and checks for a file corresponding to the file ID stored on an online repository. If a file corresponding to the ID is stored in the online repository, the server sends (218) a thumbnail (preview) of the associated file to the transmitting device. The thumbnail thus received from the server is rendered on a display device associated with the transmitting device. Along with the aforesaid, the transmitting device may also render a thumbnail of the digital content which the sender selected from the local memory (207). The transmitting device now allows the sender to select between the thumbnail received from the server and the thumbnail corresponding to the local copy. In case, the sender selects the thumbnail received from the server, the transmitting device sends an approval message (220) to the server to share the server copy with a recipient (having an associated receiving device). On the other hand, if the sender selects the thumbnail corresponding to the local copy of the digital content, the digital content per se is sent to the server for sharing with the recipient. Thus, in the process as described above, the sender is able to take a judicious call of whether the server copy of the digital content is a duplicate version of the locally available copy.
In the above described embodiment the local memory means a memory forming part of the transmitting device or a memory device or an electronic device having memory which is connected to the transmitting device via a short range communication medium such as Bluetooth®, Wi-Fi®, ZigBee®, Wi-Fi Direct®, etc.
Likewise, the server checks (222) whether the digital content has been previously shared with the recipient. If it is determined that the digital content has been previously shared with the recipient, the server device sends (224) only the file ID to the receiving device. The receiving device receives the file ID and checks (226) for a file corresponding to the file ID in a local memory (208). In case a digital content corresponding to the file ID is not located in the local memory, the receiving device may opt to either directly download the digital content or may opt to obtain a preview from the server and render the same on a display device associated with the receiving device. On the other hand, if a file corresponding to the ID is found in the local memory associated with the receiving device, the receiving device requests (228) the server to send (230) a thumbnail (preview) of the associated file. The thumbnail thus received (230) from the server is rendered on a display device alongside a thumbnail of the digital content which the receiving device has locally. The receiving device now allows the recipient to select between the thumbnail received from the server and the thumbnail corresponding to the local copy. In case, the recipient selects the thumbnail corresponding to the local copy available, the server copy is not downloaded. Thus, it can be noticed that even at the time of sending the digital content to the recipient, the recipient is able to take a judicious call of whether the server copy of the digital content is a duplicate version of the locally available copy.
In the above described embodiment the local memory means a memory forming part of the receiving device or a memory device or an electronic device having memory which is connected to the receiving device via a short range communication medium such as Bluetooth®, Wi-Fi®, ZigBee®, Wi-Fi Direct®, etc.
It is also possible that during process of upload or download, either or both of the transmitting device and the receiving device can check for local connection between the two to be established and in response to the same, the upload/download process can be terminated and the local digital content process over the local connection can be instead initiated.
Also, the aforesaid process does not involve extensive computing and hence, less amount of computing power (both locally as well as at the server side) are required. Furthermore, in case it is detected that the sever copy is a duplicate version of the local copy, the same need not be retransmitted by the transmitting device to the server and likewise, if the server copy is a duplicate version of the recipient’s local copy, the same need not be transmitted by the server to the receiving device and hence, the bandwidth and the associated cost are saved.
Now referring to figure 3, the present invention provides a method (300) for sharing of digital content performed by a transmitting device at the time of sharing of sharing digital content, said method comprising:
sending (302), by a transmitting device, a first identification data associated with a first digital content to a server device, the first digital content being stored on a local memory associated with the transmitting device;
receiving (304), by the transmitting device, a preview data from the server, the preview data corresponding to a second digital content available at the server device;
rendering (306) the preview data corresponding to the second digital content available at the server device, the second digital content being associated with a second identification data; and
sending (308) an approval message to the server device, the approval message authorizing the server to share the second digital content available at the server with a receiving device.
In the above described embodiment the local memory means a memory forming part of the transmitting device or a memory device or an electronic device having memory which is connected to the transmitting device via a short range communication medium such as Bluetooth®, Wi-Fi®, ZigBee®, Wi-Fi Direct®, etc.
In an embodiment, the method of the present invention may further comprise receiving (310), by the transmitting device, a first selection corresponding to the first digital content stored on the local memory associated with the transmitting device.
In another embodiment, the method of the present invention may further comprise rendering (312), on a display device associated with the transmitting device, a preview of the first digital content.
In yet another embodiment of the present invention, the approval message is sent to the server, if preview data received from the server corresponding to the second digital content is selected vide a second selection (314).
In a further embodiment of the present invention, the second selection comprises election of the preview data received from the server corresponding to the second digital content, said election being made between a preview of the first digital content and the preview data received from the server corresponding to the second digital content.
In a furthermore embodiment of the present invention, the second selection comprises receiving a command indicative of acceptance of the preview data received from the server corresponding to the second digital content.
In an embodiment, the method of the present invention may further comprise sending (316) the first digital content stored in the local memory associated with the transmitting device for delivery to the receiving device , if preview data received from the server corresponding to the second digital content is not selected.
In another embodiment, the method of the present invention further comprises receiving (318) a selection of a recipient with whom the first digital content or the second digital content is to be shared.
In yet another embodiment, the method of the present invention may further comprise sending (320) a message to the user (or rendering a message on a display device associated with the transmitting device), said message prompting the user to provide a consent to share the first digital content or the second digital content with the selected recipient.
In still another embodiment, the method as described above may further comprise checking by the transmitting device a local connection with the receiving device.
In a further embodiment of the method as described above, if a local connection exists between the transmitting device and the receiving device, terminating upload of the first digital content to the server device.
In another embodiment, the method as described above may further comprise initiating a transfer of the first digital content from the transmitting device to the receiving device vide the local connection.
In yet another embodiment of the above described method, a local connection includes one or more of short-range communication such as Bluetooth® connection, Wi-Fi® connection, ZigBee® connection and Wi-Fi Direct® connection. It will be evident to a person of ordinary skill in the art, that any wired or wireless communication may be employed for such a local connection.
Now referring to figure 4, the present invention also provides a method (400) performed by a server device at the time of sharing digital content, said method comprising:
receiving (402), by a server device, a first identification data associated with a first digital content selected, the first digital content being stored on a local memory associated with a transmitting device;
sending (404), by the server device, preview data to the transmitting device, the preview data corresponding to a second digital content available at the server, the second digital content being associated with a second identification data;
receiving (406), by the server device, an approval message from the transmitting device; and
sending (408), by the server device, one or more of the first identification data, the second identification data, preview data corresponding to the first digital content, preview data corresponding to the second digital content , the first digital content or the second digital content to a receiving device.
In an embodiment, the method further comprises comparing (410) the first identification data with the second identification data.
In another embodiment of the present invention, the step of sending (404), by the server device, preview data corresponding to the second digital content to the transmitting device is conditioned upon the first identification data matching with the second identification data.
In yet another embodiment, the method further comprises requesting (412) the first digital content from the transmitting device for delivery to the receiving device, if the first identification data does not match with the second identification data or if no second identification data is available with the server.
In still another embodiment, the method further comprises receiving (414) the first digital content from the transmitting device for delivery to the receiving device.
In a further another embodiment, the method further comprises receiving (416) the first digital content from the transmitting device for delivery to the receiving device instead of receiving the approval message.
Referring to figure 5, the present invention further provides a method (500) performed by a server device at the time of sharing digital content, said method comprising:
sending (502), by a server device, a first identification data associated with a digital content to a receiving device;
receiving (504), by the server device, either a first message or a second message from the receiving device; and
sending (506), by the server device, preview data associated with the digital content to the receiving device in response to receiving the first message or sending one or more of preview data associated with the digital content or the digital content to the receiving device in response to receiving the second message.
In an embodiment, the method described above may further comprise optionally receiving (508) a third message in response to sending the preview data to the receiving device.
In another embodiment, the method described above may further comprise sending (510) the digital content to the receiving device in response to receiving the third message.
Referring to figure 6, the present invention furthermore provides a method (600) performed by a receiving device at the time of sharing digital content, said method comprising:
receiving (602), by the receiving device, a first identification data associated with a first digital content from a server device;
comparing (604) the first identification data with a second identification data, the second identification data corresponding to a second digital content stored at a local memory associated with the receiving device; and
sending (606), by the receiving device, either of a first message or a second message to the server device, wherein the first message requests for preview data associated with the first digital content available with the server and the second message requests for one or more of preview data associated with the first digital content available with the server or the first digital content available with the server.
In the above described embodiment the local memory means a memory forming part of the receiving device or a memory device or an electronic device having memory which is connected to the receiving device via a short range communication medium such as Bluetooth®, Wi-Fi®, ZigBee®, Wi-Fi Direct®, etc.
In an embodiment of the present invention, the step of sending (606), by the receiving device, the first message is conditioned upon the first identification data matching with the second identification data.
In another embodiment, the method as described above may further comprise optionally sending (608) a third message in response to receiving the preview data.
In yet another embodiment, the method as described above may further comprise receiving (610) the first digital content in response to sending the third message.
In still another embodiment, the method as described above may further comprise checking by the receiving device a local connection with a transmitting device.
In a further embodiment of the method as described above, if a local connection exists between the receiving device and the transmitting device, terminating a download of the first digital content from the server device.
In another embodiment, the method as described above may further comprise initiating a download of a digital content corresponding to the first digital content from the transmitting device vide the local connection.
In yet another embodiment of the above described method, a local connection includes one or more of Bluetooth® connection, Wi-Fi® connection, ZigBee® connection and Wi-Fi Direct® connection.
While in the above paragraphs, the process performed for attaining the digital content sharing has been described, in the following portions, a detailed note about the construction of the devices is provided.
In this regard, referring to figure 7, the device (700) for transmitting digital content comprises a sending module (702) for sending a first identification data associated with a first digital content to a server device, the first digital content being stored on a local memory associated with the transmitting device; a receiving module (704) for receiving a preview data from the server, the preview data corresponding to a second digital content available at the server device; a rendering module (706) for rendering the preview data corresponding to the second digital content, the second digital content being associated with a second identification data; and a processing module (708) in operational communication with the sending module for generating and sending an approval message to the server device, the approval message authorizing the server to share the second digital content available at the server with a receiving device.
As illustrated in figure 8, the server device (800) involved in sharing of digital content comprises a receiver module (802) for receiving a first identification data associated with a first digital content, the first digital content being stored on a local memory associated with a transmitting device and a first sending module (804) for sending a preview data to the transmitting device, the preview data corresponding to a second digital content available at the server, the second digital content being associated with a second identification data. The receiver module is further adapted to receiving an approval message from the transmitting device. The server device further comprises a second sending module (806) for sending one or more of the first identification data, the second identification data, preview data corresponding to the second digital content available at the server, preview data corresponding to the first digital content, the first digital content or the second digital content to a receiving device.
Once again, as illustrated in figure 8, the service device involved in sharing of digital content, said device comprises a sending module (806) for sending a first identification data associated with a digital content to a receiving device; a receiving module (808) for receiving either a first message or a second message from the receiving device; and a processing module (810) in operational communication with the sending module for sending preview data associated with the digital content to the receiving device in response to receiving the first message or sending one or more of preview data associated with the digital content or the digital content to the receiving device in response to receiving the second message.
Now referring to figure 9, the receiving device (900) for receiving shared digital content comprises a receiving module (902) for receiving a first identification data associated with a first digital content from a server device; a comparator module (904) for comparing the first identification data with a second identification data, the second identification data corresponding to a second digital content stored at the receiving device; and a sending module (906) in operational communication with the comparator module for sending either of a first message or a second message to the server device, wherein the first message requests for preview data associated with the first digital content available with the server and the second message requests for one or more of preview data associated with the first digital content available with the server or the first digital content available with the server.
Referring to figure 10, a typical hardware configuration of the transmitting device (700) or the server device (800) or the receiving device (900) in the form of a computer system is shown. The computer system can include a set of instructions that can be executed to cause the computer system to perform any one or more of the methods disclosed. The computer system may operate as a standalone device or may be connected, e.g., using a network, to other computer systems or peripheral devices.
In a networked deployment, the computer system may operate in the capacity of a server or as a client user computer in a server-client user network environment, or as a peer computer system in a peer-to-peer (or distributed) network environment. The computer system can also be implemented as or incorporated into various devices, such as a personal computer (PC), a tablet PC, a personal digital assistant (PDA), a mobile device, a palmtop computer, a laptop computer, a desktop computer, a communications device, a wireless telephone, a smart mobile phone, a land-line telephone, a web appliance, a network router, switch or bridge, or any other machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while a single computer system is illustrated, the term "system" shall also be taken to include any collection of systems or sub-systems that individually or jointly execute a set, or multiple sets, of instructions to perform one or more computer functions.
The computer system may include a processor 1002 e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both. The processor 1002 may be a component in a variety of systems. For example, the processor 1002 may be part of a standard personal computer or a workstation. The processor 1002 may be one or more general processors, digital signal processors, application specific integrated circuits, field programmable gate arrays, servers, networks, digital circuits, analog circuits, combinations thereof, or other now known or later developed devices for analysing and processing data The processor 1002 may implement a software program, such as code generated manually (i.e., programmed).
The computer system may include a memory 1004, such as a memory 1004 that can communicate via a bus 1008. The memory 1004 may be a main memory, a static memory, or a dynamic memory. The memory 1004 may include, but is not limited to computer readable storage media such as various types of volatile and non-volatile storage media, including but not limited to random access memory, read-only memory, programmable read-only memory, electrically programmable read-only memory, electrically erasable read-only memory, flash memory, magnetic tape or disk, optical media and the like. In one example, the memory 1004 includes a cache or random access memory for the processor 1002. In alternative examples, the memory 1004 is separate from the processor 1002, such as a cache memory of a processor, the system memory, or other memory. The memory 1004 may be an external storage device or database for storing data. Examples include a hard drive, compact disc ("CD"), digital video disc ("DVD"), memory card, memory stick, floppy disc, universal serial bus ("USB") memory device, or any other device operative to store data. The memory 1004 is operable to store instructions executable by the processor 1002. The functions, acts or tasks illustrated in the figures or described may be performed by the programmed processor 1002 executing the instructions stored in the memory 1004. The functions, acts or tasks are independent of the particular type of instructions set, storage media, processor or processing strategy and may be performed by software, hardware, integrated circuits, firm-ware, micro-code and the like, operating alone or in combination. Likewise, processing strategies may include multiprocessing, multitasking, parallel processing and the like.
As shown, the computer system 900 may or may not further include a display unit 1010, such as a liquid crystal display (LCD), an organic light emitting diode (OLED), a flat panel display, a solid state display, a cathode ray tube (CRT), a projector, a printer or other now known or later developed display device for outputting determined information. The display 1010 may act as an interface for the user to see the functioning of the processor 1002, or specifically as an interface with the software stored in the memory 1004 or in the drive unit 1016.
Additionally, the computer system may include an input device 1012 configured to allow a user to interact with any of the components of system. The input device 1012 may be a number pad, a keyboard, or a cursor control device, such as a mouse, or a joystick, touch screen display, remote control or any other device operative to interact with the computer system.
The computer system 900 may also include a disk or optical drive unit 1016. The disk drive unit 1016 may include a computer-readable medium 1022 in which one or more sets of instructions 1024, e.g. software, can be embedded. Further, the instructions 1024 may embody one or more of the methods or logic as described. In a particular example, the instructions 1024 may reside completely, or at least partially, within the memory 1004 or within the processor 1002 during execution by the computer system. The memory 1004 and the processor 1002 also may include computer-readable media as discussed above.
The present invention contemplates a computer-readable medium that includes instructions 1024 or receives and executes instructions 1024 responsive to a propagated signal so that a device connected to a network 1026 can communicate voice, video, audio, images or any other data over the network 1026. Further, the instructions 1024 may be transmitted or received over the network 1026 via a communication port or interface 1020 or using a bus 1008. The communication port or interface 1020 may be a part of the processor 1002 or may be a separate component. The communication port 1020 may be created in software or may be a physical connection in hardware. The communication port 1020 may be configured to connect with a network 1026, external media, the display 1010, or any other components in system or combinations thereof. The connection with the network 1026 may be a physical connection, such as a wired Ethernet connection or may be established wirelessly as discussed later. Likewise, the additional connections with other components of the system may be physical connections or may be established wirelessly. The network 1026 may alternatively be directly connected to the bus 1008.
The network 1026 may include wired networks, wireless networks, Ethernet AVB networks, or combinations thereof. The wireless network may be a cellular telephone network, an 802.11, 802.16, 802.20, 802.1Q or WiMax network. Further, the network 1026 may be a public network, such as the Internet, a private network, such as an intranet, or combinations thereof, and may utilize a variety of networking protocols now available or later developed including, but not limited to TCP/IP based networking protocols.
In an alternative example, dedicated hardware implementations, such as application specific integrated circuits, programmable logic arrays and other hardware devices, can be constructed to implement various parts of the system.
Applications that may include the systems can broadly include a variety of electronic and computer systems. One or more examples described may implement functions using two or more specific interconnected hardware modules or devices with related control and data signals that can be communicated between and through the modules, or as portions of an application-specific integrated circuit. Accordingly, the present system encompasses software, firmware, and hardware implementations.
The system described may be implemented by software programs executable by a computer system. Further, in a non-limited example, implementations can include distributed processing, component/object distributed processing, and parallel processing. Alternatively, virtual computer system processing can be constructed to implement various parts of the system.
The system is not limited to operation with any particular standards and protocols. For example, standards for Internet and other packet switched network transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) may be used. Such standards are periodically superseded by faster or more efficient equivalents having essentially the same functions. Accordingly, replacement standards and protocols having the same or similar functions as those disclosed are considered equivalents thereof.
In the following paragraphs a detailed description about some exemplified implementations of the methods described above are provided. It should however, be understood every implementation of the method need not follow the scenario as mentioned in the following paragraphs. Thus, the scope of the claims is intended to be restricted only on the basis of the claims and their equivalents and not on the basis of the examples provided herein below.
Referring to figure 11, a graphical user interface as may be presented at the transmitting device is shown. By way of demonstration, the graphical user interface is shown in the form of a chat application. On the right side, the graphical user interface highlights the sender (1102) and on the left side the recipient (1104) is highlighted. Once the sender chooses a file (digital content) for sharing with a recipient , a preview of the local copy (1106) is rendered on the screen. Alongside rendering preview of the local copy, the graphical user interface may also render a time of selection of the local copy (1108). The transmitting device now checks whether the selected content has been already shared and if the content has been already shared, it sends the file ID (by way of example, the file name) to the server. The server performs the method as described above with reference to figure 4. Assuming that the server sends preview of the digital content available with the server, the same is rendered in the form of preview of the server copy (1110). Alongside rendering preview of the server copy, a time of receipt of the server copy (1112) may also be rendered on the graphical user interface.
In order to enable the user to select between the preview of the local copy (1106) and the preview of the server copy (1110), each of the preview may be provided with a radio button or any suitable option to select one the previews (the radio button shown in the figures is only by way of a non-limiting example). Thus, the preview of the local copy may be provided with a selectable radio button or any other suitable option (1114) and initially the same appears as non-selected. Likewise, the preview of the server copy may be provided with a selectable radio button or any other suitable option (1116) and initially the same appears as non-selected.
In addition to the above, in order to provide an option to control accidental sharing of digital content with a recipient, there may be provided control icons or any other suitable option (1118 and 1120). The control icons may be selectively rendered on the graphical user interface such that only after a digital content has been selected, the icons may appear. By way of example, the icons may be in the form of a “tick” or a “cross” button.
As described above, in one embodiment, the user may wish to share the digital content as stored on the server. This aspect is illustrated in figure 12, wherein it can be seen that the user selects the radio button (1116) which is for sharing the server copy. Once the button is activated, a corresponding approval message may be sent to the server. Although not essential, a notice message (1202) can be provided to user informing him that the server copy has been shared with the receiving device.
In the alternative, the user may wish to share the digital content as stored locally on the transmitting device. This aspect is illustrated in figure 13, wherein it can be seen that the user selects the radio button (1114) which is corresponds to sharing of the local copy. In this case, the local copy of the digital content is sent to the server. Although not essential, a notice message (1302) can be provided to user informing him that the local copy has been shared with the recipient.
It may be noted that in addition to clicking the radio button, the user may be required either of the control buttons (1118 or 1120). The sharing with the recipient may occur only if the “tick” button (1118) or any other suitable option is activated. Now referring to figure 14, it can seen that in case the user activates the “cross” button (1120) or any other suitable option, the image sharing may be discarded with that particular recipient. This may be also informed to the user vide a message (1402).
Referring to figure 15, a graphical user interface as may be presented at the receiving device is shown. By way of demonstration, the graphical user interface is shown in the form of a chat application. On the right side, the graphical user interface highlights the sender (1102) and on the left side the recipient (1104) is highlighted. Once a preview data is received from the server (for reasons as mentioned earlier) a preview of the server copy (1502) is rendered on the screen. Alongside rendering preview of the server copy, the graphical user interface may also render a time of receipt of the server copy (1504). Assuming that the receiving device has digital content corresponding to the file ID as shared by the server, a preview of the digital content available locally (i.e. a local memory associated with the receiving device) corresponding to the file ID is rendered in the form of preview of the local copy (1506). Alongside rendering preview of the local copy, a time of receipt of the local copy (1508) may also be rendered on the graphical user interface.
In order to enable the user to select between the preview of the local copy (1506) and the preview of the server copy (1502), each of the preview may be provided with a radio button or any other suitable option to select one of the two previews(the radio button shown in the figures is only by way of a non-limiting example). Thus, the preview of the local copy may be provided with a selectable radio button (1510) or any other suitable option and initially the same appears as non-selected. Likewise, the preview of the server copy may be provided with a selectable radio button (1512) or any other suitable option and initially the same appears as non-selected.
As described above, in one embodiment, the user may wish NOT to download the digital content as stored on the server. This aspect is illustrated in figure 16, wherein it can be seen that the user selects the radio button (1510) which is for the local copy. Once the button is activated, a corresponding message may be sent to the server. Although not essential, a notice message (1602) can be provided to user informing him that the server copy has NOT been downloaded.
In the alternative, the user may wish to download the digital content as stored on the server. This aspect is illustrated in figure 17, wherein it can be seen that the user selects the radio button (1512) which is corresponds to server copy. In this case, the server copy of the digital content is downloaded. Although not essential, a notice message (1702) can be provided to user informing him that the server copy has been downloaded.
While specific language has been used to describe the disclosure, any limitations arising on account of the same are not intended. As would be apparent to a person in the art, various working modifications may be made to the method in order to implement the inventive concept as taught herein.
The drawings and the forgoing description give examples of embodiments. Those skilled in the art will appreciate that one or more of the described elements may well be combined into a single functional element. Alternatively, certain elements may be split into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, orders of processes described herein may be changed and are not limited to the manner described herein. Moreover, the actions of any flow diagram need not be implemented in the order shown; nor do all of the acts necessarily need to be performed. Also, those acts that are not dependent on other acts may be performed in parallel with the other acts. The scope of embodiments is by no means limited by these specific examples. Numerous variations, whether explicitly given in the specification or not, such as differences in structure, dimension, and use of material, are possible. The scope of embodiments is at least as broad as given by the following claims.
Benefits, other advantages, and solutions to problems have been described above with regard to specific embodiments. However, the benefits, advantages, solutions to problems, and any component(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature or component of any or all the claims.
| # | Name | Date |
|---|---|---|
| 1 | 3145-DEL-2014-IntimationOfGrant19-12-2023.pdf | 2023-12-19 |
| 1 | Specification.pdf | 2014-11-14 |
| 2 | FORM 5.pdf | 2014-11-14 |
| 2 | 3145-DEL-2014-PatentCertificate19-12-2023.pdf | 2023-12-19 |
| 3 | FORM 3.pdf | 2014-11-14 |
| 3 | 3145-DEL-2014-ABSTRACT [25-01-2020(online)].pdf | 2020-01-25 |
| 4 | Form 26..pdf | 2014-11-14 |
| 4 | 3145-DEL-2014-Annexure [25-01-2020(online)].pdf | 2020-01-25 |
| 5 | Drawing.pdf | 2014-11-14 |
| 5 | 3145-DEL-2014-CLAIMS [25-01-2020(online)].pdf | 2020-01-25 |
| 6 | 3145-DEL-2014-Form 1-141114.pdf | 2014-12-04 |
| 6 | 3145-DEL-2014-COMPLETE SPECIFICATION [25-01-2020(online)].pdf | 2020-01-25 |
| 7 | 3145-DEL-2014-DRAWING [25-01-2020(online)].pdf | 2020-01-25 |
| 7 | 3145-DEL-2014-Correspondence-141114.pdf | 2014-12-04 |
| 8 | 3145-DEL-2014-FER_SER_REPLY [25-01-2020(online)].pdf | 2020-01-25 |
| 8 | 3145-DEL-2014-FER.pdf | 2019-08-09 |
| 9 | 3145-DEL-2014-PA [18-09-2019(online)].pdf | 2019-09-18 |
| 9 | 3145-DEL-2014-OTHERS [25-01-2020(online)].pdf | 2020-01-25 |
| 10 | 3145-DEL-2014-ASSIGNMENT DOCUMENTS [18-09-2019(online)].pdf | 2019-09-18 |
| 10 | 3145-DEL-2014-Correspondence-101019.pdf | 2019-10-14 |
| 11 | 3145-DEL-2014-8(i)-Substitution-Change Of Applicant - Form 6 [18-09-2019(online)].pdf | 2019-09-18 |
| 11 | 3145-DEL-2014-OTHERS-101019.pdf | 2019-10-14 |
| 12 | 3145-DEL-2014-8(i)-Substitution-Change Of Applicant - Form 6 [18-09-2019(online)].pdf | 2019-09-18 |
| 12 | 3145-DEL-2014-OTHERS-101019.pdf | 2019-10-14 |
| 13 | 3145-DEL-2014-ASSIGNMENT DOCUMENTS [18-09-2019(online)].pdf | 2019-09-18 |
| 13 | 3145-DEL-2014-Correspondence-101019.pdf | 2019-10-14 |
| 14 | 3145-DEL-2014-OTHERS [25-01-2020(online)].pdf | 2020-01-25 |
| 14 | 3145-DEL-2014-PA [18-09-2019(online)].pdf | 2019-09-18 |
| 15 | 3145-DEL-2014-FER.pdf | 2019-08-09 |
| 15 | 3145-DEL-2014-FER_SER_REPLY [25-01-2020(online)].pdf | 2020-01-25 |
| 16 | 3145-DEL-2014-Correspondence-141114.pdf | 2014-12-04 |
| 16 | 3145-DEL-2014-DRAWING [25-01-2020(online)].pdf | 2020-01-25 |
| 17 | 3145-DEL-2014-COMPLETE SPECIFICATION [25-01-2020(online)].pdf | 2020-01-25 |
| 17 | 3145-DEL-2014-Form 1-141114.pdf | 2014-12-04 |
| 18 | 3145-DEL-2014-CLAIMS [25-01-2020(online)].pdf | 2020-01-25 |
| 18 | Drawing.pdf | 2014-11-14 |
| 19 | Form 26..pdf | 2014-11-14 |
| 19 | 3145-DEL-2014-Annexure [25-01-2020(online)].pdf | 2020-01-25 |
| 20 | FORM 3.pdf | 2014-11-14 |
| 20 | 3145-DEL-2014-ABSTRACT [25-01-2020(online)].pdf | 2020-01-25 |
| 21 | FORM 5.pdf | 2014-11-14 |
| 21 | 3145-DEL-2014-PatentCertificate19-12-2023.pdf | 2023-12-19 |
| 22 | Specification.pdf | 2014-11-14 |
| 22 | 3145-DEL-2014-IntimationOfGrant19-12-2023.pdf | 2023-12-19 |
| 1 | 2019-07-3117-57-50_31-07-2019.pdf |