EDITING AN UNHOSTED THIRD PARTY APPLICATION
First Claim
Patent Images
1. A system comprising:
- a third party application user interface;
a third party application engine, coupled to the third party application user interface, configured to implement an unhosted third party application on a client-side network, wherein the client-side network is client-side relative to a server-side application server, and the unhosted third party application is not hosted by the server-side application server;
a client-side remote communications engine coupled to the third party application engine;
the third party application user interface receives a request from a user to process a file using the unhosted third party application;
the third party application engine transfers the request to the client-side remote communications engine;
the client-side remote communications engine establishes a session to a remote application server on a server-side network;
the client-side remote communications engine transfers the request to the remote application server;
the client-side remote communications engine receives a response to the request from the remote application server;
the third party application engine displays at least a portion of the file, modified in accordance with the response, at the third party application user interface;
the third party application engine instructs the client-side remote communications engine to initiate a procedure to close the session in response to detecting a termination stimulus.
3 Assignments
0 Petitions
Accused Products
Abstract
A document editing system using a third party application having an embedded document editing module is disclosed. The system include a client-side document editing engine that accepts requests to edit a document from and displays at least a portion of the document to a user of the client-side system. The system includes a first server-side application engine that processes the requests to edit the document. The system can include a second server-side data storage engine that stores the document in a remote storage location.
-
Citations
58 Claims
-
1. A system comprising:
-
a third party application user interface; a third party application engine, coupled to the third party application user interface, configured to implement an unhosted third party application on a client-side network, wherein the client-side network is client-side relative to a server-side application server, and the unhosted third party application is not hosted by the server-side application server; a client-side remote communications engine coupled to the third party application engine; the third party application user interface receives a request from a user to process a file using the unhosted third party application; the third party application engine transfers the request to the client-side remote communications engine; the client-side remote communications engine establishes a session to a remote application server on a server-side network; the client-side remote communications engine transfers the request to the remote application server; the client-side remote communications engine receives a response to the request from the remote application server; the third party application engine displays at least a portion of the file, modified in accordance with the response, at the third party application user interface; the third party application engine instructs the client-side remote communications engine to initiate a procedure to close the session in response to detecting a termination stimulus. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57)
-
-
12. A system for enabling a user to communicate with an application server to edit a file and save file data in a storage repository controlled by the user, distinct from data storage managed by the application server, comprising:
-
a server-side remote communications engine for establishing a session with a client-side remote communications engine; a remote application server engine, coupled to the server-side remote communications engine; a server-side application logic engine, coupled to the remote application server engine, configured to perform application logic for processing a file opened in an application; wherein in operation, the server-side remote communications engine receives a request to process the file from the client-side remote communications engine; the remote application server engine transfers the request to the server-side application logic engine; the server-side application logic engine processes file data in accordance with the request and transfers a result of the processing to the server-side remote communications engine; the server-side remote communications engine sends the result to the client-side remote communications engine; the server side remote communications engine closes the established session in response to detecting a termination stimulus. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A system enabling a user to access and utilize remote applications, not owned or maintained by said user, on files stored and maintained by said user on a system physically separate from an application server system, comprising:
-
a third-party'"'"'s application software implemented in hardware, wherein, in operation, said third-party'"'"'s software accepts user input from a user interface to edit documents from a document interface; a remote communication software engine, coupled with said third-party'"'"'s software, wherein, in operation, said remote communication software engine communicates with a server-side communication software engine;
wherein, in operation, said remote communication software engine and server-side communication software engine, communicate with a common protocol;a remote application module implementing document application logic for the function of document editing;
wherein software implementing said protocol is a component of document editing application logic software;said remote application module, coupled with a web server and said server-side communication software engine;
said remote application module, wherein, in operation, communicating an editable document to a web browser on the third-party'"'"'s application;a document repository that stores file data for the third-party application under control of said user. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A method, comprising:
-
using a computer system configured using a third-party'"'"'s application coupled to a remote communications software module, and a file storage repository; accepting requests from a user to process a document; transferring said requests to said remote communications software module; establishing a session, through the remote communications software module, through the internet, to an application server at a remote location; further transferring said requests to said remote application server; accepting said requests at said remote application server, configured with a server-side remote communications software module; transferring said requests to an application logic module to perform the request; returning a response to said server-side remote communications software module; further returning said response, from said server-side remote communication software module, through the network, to said third-party'"'"'s application; communicating with said remote server to edit said document, and saving the file data in said file storage repository controlled by said third party application and closing said session. - View Dependent Claims (38, 39)
-
-
40. A method, comprising:
-
using a third-party'"'"'s software application; selecting a document to open; sending the request using the internet protocol, to an application server, said application server, wherein, in operation, is configured to perform the application logic to edit documents; receiving the universal resource locator (URL) of the document at the third-party'"'"'s server; sending said universal resource locator (URL) of the document from said third-party'"'"'s server to said web browser; using said universal resource locator (URL) to open the document content in human-readable format, on said web browser.
-
-
41. A method, comprising:
-
using a third-party'"'"'s software application; selecting a document to save; sending the request using the internet protocol, to an application server, said application server, wherein, in operation, is configured to perform the application logic to edit documents; sending at least one parameter in the request, a publicly accessible universal resource locator (URL) of a service, wherein, in operation, said service is configured to fetch the content of the updated document from the application server and save it in a location specified in the third-party'"'"'s document repository; transferring such content to the location specified in the URL parameter; notifying the status of completion of said transfer to said application server; completing the saving of said data in the third-party'"'"'s repository; using said request to transfer content to a third-party'"'"'s repository without the presence of a firewall.
-
-
42. A method, comprising:
-
using a third-party'"'"'s software application; selecting a document to save; sending the request using the internet protocol, to an application server, said application server, wherein, in operation, is configured to perform the application logic to edit documents; sending at least one message to a persistent remote agent, wherein, in operation, said agent, is configured to fetch the content of the updated document from the application server and save it in a location specified in the third-party'"'"'s document repository, using a secure internet protocol; initiating the transfer of said content from the document server to the third-party'"'"'s document repository; notifying the status of completion of said transfer to said application server; completing the saving of said data in the third-party'"'"'s repository. - View Dependent Claims (43)
-
-
44. A system for enabling a user to access and utilize remote applications, not owned or maintained by the user, on documents stored and maintained by the user, comprising:
-
a remote application implementation engine at a client-side network, wherein, in operation, the remote application implementation engine implements application document editing logic for a third party application; a user interface engine at the client-side network configured to accept input from a user; a third party application software engine at the client-side network, coupled to the user interface engine, configured to display a document editing interface for the third party application; a client-side remote communication engine at the client-side network, coupled to the remote application implementation engine and the third party application software engine, configured to communicate with a first server-side remote communication engine at a first server-side application server using a common protocol, wherein, in operation; the client-side remote communication engine sends the input from the user to the first server-side remote communication engine at the first server-side application server; the client-side remote communication engine receives data associated with the third party application from the server-side remote communication engine in response to sending the input; the third party application software engine displays at least a portion of a document in the document editing interface for the third party application in accordance with the data; a document repository interface engine coupled to the third party application software engine configured to give control of storage of the document in a data store of a second server-side data server to the user, wherein, in operation; the user interface engine receives document edit commands from the user in a user interface of the user interface engine in accordance with the document editing logic for the third party application; the client-side remote communication engine sends the document edit commands to the first server-side application server; the third party application software engine displays the document in the document editing interface for the third party application with edits appropriate for the document edit commands; the document repository interface engine facilitates storage of at least a portion of the edited document at the second server-side data server.
-
-
45. A system comprising:
-
an application interface for enabling a user to interface with a document management engine on a client-side network; a client-side remote application programming interface (API) coupled to the application interface configured to establish a session between the document management engine on the client-side network and an application server on a server-side network; a document editing module embedded in a third party application; wherein, in operation, a session request associated with a document is provided through the application interface to the client-side remote API; a session request is sent over the client-side remote API to a server-side remote API on a second private network; the client-side remote API receives at least a portion of the document in association with the session request; the application interface renders the at least a portion of the document in an editable format; the document management engine facilitates editing of the document; the client-side remote API sends a save notification from the document management engine to the server-side remote API; the client-side remote API closes the requested session.
-
-
58. A system comprising:
-
a server-side remote application programming interface (API) on a second private network; a document processing engine; a remote document repository interface coupled to the server-side remote API; wherein, in operation, the server-side remote API receives a session request, including document identification data, from a client-side remote API on a first private network; the server-side remote API invokes the document processing engine in response to receiving the session request; the remote document repository interface sends an identifier of the document to a document repository on a third private network, wherein the document is suitable for processing using an application associated with the document processing engine; the server-side remote API receives document processing commands to the client-side remote API and sends responses to the document processing commands to the client-side remote API; document data is sent through the remote document repository interface to the document repository in accordance with the document processing commands.
-
Specification