Instant sharing of documents on a remote server
DCFirst Claim
1. An apparatus for automatically sharing a file, comprising:
- a document loader configured to print a file, on an application server, to a virtual printer from an application associated with the file, the virtual printer to create a shared document for use in a live data conference;
a communication module configured to send the shared document to a conferencing server, the conferencing server to distribute the shared document to a plurality of remote clients; and
each of the remote clients having a viewer application to simultaneously display the shared document during the live data conference.
3 Assignments
Litigations
0 Petitions
Accused Products
Abstract
An apparatus, method, and computer program for instant remote document sharing. In one embodiment, referred to as “remote document sharing,” a file on a remote server is converted to a “shared document” which is distributed to the members of a data conference for review. In another embodiment, referred to as “remote application viewing,” the “owner” of a document on a remote server shares the screens created by an application associated with the document. The other members of the data conference can view the screens, but cannot interact with the application. In another embodiment, referred to as “remote application sharing,” the “owner” of a document on a remote server shares the screens created by an application associated with the document. The other members of the data conference can view the screens and interact with the application.
-
Citations
45 Claims
-
1. An apparatus for automatically sharing a file, comprising:
-
a document loader configured to print a file, on an application server, to a virtual printer from an application associated with the file, the virtual printer to create a shared document for use in a live data conference;
a communication module configured to send the shared document to a conferencing server, the conferencing server to distribute the shared document to a plurality of remote clients; and
each of the remote clients having a viewer application to simultaneously display the shared document during the live data conference. - View Dependent Claims (2)
the conferencing server is configured to receive data representing a user-defined object and a user-specified position from one of the remote clients, the user-specified position indicating the position of the user-defined object within a transparent window, the transparent window appearing to be displayed over the shared document, and distribute the data representing the user-defined object and the user-specified position to each of the rest of the remote clients, each of the rest of the remote clients to display the user-defined object at the user-specified position within a transparent window, the transparent window appearing to be displayed over the shared document.
-
-
3. A apparatus for use in a client, comprising:
-
a client document sharing application configured to receive a shared document for use in a live data conference from a conferencing server, the shared document created at a remote server by printing a file to a virtual printer from an application associated with the file; and
a viewer application configured to display the shared document at the client, wherein the shared document can be simultaneously displayed by the viewer application and one or more further viewer applications at corresponding further remote clients during the live data conference, and wherein the further remote clients receive the shared document from the conferencing server. - View Dependent Claims (4, 5, 6)
an overlay editor configured to create a transparent window appearing to be displayed over the shared document and to create a user-defined object, wherein the viewer application is further configured to display the user-defined object at a user-specified position within the transparent window.
-
-
5. The apparatus of claim 4, further comprising:
a communication module configured to send data representing the user-defined object and user-specified position to a further client, the further client having a further viewer application to display the user-defined object at the user-specified position within a further transparent window at the client, the further transparent window appearing to be displayed over the shared document.
-
6. The apparatus of claim 5, wherein:
-
the communication module is further configure to receive, through the conferencing server, data representing a further user-defined object and a further user-specified position originating from the further client; and
the viewer application is further configured to display the further user-defined object at the further user-specified position within the transparent window, the transparent window appearing to be displayed over the shared document.
-
-
7. A apparatus for use in a server, comprising:
-
an application invoker configured to invoke an application to produce an application screen;
a server document sharing application configured to send the application screen to a virtual device, the virtual device to produce a shared screen for use in a live data conference;
a communication module configured to send the shared screen to a conferencing server, the conferencing server to distribute the shared screen to a plurality of remote clients, each of the remote clients having a viewer application to display the shared screen, the shared screen being simultaneously displayed by each of the viewer applications during the live data conference; and
a file editing application configured to receive user input from one of the remote clients and drive the application to edit the application screen based on the user input to produce an application screen update, wherein the server document sharing application is further configured to receive the application screen update from the application and send the application screen update to the virtual device, the virtual device to create a shared screen update, the shared screen update representing only the portion of the application screen that was edited, and wherein the communication module is further configured to send the shared screen update to the conferencing server, the conferencing server to distribute the shared screen update to the remote clients, each of the viewer applications to update the display of the application screen with the shared screen update, the shared screen update being simultaneously displayed by each of the viewer applications during the live data conference. - View Dependent Claims (8)
the server document sharing application is further configured to replace the default device driver with a virtual device driver associated with the virtual device.
-
-
9. An apparatus for use in a client for sharing a file located at a remote server, the apparatus comprising:
-
a client document sharing application configured to receive a shared screen for use in a live data conference from a conferencing server, the shared screen created at a remote server by sending an application screen to a virtual device from an application associated with the file; and
a viewer application configured to display the shared screen at the client, wherein the shared screen can be simultaneously displayed by the viewer application and one or more further viewer applications at corresponding further remote clients during the live data conference, and wherein the further remote clients receive the shared screen from the conferencing server. - View Dependent Claims (10, 11, 12, 13, 14)
the client document sharing application is further configured to receive user input from a user; and
the apparatus further comprises a communication module configured to send the user input to the conferencing server, the conferencing server to send the user input to a file editing application at the remote server, the file editing application to drive the application to edit the application screen based on the user input to produce an application screen update.
-
-
11. The apparatus of claim 10, wherein:
-
the communication module is further configured to receive a shared screen update, the shared screen update created at the remote server by sending the application screen update to the virtual device from the application; and
the viewer application is further configured to update the display of the shared screen with the shared screen update, wherein the shared screen update can be simultaneously displayed by the viewer application and one or more of the further viewer applications at corresponding further remote clients during the live data conference.
-
-
12. The apparatus of claim 11, wherein the shared screen update represents only the portion of the application screen that was edited.
-
13. The apparatus of claim 12, further comprising:
a display device attached to the client, the display device to present a display of the shared screen.
-
14. The apparatus of claim 13, wherein:
the viewer application is further configured to revise the display of the shared screen on the display device using the shared screen update.
-
15. An apparatus, comprising:
-
a server document sharing application configured to send an application screen generated by an application to a virtual device, the virtual device to create a shared screen for use in a live data conference, the shared screen being created at a server;
a server communication module configured to send the shared screen to a conferencing server, the conferencing server to distribute the shared screen to a plurality of remote clients;
a display device attached to each of the remote clients, each of the display devices to simultaneously present a display of the shared screen during the live data conference;
a client document sharing application to collect user input from a user at one of the remote clients;
a client communication module configured to send the user input to the conferencing server, the conferencing server to send the user input to the server; and
an application invoker to a file editing application at the remote server to edit the application screen based on the user input to produce an application screen update, the server document sharing application to send the application screen update to the virtual device, the virtual device to create a shared screen update at the server, wherein the shared screen update represents only the portion of the application screen that was edited, wherein the server communication module is further configured to send the shared screen update to the conferencing server, the conferencing server to distribute the shared screen update to the plurality of remote clients, and wherein a viewer application revises the display of the shared screen on each display device using the shared screen update.
-
-
16. A method for automatically sharing a file, comprising:
-
printing a file, on an application server, to a virtual printer from an application associated with the file, the virtual printer to create a shared document for use in a live data conference; and
sending the shared document to a conferencing server, the conferencing server to distribute the shared document to a plurality of remote clients; and
displaying the shared document at each remote client with a viewer application, wherein the shared document can be simultaneously displayed by each of the viewer applications during the live data conference. - View Dependent Claims (17)
receiving data representing a user-defined object and a user-specified position from one of the remote clients, the user-specified position indicating the position of the user-defined object within a transparent window, the transparent window appearing to be displayed over the shared document; and
distributing the data representing the user-defined object and the user-specified position to each of the rest of the remote clients, each of the rest of the remote clients to display the user-defined object at the user-specified position within a transparent window, the transparent window appearing to be displayed over the shared document.
-
-
18. A method for use in a client, comprising:
-
receiving a shared document for use in a live data conference from a conferencing server, the shared document created at a remote server by printing a file to a virtual printer from an application associated with the file; and
displaying the shared document using a viewer application at the client, wherein the shared document can be simultaneously displayed by the viewer application and one or more further viewer applications at corresponding further remote clients during the live data conference, and wherein the further remote clients receive the shared document from the conferencing server. - View Dependent Claims (19, 20, 21)
creating a transparent window appearing to be displayed over the shared document;
creating a user-defined object; and
displaying the user-defined object at a user-specified position within the transparent window.
-
-
20. The method of claim 19, further comprising:
sending data representing the user-defined object and user-specified position to the conferencing server, the conferencing server to send the data representing the user-defined object and user-specified position to a further client, and displaying the user-defined object at the user-specified position within a further transparent window at the further client, the further transparent window appearing to be displayed over the shared document.
-
21. The method of claim 20, further comprising:
-
receiving, through the conferencing server, data representing a further user-defined object and a further user-specified position originating from the further client; and
displaying the further user-defined object at the further user-specified position within the transparent window, the transparent window appearing to be displayed over the shared document.
-
-
22. A method for use in a server, comprising:
-
invoking an application to produce an application screen;
sending the application screen to a virtual device to produce a shared screen for use in a live data conference;
sending the shared screen to a conferencing server, the conferencing server to distribute the shared screen to a plurality of remote clients;
displaying the shared screen at each of the remote clients with a corresponding viewer application;
receiving user input from one of the remote clients;
driving the application to edit the application screen based on the user input to produce an application screen update;
sending the application screen update to the virtual device, the virtual device to create a shared screen update, the shared screen update representing only the portion of the application screen that was edited; and
sending the shared screen update to the conferencing server, the conferencing server to distribute the shared screen update to the remote clients, and updating the display of the application screen with the shared screen update, the shared screen update being simultaneously displayed by each of the viewer applications during the live data conference. - View Dependent Claims (23)
replacing the default device driver with a virtual device driver associated with the virtual device.
-
-
24. A method for use in a client for sharing a file located at a remote server, the method comprising:
-
receiving a shared screen for use in a live data conference from a conferencing server, the shared screen created at a remote server by sending an application screen to a virtual device from an application associated with the file; and
displaying the shared screen using a viewer application at the client, wherein the shared screen can be simultaneously displayed by the viewer application and one or more further viewer applications at corresponding further remote clients during the live data conference, and wherein the further remote clients receive the shared screen from the conferencing server. - View Dependent Claims (25, 26, 27, 28, 29)
receiving user input from a user;
sending the user input to the conferencing server, the conferencing server to send the user input to the remote server; and
driving the application to edit the application screen based on the user input to produce an application screen update.
-
-
26. The method of claim 25, further comprising:
-
receiving a shared screen update from the conferencing server, the shared screen created at the remote server by sending the application screen update to the virtual device from the application; and
updating the display of the shared screen with the shared screen update, wherein the shared screen update can be simultaneously displayed by the viewer application and one or more of the further viewer applications at corresponding further remote clients during the live data conference.
-
-
27. The method of claim 26, wherein the shared screen update represents only the portion of the application screen that was edited.
-
28. The method of claim 27, further comprising:
presenting a display of the shared screen on a display device attached to the client.
-
29. The method of claim 28, further comprising:
revising the display of the shared screen on the display device using the shared screen update.
-
30. A method, comprising:
-
creating a shared screen for use in a live data conference, the shared screen being created at a server by sending an application screen generated by an application to a virtual device;
sending the shared screen to a conferencing server, the conferencing server to distribute the shared screen to a plurality of remote clients;
simultaneously presenting, on a display device attached to each of the remote clients, a display of the shared screen during the live data conference;
collecting user input from a user at one of the remote clients;
sending the user input to the conferencing server, the conferencing server to send the user input to the remote server;
causing the application at the remote server to edit the application screen based on the user input to produce an application screen update;
creating a shared screen update at the remote server by sending the application screen update to the virtual device, wherein the shared screen update represents only the portion of the application screen that was edited;
sending the shared screen update to the conferencing server, the conferencing server to distribute the shared screen update to the plurality of remote clients; and
revising the display of the shared screen on each display device using the shared screen update.
-
-
31. A computer program automatically sharing a file, the computer program tangibly stored on a computer-readable medium, containing instructions for causing a computer to:
-
print a file, on an application server, to a virtual printer from an application associated with the file, the virtual printer to create a shared document for use in a live data conference; and
send the shared document to a conferencing server, the conferencing server to distribute the shared document to a plurality of remote clients; and
displaying the shared document at each remote client with a viewer application, wherein the shared document can be simultaneously displayed by each of the viewer applications during the live data conference. - View Dependent Claims (32)
receive data representing a user-defined object and a user-specified position from one of the remote clients, the user-specified position indicating the position of the user-defined object within a transparent window, the transparent window appearing to be displayed over the shared document; and
distribute the data representing the user-defined object and the user-specified position to each of the rest of the remote clients, each of the rest of the remote clients to display the user-defined object at the user-specified position within a transparent window, the transparent window appearing to be displayed over the shared document.
-
-
33. A computer program for use in a client, the computer program tangibly stored on a computer-readable medium, containing instructions for causing a computer to:
-
receive a shared document for use in a live data conference from a conferencing server, the shared document created at a remote server by printing a file to a virtual printer from an application associated with the file; and
display the shared document using a viewer application at the client, wherein the shared document can be simultaneously displayed by the viewer application and one or more further viewer applications at corresponding further remote clients during the live data conference, and wherein the further remote clients receive the shared document from the conferencing server. - View Dependent Claims (34, 35, 36)
create a transparent window appearing to be displayed over the shared document;
create a user-defined object; and
display the user-defined object at a user-specified position within the transparent window.
-
-
35. The computer program of claim 34, further including instructions for causing a computer to:
send data representing the user-defined object and user-specified position to the conferencing server, the conferencing server to send the data representing the user-defined object and user-specified position to a further client, and displaying the user-defined object at the user-specified position within a further transparent window at the further client, the further transparent window appearing to be displayed over the shared document.
-
36. The computer program of claim 35, further including instructions for causing a computer to:
-
receive, through the conferencing server, data representing a further user-defined object and a further user-specified position originating from the further client; and
display the further user-defined object at the further user-specified position within the transparent window, the transparent window appearing to be displayed over the shared document.
-
-
37. A computer program for use in a server, the computer program tangibly stored on a computer-readable medium, containing instructions for causing a computer to:
-
invoke an application to produce an application screen;
send the application screen to a virtual device to produce a shared screen for use in a live data conference;
send the shared screen to a conferencing server, the conferencing server to distribute the shared screen to a plurality of remote clients;
display the shared screen at each of the remote clients with a corresponding viewer application;
receive user input from one of the remote clients;
drive the application to edit the application screen based on the user input to produce an application screen update;
send the application screen update to the virtual device, the virtual device to create a shared screen update, the shared screen update representing only the portion of the application screen that was edited; and
send the shared screen update to the conferencing server, the conferencing server to distribute the shared screen update to the remote clients; and
update the display of the application screen with the shared screen update, the shared screen update being simultaneously displayed by each of the viewer applications during the live data conference. - View Dependent Claims (38)
replace the default device driver with a virtual device driver associated with the virtual device.
-
-
39. A computer program for use in a client for sharing a file located at a remote server, the computer program tangibly stored on a computer-readable medium, containing instructions for causing a computer to:
-
receive a shared screen for use in a live data conference from a conferencing server, the shared screen created at a remote server by sending an application screen to a virtual device from an application associated with the file; and
display the shared screen using a viewer application at the client, wherein the shared screen is simultaneously displayable by the viewer application and one or more further viewer applications at corresponding further remote clients during the live data conference, and wherein the further remote clients receive the shared screen from the conferencing server. - View Dependent Claims (40, 41, 42, 43, 44)
receive user input from a user;
send the user input to the conferencing server, the conferencing server to send the user input to the remote server; and
drive the application to edit the application screen based on the user input to produce an application screen update.
-
-
41. The computer program of claim 40, further including instructions for causing a computer to:
-
receive a shared screen update from the conferencing server, the shared screen created at the remote server by sending the application screen update to the virtual device from the application; and
update the display of the shared screen with the shared screen update, wherein the shared screen update is simultaneously displayable by the viewer application and one or more of the further viewer applications at corresponding further remote clients during the live data conference.
-
-
42. The computer program of claim 41, wherein the shared screen update represents only the portion of the application screen that was edited.
-
43. The computer program of claim 42, further comprising:
present a display of the shared screen on a display device attached to the client.
-
44. The computer program of claim 43, further comprising:
revise the display of the shared screen on the display device using the shared screen update.
-
45. A computer program, the computer program tangibly stored on a computer-readable medium, containing instructions for causing a computer to:
-
create a shared screen for use in a live data conference, the shared screen being created at a server by sending an application screen generated by an application to a virtual device;
send the shared screen to a conferencing server, the conferencing server to distribute the shared screen to a plurality of remote clients;
simultaneously present, on a display device attached to each of the remote clients, a display of the shared screen during the live data conference;
collect user input from a user at one of the remote clients;
send the user input to the remote server;
cause the application at the remote server to edit the application screen based on the user input to produce an application screen update;
create a shared screen update at the remote server by sending the application screen update to the virtual device, wherein the shared screen update represents only the portion of the application screen that was edited;
send the shared screen update to the conferencing server, the conferencing server to send the user input to the plurality of remote clients; and
revise the display of the shared screen on each display device using the shared screen update.
-
Specification