File printing method, device, system, computer device and storage medium
By communicating between the target application's cloud server and the service provider's cloud server, and using print task identifiers and file identifiers to control the cloud printer to print, the high cost problem caused by software and hardware support in existing technologies is solved, and low-cost and high-security cloud printing is achieved.
Patent Information
- Application Number
- CN202310183957.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-22
- Publication Date
- 2026-08-25
- Estimated Expiration
- 2043-02-22
AI Technical Summary
Existing cloud printing technologies require additional software and hardware support within enterprises, resulting in higher printing costs.
By communicating between the target application's cloud server and the service provider's cloud server, and using print task identifiers and file identifiers for data transmission, the cloud printer can be directly controlled to print, avoiding additional software and hardware requirements.
It greatly reduces printing costs and improves data security during the printing process.
Smart Images

Figure CN118535104B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to document printing methods, apparatus, computer equipment, storage media, and computer program products. Background Technology
[0002] With the development of computer technology, much of the data people need can be obtained through the internet. For example, data can be searched online or obtained from other users via email, instant messaging applications, and other tools. In terms of presentation, all of this data falls under the category of electronic data. However, in real life, many scenarios still require paper data (or paper documents). This is especially true within companies, where it is frequently necessary to print contracts, tender documents, office materials, and other paper documents.
[0003] Currently, businesses can fulfill their printing needs through cloud printing. However, existing cloud printing technologies require businesses to prepare dedicated computers or servers to connect to printers, and install print management software on these dedicated printers to handle internal printing requests. Due to the need for additional hardware and software support, printing costs are relatively high. Summary of the Invention
[0004] Therefore, it is necessary to provide document printing methods, apparatus, systems, computer equipment, computer-readable storage media, and computer program products that can save printing costs in response to the above-mentioned technical problems.
[0005] On one hand, this application provides a document printing method. The method includes: upon receiving a print request for a document to be printed triggered by a target application, determining an associated print task based on a print file identifier carried in the print request; the print task includes a print task identifier; sending the print task to a service provider cloud server; the print task instructing the service provider cloud server to call a task data acquisition interface provided by the sender of the print task to send a data acquisition request; receiving the data acquisition request, parsing the print task identifier from the data acquisition request, and determining the associated print file identifier based on the print task identifier; obtaining print data corresponding to the document to be printed based on the print file identifier, and sending the print data to the service provider cloud server; the service provider cloud server controls a cloud printer to print based on the print data.
[0006] On the other hand, this application also provides a document printing device. The device includes: a print request receiving module, configured to, upon receiving a print request for a document to be printed triggered by a target application, determine an associated print task based on a print file identifier carried in the print request; the print task includes a print task identifier; a print task sending module, configured to send the print task to a service provider cloud server; the print task instructs the service provider cloud server to call a task data acquisition interface provided by the sender of the print task to send a data acquisition request; a file identifier obtaining module, configured to receive the data acquisition request, parse the print task identifier from the data acquisition request, and determine the associated print file identifier based on the print task identifier; and a print data sending module, configured to obtain print data corresponding to the document to be printed based on the print file identifier, and send the print data to the service provider cloud server; the service provider cloud server is configured to control a cloud printer to print based on the print data.
[0007] On the other hand, this application also provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and the processor, when executing the computer program, performs the following steps: upon receiving a print request for a document to be printed triggered by a target application, determining an associated print task based on a print file identifier carried in the print request; the print task includes a print task identifier; sending the print task to a service provider cloud server; the print task instructing the service provider cloud server to call a task data acquisition interface provided by the sender of the print task to send a data acquisition request; receiving the data acquisition request, parsing the print task identifier from the data acquisition request, and determining the associated print file identifier based on the print task identifier; obtaining print data corresponding to the document to be printed based on the print file identifier, and sending the print data to the service provider cloud server; the service provider cloud server controls a cloud printer to print based on the print data.
[0008] On the other hand, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps: upon receiving a print request for a document to be printed triggered by a target application, determining an associated print task based on a print file identifier carried in the print request; the print task includes a print task identifier; sending the print task to a service provider cloud server; the print task instructing the service provider cloud server to call a task data acquisition interface provided by the sender of the print task to send a data acquisition request; receiving the data acquisition request, parsing the print task identifier from the data acquisition request, and determining the associated print file identifier based on the print task identifier; obtaining print data corresponding to the document to be printed based on the print file identifier, and sending the print data to the service provider cloud server; the service provider cloud server controls a cloud printer to print based on the print data.
[0009] On the other hand, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps: upon receiving a print request for a document to be printed triggered by a target application, determining an associated print task based on a print file identifier carried in the print request; the print task includes a print task identifier; sending the print task to a service provider cloud server; the print task instructing the service provider cloud server to call a task data acquisition interface provided by the sender of the print task to send a data acquisition request; receiving the data acquisition request, parsing the print task identifier from the data acquisition request, and determining the associated print file identifier based on the print task identifier; obtaining print data corresponding to the document to be printed based on the print file identifier, and sending the print data to the service provider cloud server; the service provider cloud server controls a cloud printer to print based on the print data.
[0010] The aforementioned document printing method, apparatus, computer equipment, storage medium, and computer program product, upon receiving a print request for a document to be printed, determine the associated print task based on the print file identifier carried in the print request. This print task includes a print task identifier. The print task is then sent to the service provider's cloud server. This print task instructs the service provider's cloud server to call the task data acquisition interface provided by the sender of the print task to send a data acquisition request. The system receives the data acquisition request, parses the print task identifier from the request, determines the associated print file identifier based on the print task identifier, obtains the print data corresponding to the document to be printed based on the print file identifier, and sends the print data to the service provider's cloud server. The service provider's cloud server controls the cloud printer to print based on the printing data, enabling cloud printing through the target application. During the printing process, the target application's cloud server can communicate directly with the service provider's cloud server, controlling the cloud printer to print. The entire printing process does not require additional hardware or software, greatly saving printing costs. Furthermore, by identifying the print job associated with the print file identifier, and the print job containing the print job identifier, the target application's cloud server and the service provider's cloud server can complete the printing process through the print job and the job identifier, avoiding sending the print file identifier to the service provider's cloud server and improving data security during the printing process.
[0011] On one hand, this application provides a document printing method. The method includes: upon receiving a print task sent by a cloud server corresponding to a target application, calling a task data acquisition interface provided by the cloud server corresponding to the target application to send a data acquisition request; the print task is determined by the cloud server corresponding to the target application upon receiving a print request for a document to be printed triggered by the target application, and there is an association between the print task identifier of the print task and the print file identifier carried in the print request; the data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the document to be printed based on the print file identifier, and send the print data to the service provider cloud server; receiving the print data, and controlling the cloud printer to print based on the print data.
[0012] On the other hand, this application also provides a document printing device. The device includes: a request sending module, configured to, upon receiving a print task sent by a cloud server corresponding to a target application, call a task data acquisition interface provided by the cloud server corresponding to the target application to send a data acquisition request; the print task is determined by the cloud server corresponding to the target application upon receiving a print request triggered by the target application for a document to be printed, and there is an association between the print task identifier of the print task and the print file identifier carried in the print request; the data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the document to be printed based on the print file identifier, and send the print data to the service provider cloud server; and a print data receiving module, configured to receive the print data and control the cloud printer to print based on the print data.
[0013] On the other hand, this application also provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps: upon receiving a print task sent by a cloud server corresponding to a target application, calling a task data acquisition interface provided by the cloud server corresponding to the target application to send a data acquisition request; the print task is determined by the cloud server corresponding to the target application upon receiving a print request triggered by the target application for a document to be printed, and there is an association between the print task identifier of the print task and the print file identifier carried in the print request; the data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the document to be printed based on the print file identifier, and send the print data to the service provider cloud server; receive the print data, and control the cloud printer to print based on the print data.
[0014] On the other hand, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps: upon receiving a print task sent by a cloud server corresponding to a target application, calling a task data acquisition interface provided by the cloud server corresponding to the target application to send a data acquisition request; the print task is determined by the cloud server corresponding to the target application upon receiving a print request triggered by the target application for a file to be printed, and there is an association between the print task identifier of the print task and the print file identifier carried in the print request; the data acquisition request instructs the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider cloud server; receive the print data, and control the cloud printer to print based on the print data.
[0015] On the other hand, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps: upon receiving a print task sent by a cloud server corresponding to a target application, calling a task data acquisition interface provided by the cloud server corresponding to the target application to send a data acquisition request; the print task is determined by the cloud server corresponding to the target application upon receiving a print request triggered by the target application for a file to be printed, and there is an association between the print task identifier of the print task and the print file identifier carried in the print request; the data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider cloud server; receive the print data, and control the cloud printer to print based on the print data.
[0016] The aforementioned document printing method, apparatus, computer equipment, storage medium, and computer program products, upon receiving a print task sent by the cloud server corresponding to the target application, call the task data acquisition interface provided by the cloud server corresponding to the target application to send a data acquisition request, receive print data, and control the cloud printer to print based on the print data. This achieves cloud printing through the target application. Since the cloud server of the target application can directly communicate with the server's cloud server during the printing process, and control the cloud printer through the server's cloud server, the entire printing process does not require additional hardware or software, greatly saving printing costs. Furthermore, by identifying the print task associated with the print file identifier, and since the print task contains the print task identifier, the cloud server of the target application and the server's cloud server can complete the printing process through the print task and the task identifier, avoiding sending the print file identifier to the server's cloud server and improving data security during the printing process.
[0017] On the other hand, this application also provides a document printing system. The system includes a terminal with a target application installed, a cloud server for the target application, a service provider's cloud server, and a cloud printer; wherein:
[0018] The terminal is used to send a print request for a file to be printed to the cloud server of the target application through the target application; the print request carries a print file identifier of the file to be printed;
[0019] The cloud server of the target application is used to determine the associated print task based on the print file identifier carried in the print request when it receives the print request, and send the print task carrying the print task identifier to the service provider cloud server.
[0020] The service provider's cloud server is used to send a data acquisition request by calling the task data acquisition interface provided by the cloud server of the target application when it receives the printing task.
[0021] The cloud server of the target application is also used to receive the data acquisition request, parse the print task identifier from the data acquisition request, determine the associated print file identifier based on the print task identifier, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider cloud server.
[0022] The service provider's cloud server is also used to control the cloud printer to print based on the printing data.
[0023] The aforementioned document printing system enables cloud printing through the target application. During the printing process, the target application's cloud server can directly communicate with the server's cloud server, controlling the cloud printing process through the server's cloud server. The entire printing process does not require additional hardware or software, greatly saving printing costs. Furthermore, by identifying the print job associated with the print file identifier, and by including the print job identifier in the print job, the target application's cloud server and the server's cloud server can complete the printing process through the print job and the job identifier. This avoids sending the print file identifier to the server's cloud server, improving data security during the printing process. Attached Figure Description
[0024] Figure 1 This is a diagram illustrating the application environment of a document printing method in one embodiment.
[0025] Figure 2 This is a flowchart illustrating a document printing method in one embodiment;
[0026] Figure 3A This is a schematic diagram of the interface related to the document printing method in one embodiment;
[0027] Figure 3B This is a schematic diagram of the interface related to the document printing method in another embodiment;
[0028] Figure 3C This is a schematic diagram of the interface related to the document printing method in another embodiment;
[0029] Figure 3D This is a schematic diagram of the interface related to the document printing method in another embodiment;
[0030] Figure 4 This is a schematic diagram illustrating the changes in the terminal's printing interface in one embodiment;
[0031] Figure 5 This is a flowchart illustrating a document printing method in another embodiment;
[0032] Figure 6 This is a structural block diagram of a document printing system in one embodiment;
[0033] Figure 7 This is a timing diagram of a file printing method in a specific embodiment;
[0034] Figure 8 A timing diagram of the file printing method in another specific embodiment;
[0035] Figure 9 This is a timing diagram of the file printing method in yet another specific embodiment;
[0036] Figure 10 This is a structural block diagram of a document printing device in one embodiment;
[0037] Figure 11 This is a structural block diagram of a document printing device in another embodiment;
[0038] Figure 12 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0039] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0040] The document printing method provided in this application embodiment can be applied to, for example... Figure 1 In the application environment shown, terminal 102 has the target application installed. Terminal 102 communicates with the cloud server 104 of the target application via the network. The cloud server 104 of the target application communicates with the service provider server 106 of the cloud printer via the network. The service provider server 106 of the cloud printer communicates with the cloud printer 108 via the network. Specifically, the user can submit printing parameters through terminal 102. Terminal 102 can trigger a print request for a file to be printed in the target application through the target application. After receiving the print request, the cloud server 104 of the target application can determine the associated print task based on the print file identifier carried in the print request. The print task carries a print task identifier. The cloud server 104 of the target application can further send the print task to the service provider cloud server 106. After receiving the print task, the service provider cloud server 106 can call the task data acquisition interface provided by the cloud server 104 of the target application to send a data acquisition request. The data acquisition request carries the print task identifier of the print task. When the cloud server 104 of the target application receives the data acquisition request, it can determine the associated print file identifier based on the print task identifier carried in the data acquisition request, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider cloud server 106. The service provider cloud server 106 can send the print task to the cloud printer 108 based on the print data and control the cloud printer 108 to print. During the printing process, the cloud printer 108 can monitor the device status of the service provider cloud server 106. After printing is completed, the cloud printer 108 can report the printing result to the service provider cloud server 106. The printing result can eventually be sent to the terminal through the target application's cloud server and displayed to the user on the terminal.
[0041] It should be noted that in practical applications, there can be multiple cloud printers, and different cloud printers can correspond to different service providers. Thus, the cloud server of the target application can connect to multiple service provider cloud servers and control different cloud printers for printing through multiple service provider cloud servers. Different cloud printers belong to different user enterprises, thus meeting the printing needs of different user enterprises.
[0042] The target application's cloud server 104 and the service provider's cloud server 106 can be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers providing cloud computing services. The terminal can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, in-vehicle terminal, smart TV, etc., but is not limited to these. The terminal and server can be directly or indirectly connected via wired or wireless communication, which is not limited herein.
[0043] In one embodiment, such as the document printing method disclosed in this application, relevant data during the printing process can be stored on a blockchain.
[0044] In one embodiment, such as the document printing method disclosed in this application, multiple servers can form a blockchain, and the cloud server of the target application and the service provider's cloud server can be nodes on the blockchain.
[0045] In one embodiment, such as Figure 2 As shown, a document printing method is provided, which can be applied to... Figure 1 Taking cloud server 104 as an example, the following steps are included:
[0046] Step 202: Upon receiving a print request for a document to be printed triggered by the target application, determine the associated print job based on the print document identifier carried in the print request; the print job contains a print job identifier.
[0047] The "file to be printed" refers to the document to be printed. This file can be of various types, such as Word documents, PDFs, images, Excel files, etc. The number of files to be printed can be one or more. "Multiple" means at least two. This application does not limit the type or number of files to be printed. When there are multiple files to be printed, they can be files of the same format or different formats. For example, there can be two files to be printed: one can be a Word document, and the other can be a PDF. In practical applications, when a user selects to print multiple files simultaneously, these files can correspond to the same print job. In this case, all files to be printed are associated with the print job, and the print request can carry the print file identifier for each file to be printed.
[0048] The document to be printed can be a local file of the printer or a cloud file. A local file is a file located on the terminal where the target application is installed. A cloud file can be a file of various file types stored on the target application's cloud server or an online document. The target application refers to the application that can trigger printing; target applications include, but are not limited to, various communication applications, shopping applications, entertainment applications, etc. In some embodiments, the target application can be an instant messaging application, and the document to be printed can be a file received or sent during a user's session with the target application. See the examples below. Figure 3A For PDF files in instant messaging applications, users can long-press the file and select the "Print" button from the menu, triggering a subsequent printing process that sends a print request for the file to the target application's cloud server. (Reference) Figure 3B For PDF files in instant messaging applications during conversations, users can choose to open the file, triggering a pop-up window on the file content display page, such as... Figure 3B The menu shown allows you to select the "Print" button, which triggers the subsequent printing process, sending a print request for the file to the target application's cloud server. (Reference) Figure 3C For Word files within a conversation in an instant messaging application, users can long-press the file and select the "Print" button from the menu, triggering a subsequent printing process that sends a print request for the file to the target application's cloud server. (Reference) Figure 3D Users can also search for files within the instant messaging application. For the searched files, users can trigger pop-ups through the terminal interface, such as... Figure 3D The menu shown allows you to select the "Print" button, which triggers the subsequent printing process, sending a print request for the file to the target application's cloud server.
[0049] In some other embodiments, the target application may include a virtual cloud drive component, through which users can view cloud files stored on the target application's cloud server and trigger print requests for the cloud files.
[0050] A print request may include a print file identifier, which uniquely identifies the file to be printed. In some embodiments, the print request may also include other information, such as a printer identifier, a user identifier, and print parameters. The printer identifier uniquely identifies the printer selected by the user from the printer list, while the user identifier uniquely identifies the user of the target application that triggered the print request. Print parameters may include, for example, the number of copies, print area, print mode, color, etc.
[0051] Specifically, when a terminal with the target application installed detects a user's print request for a file to be printed in the target application, it sends the print request to the cloud server of the target application. After receiving the print request, the cloud server of the target application can parse the print request and obtain the data carried in the print request data packet. The data carried in the print request data packet includes at least a print file identifier. Based on the print file identifier, the cloud server of the target application can determine the related print jobs.
[0052] In one specific embodiment, the print job may be generated by the target application's cloud server before receiving the print request. For example, the target application's cloud server may generate a print job after receiving a preview request. Each print job in the target application's cloud server has an associated print file identifier. In a specific implementation, the target application's cloud server can associate the print job identifier with the print file identifier, and then determine the associated print job based on this association.
[0053] In another specific embodiment, the print job can be generated after receiving the print request. After receiving the print request, the cloud server of the target application can create a print job containing a print job identifier for the print request and establish an association between the print job identifier in the print job and the print file identifier parsed from the print request.
[0054] Step 204: Send a print task to the service provider's cloud server; the print task is used to instruct the service provider's cloud server to call the task data acquisition interface provided by the sender of the print task to send a data acquisition request.
[0055] In this context, the sender of the print job is the target application's cloud server, and the task data retrieval interface is an interface provided by the target application's cloud server. The data retrieval request is used to request data from the target application's cloud server. The data retrieval request carries a print job identifier, which is used to uniquely identify the print job.
[0056] Specifically, after generating a print job, the target application's cloud server can send the print job to the service provider's cloud server. Upon receiving the print job, the service provider's cloud server first obtains the print data required for the print job. Then, it can control the corresponding cloud printer to print based on the print data. When obtaining the print data, the service provider's cloud server can call the data acquisition interface provided by the target application's cloud server to send a data acquisition request to the target application's cloud server, and include a print job identifier in the data acquisition request. Thus, the target application's cloud server can determine the required print data based on the print job identifier carried in the data acquisition request.
[0057] In some embodiments, the cloud server of the target application can be connected to multiple server cloud servers via the network. The cloud server of the target application can store the association between the printer identifier and the server cloud server. Thus, after receiving a print request, the cloud server of the target application can select the associated server cloud server from the multiple server cloud servers according to the printer identifier carried in the print request, and send the print job to the selected server cloud server.
[0058] Step 206: Receive a data acquisition request, parse the print task identifier from the data acquisition request, and determine the associated print file identifier based on the print task identifier.
[0059] Specifically, after receiving a data acquisition request, the cloud server of the target application can parse the data acquisition request and obtain the print task identifier carried in the data acquisition request. After obtaining the print task identifier, the cloud server of the target application can further query the established association between print file identifiers and print tasks, thereby determining the print file identifier associated with the print task identifier carried in the data acquisition request.
[0060] Step 208: Obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider's cloud server; the service provider's cloud server is used to control the cloud printer to print based on the print data.
[0061] The print data refers to the data required for the cloud printer's printing process. In some embodiments, the print data may include print parameters and the print format file of the document to be printed. In other embodiments, the print data may also include print parameters and the file acquisition path of the document to be printed. In still other embodiments, the print format file of the document to be printed may be stored encrypted, in which case the print parameters may also include decryption parameters for the document to be printed.
[0062] Specifically, the print data of the document to be printed is stored in association with the print file identifier of the document to be printed. After the target application's cloud server determines the print file identifier, it can obtain the print data corresponding to the document to be printed based on the print file identifier. The target application's cloud server can then send the print data corresponding to the document to be printed to the service provider's cloud server, which can then control the corresponding cloud printer to print based on the print data.
[0063] In one specific embodiment, reference Figure 4 The diagram illustrates the changes in the terminal's printing interface in one embodiment. The user enters a printing device list page, where the terminal displays printing devices that meet certain criteria (device status, device permissions, etc.). After selecting a specific device, the page displays the user authorization agreement for that device. Following the selection of the printing device, the user enters a print preparation page. During this process, the terminal can send the document to be printed to the target application's cloud server. After print preparation is complete, the terminal can further display a parameter setting page. On this page, the user can set printing parameters. If the user clicks "Print Preview," the terminal can send a preview request to the target application's cloud server to initiate the print preview process. If the user clicks "Print," the terminal can send a print request to the target application's cloud server to initiate the print process, thereby causing the target application's cloud server to submit the print task to the service provider's cloud server. Finally, the printing device reports the print result through the service provider's cloud server and displays it to the user.
[0064] In the above document printing method, when the target application's cloud server receives a print request for a file to be printed, it generates a print task containing a print task identifier, associates the print task identifier with the print file identifier carried in the print request, and sends the print task to the service provider's cloud server. The print task instructs the service provider's cloud server to call the task data acquisition interface provided by the sender of the print task to send a data acquisition request, receive the data acquisition request, parse the print task identifier from the data acquisition request, determine the associated print file identifier based on the print task identifier, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider's cloud server. The server controls the cloud printer to print based on the printing data, enabling cloud printing through the target application. During the printing process, the target application's cloud server can communicate directly with the server's cloud server, controlling the cloud printer through the server's cloud server. The entire printing process does not require additional hardware or software, greatly saving printing costs. Furthermore, by identifying the print job associated with the print file identifier, and the print job containing the print job identifier, the target application's cloud server and the server's cloud server can complete the printing process through the print job and the job identifier, avoiding sending the print file identifier to the server's cloud server and improving data security during the printing process.
[0065] In one embodiment, obtaining print data corresponding to the file to be printed based on the print file identifier and sending the print data to the service provider's cloud server includes: obtaining print parameters and a file acquisition path corresponding to the file to be printed based on the print file identifier, and sending the print parameters and the file acquisition path to the service provider's cloud server; the method further includes: upon receiving a file download request triggered by the service provider's cloud server through the file acquisition path, responding to the file download request by sending a print format file corresponding to the file to be printed to the service provider's cloud server; the service provider's cloud server is used to send print parameters and a print format file to the cloud printer to control the cloud printer to print according to the print parameters and the print format file.
[0066] The file acquisition path refers to the path through which the user obtains the print format file of the document to be printed. This path can be a file download link, which triggers the download and obtains the print format file. In practical applications, the file acquisition path has a validity period after being sent to the service provider's cloud server. This validity period can be set by the target application's cloud server, for example, 10 days. Setting a validity period further ensures file security. The print format file refers to the file obtained after preprocessing the print file according to the print types supported by the cloud printer. This print format file can be the print file itself or a file obtained by converting the print file's format, depending on the file types supported by the cloud printer. For example, if the user needs to print a Word document, but the cloud printer only supports PDF printing, the print file needs to be converted to PDF for printing; the resulting PDF file is the print format file. The specific implementation of the preprocessing will be described in the examples below.
[0067] In this embodiment, to ensure that the task data acquisition request of the service provider's cloud server can be responded to as quickly as possible, the print data sent by the target application's cloud server to the service provider's cloud server may include a file acquisition path and print parameters. When the service provider's cloud server receives the print data containing the file acquisition path and print parameters, it triggers a download request for the print format file of the file to be printed through the file acquisition path. The target application's cloud server can respond to this download request and send the print format file corresponding to the file to be printed to the service provider's cloud server. After receiving the print format file, the service provider's cloud server can send the print file and other print parameters to the cloud printer, so that the cloud printer can start printing based on this data.
[0068] In practical applications, when the service provider's cloud server downloads a file to be printed by obtaining the file path, it can perform block download. That is, it executes the byte range to be downloaded in the request header of the download request. Block download can ensure that the file can be downloaded smoothly even when the file is large.
[0069] In practical applications, when a user needs to print multiple files, the target application's cloud server can perform batch transcoding preprocessing on these files. After obtaining the print format files, it packages them into a target file package, which can then be stored. The file retrieval path of the target file package is then sent to the service provider's cloud server. For example, suppose a user needs to print three files. After receiving these three files from the terminal, the target application's cloud server can simultaneously perform transcoding preprocessing on each file based on its file type. After obtaining the print format files for each of the three files, the target application's cloud server can further package them into a target file package. After storing the target file package, the file retrieval path of the target file package is sent to the service provider's cloud server. The service provider's cloud server can then retrieve the target file package based on this path, and from the target file package, it can simultaneously obtain the print format files for the three files the user needs to print.
[0070] In this embodiment, by sending the file acquisition path, the task data acquisition request can be responded to quickly, and the service provider's cloud server can asynchronously download the print format file based on the file acquisition path, which can improve the printing efficiency of the entire printing process.
[0071] In one embodiment, the print format file corresponding to the file to be printed is stored in an encrypted manner. Obtaining the print parameters and file acquisition path corresponding to the file to be printed based on the print file identifier, and sending the print parameters and file acquisition path to the service provider's cloud server includes: obtaining the print parameters, file acquisition path, and decryption parameters corresponding to the file to be printed based on the print file identifier, and sending the print parameters, file acquisition path, and decryption parameters to the service provider's cloud server; the service provider's cloud server is also used to decrypt the print format file based on the decryption parameters, and send the print parameters and the decrypted print format file to the cloud printer to control the cloud printer to print according to the print parameters and the decrypted print format file.
[0072] In this embodiment, the cloud server of the target application can encrypt and store the print format file of the document to be printed. The specific encryption algorithm is not limited in this application; for example, it could be AES-256-CBC. It should be noted that for each printing process, after obtaining the original file of the document to be printed, the cloud server of the target application further determines the print format file of the document to be printed and encrypts and stores the print format file. In each printing process, even for the same document's print format file, the encryption parameters for encryption storage are different, and therefore the corresponding decryption parameters are also different, thus ensuring the security of file storage and transmission.
[0073] Specifically, the target application's cloud server obtains printing data based on the print file identifier, including printing parameters, file acquisition path, and decryption parameters. After the printing data is sent to the service provider's cloud server, the service provider's cloud server can decrypt the print format file according to the decryption parameters. Then, the service provider's cloud server can send the decrypted print format file and other printing parameters to the cloud printer, enabling the cloud printing process to begin.
[0074] In the above embodiments, by encrypting the storage of print format files, the data security during file storage and transmission can be guaranteed.
[0075] In one embodiment, the file to be printed is a local file selected by the target application; the file printing method of this application further includes: the file to be printed is a local file selected by the target application; the above file printing method further includes: receiving a local file uploaded by the target application; if the cloud printer supports the file type of the received local file, determining the received local file as the print format file corresponding to the file to be printed; if the cloud printer does not support the file type of the received local file, converting the received local file to a file type supported by the cloud printer to obtain the print format file corresponding to the file to be printed.
[0076] The local file for the printer refers to the local file on the terminal where the target application is installed. For example, when the target application is an instant messaging application, the local file for the printer can be a file received during a session of the target application. Different types of cloud printers may support different file types. The cloud server of the target application can store the association between the cloud printer model and the supported file types. Therefore, when a local file uploaded by the terminal through the target application is received, the system first queries the model of the cloud printer selected by the user based on the printer identifier, determines the file types supported by the cloud printer based on the model, and then determines the print format file based on the file type.
[0077] Specifically, after a user triggers the print file process in the target application, they can select the target printer from the print device list. The terminal can then upload the user-selected local print file to the target application's cloud server. The target application's cloud server can then asynchronously perform transcoding preprocessing, i.e., determine whether the received local print file is a file type supported by the cloud printer selected by the user. If so, the file to be printed can be determined as a print format file; otherwise, the received local print file can be converted to a format supported by the cloud printer selected by the user, thus obtaining the print format file corresponding to the file to be printed.
[0078] In the above embodiments, printing efficiency can be improved by asynchronously transcoding the document to be printed.
[0079] In one embodiment, the file to be printed is a cloud file stored in the cloud server of the target application; the file printing method of this application further includes: receiving a print file identifier of the file to be printed uploaded by the target application, determining the file to be printed based on the print file identifier; performing snapshot processing on the file content of the file to be printed, and determining the file obtained by the snapshot processing as the print format file corresponding to the file to be printed.
[0080] In this context, "cloud files" refers to files already stored on the target application's cloud server. Within the application, the target application can display a list of files within the cloud files, allowing users to select the files they wish to print.
[0081] In this embodiment, since the cloud file is already stored in the cloud, the target application does not need to upload the file. Therefore, after the user selects the printing device, the target application can directly upload the print file identifier of the selected file to be printed to the cloud server. After receiving the print file identifier, the cloud server can query the corresponding target cloud file from the database storing cloud files based on the print file identifier, perform snapshot processing on the content of the target cloud file, and thus determine the file obtained from the snapshot processing as the print format file of the file to be printed, thereby realizing the transcoding preprocessing operation of the cloud file.
[0082] In the above embodiments, the cloud server of the target application can print cloud files by performing snapshot processing on the cloud files selected by the user. On the one hand, this expands the data sources in the printing scenario; on the other hand, for cloud files, users can print them without downloading them, which improves the flexibility and efficiency of the printing process.
[0083] Understandably, in the embodiment described above for obtaining the print format file, after obtaining the print format file, the target application's cloud server can associate and store the print format file with the print file identifier. In practical applications, the target application's cloud server can also encrypt the print format file and associate and store the print format file, print file identifier, and decryption parameters together.
[0084] In some embodiments, the print task is further used to instruct the service provider's cloud server to return a print result carrying a task identifier. The file printing method further includes: receiving the print result; obtaining a print file identifier based on the task identifier and association carried in the print result; using the print result as the print result of the file to be printed based on the print file identifier, and returning the print result of the file to be printed to the file printer of the file to be printed.
[0085] The print result can include any of the following: printing in progress, printing completed, or printing failed. In specific applications, a printing failure could be due to a printer running out of ink, paper, or a printer network error. The print result can also carry a print job identifier. After receiving the print result from the service provider's server, the target application's cloud server can determine the file to be printed based on the print job identifier and return the print result for that file to the target application.
[0086] In this embodiment, the cloud server of the target application can receive the printing results fed back by the service provider's server and send the printing results to the target application, which can better meet the user's needs.
[0087] In one embodiment, the above-described document printing method further includes: upon receiving a preview request for a document to be printed triggered by a target application, generating a preview task containing a preview task identifier, and sending the preview task to the service provider's cloud server; the preview task carries printing parameters parsed from the preview request and a preview task identifier, used to instruct the service provider's cloud server to perform transcoding processing on the document to be printed according to the printing parameters to obtain a preview result, and returning a preview result carrying the preview task identifier; assigning a preview operation identifier to the preview request, establishing an association between the preview operation identifier and the preview task identifier, and sending the preview operation identifier to the document previewer; upon receiving a preview result retrieval request carrying the preview operation identifier from the document previewer, determining the associated preview task identifier based on the preview operation identifier, and returning the preview result to the document previewer when a preview result carrying the preview task identifier is detected.
[0088] The preview operation identifier corresponds to the preview request and can be used to identify the preview request. Each time the cloud server of the target application receives a preview request, it assigns a preview operation identifier to that preview request.
[0089] Specifically, during the printing process, users may need to perform a print preview to determine in advance whether the printing parameter settings meet their needs. During the preview, the user can trigger a preview request for the file to be printed through the target application. Upon receiving the preview request, the target application's cloud server can parse it to obtain the user-set printing parameters, generate a preview task, and send it to the server-side cloud server. The preview task carries the printing parameters parsed from the preview request. After receiving the preview task, the server-side cloud server can extract the printing parameters and preview task identifier from it. Based on the pre-obtained printing parameters, the server-side cloud server can perform transcoding processing on the file to be printed to obtain a preview result, which is then returned to the target application's cloud server. The preview result may carry a preview task identifier, allowing the target application's cloud server to determine the preview task to which the preview result belongs. It is understandable that, in specific applications, the preview task can also carry the file acquisition path of the file to be printed. When printing the file, the server-side cloud server can obtain the print format file of the file to be printed based on the file acquisition path, and then perform transcoding processing on the print format file to obtain the preview result.
[0090] When the target application's cloud server receives a preview request, it can assign a preview operation identifier to the preview request, establish a relationship between the preview operation identifier and the preview task identifier, and return the preview operation identifier to the terminal. Upon receiving the preview operation identifier, the terminal can send a preview result retrieval request to the target application's cloud server at preset time intervals to poll for the preview results. Each time the target application's cloud server receives a preview result retrieval request, it determines the preview task identifier based on the preview operation identifier carried in the preview result retrieval request, and then checks whether the preview task identified by the preview task identifier has a corresponding preview result. If it does, it can return the preview result to the terminal; if it does not, it continues to wait until the preview times out and returns a preview failure feedback result to the terminal.
[0091] In one specific embodiment, the print request may also carry a printer identifier, which is used to uniquely identify a cloud printer. The cloud server of the target application sending the preview task to the service provider's cloud server may specifically involve: obtaining pre-established association data, which records the association between the printer model and the callback service address of the service provider's cloud server; determining the printer model based on the printer identifier; determining the target callback service address based on the printer model and the association data; and sending the preview task back to the corresponding service provider's cloud server based on the target callback service address.
[0092] In the above embodiments, when the cloud server of the target application receives a preview request, it can obtain the preview result by sending a preview task to the service provider's cloud server, which can improve the flexibility of the document printing process.
[0093] In one embodiment, upon receiving a preview request for a file to be printed, generating a preview task and sending the preview task to the service provider's cloud server includes: upon receiving a preview request for a file to be printed, parsing the preview request to obtain a print file identifier, and determining the associated target print task based on the parsed print file identifier; if the target print task does not have an associated preview task, generating a preview task containing a preview task identifier; the preview task carries print parameters parsed from the preview request, an initial parameter version number, and a preview task identifier; the method further includes: if the target print task has an associated preview task, sending the preview task associated with the target print task to the service provider's cloud server; the preview task carries print parameters parsed from the preview request, a current parameter version number, and a preview task identifier, wherein the current parameter version number is used to characterize the timing of the preview request relative to the preview task.
[0094] The initial parameter version number identifies that the current preview request is the first preview of the file to be printed. The initial parameter version number can be set as needed, for example, it can be V1. For each subsequent preview, the current parameter version number is obtained by incrementing the current maximum parameter version number based on the sending sequence of the preview requests. For example, when the terminal sends a preview request for the second time, the current parameter version number corresponding to the second preview request can be V2, and when the terminal sends a preview request for the third time, the current parameter version number corresponding to the third preview request can be V3.
[0095] In this embodiment, when the service provider's cloud server performs preview transcoding, it needs to download the print format file of the document to be printed. Considering that users may modify print parameters and preview multiple times during a single printing process, the target application's cloud server can reuse the same preview task for multiple previews. That is, by sending the same preview task identifier to the service provider's cloud server, the service provider's cloud server can download the file only once, saving traffic and bandwidth. However, because network requests may have timing issues, the service provider's cloud server may return preview results with a delay. This may cause the old preview request result to be returned when the user changes the parameters and previews again. To avoid incorrect preview results returned to the terminal, the preview task sent by the target application's cloud server to the service provider's cloud server can also carry a parameter version number. When the service provider's cloud server returns the preview result, it carries the preview task identifier and parameter version number in the preview result. Thus, the target application's cloud server can determine the required preview result through the preview task identifier and parameter version number.
[0096] Specifically, the cloud server of the target application can determine the associated target print task based on the print file identifier parsed from the preview request. It can then determine whether there is an associated preview task for the target print task. If not, it means that the current preview request is the first preview in this printing process. The cloud server of the target application allocates an initial parameter version number when generating the preview task. If there is an associated preview task, it means that the current preview request is not the first preview. In this case, the cloud server of the target application can query the maximum parameter version number corresponding to the preview task, increment the maximum parameter version number, and obtain the current parameter version number.
[0097] When the target application's cloud server sends a preview task to the service provider's cloud server, it can include printing parameters, a preview task identifier, and the current parameter version number in the preview task. Conversely, when the service provider's cloud server returns the preview result, it can include the preview task identifier and the current parameter version number in the preview result. Since the preview result is identified by both the preview task identifier and the current parameter version number, the target application's cloud server, after assigning a preview operation identifier to the preview request, can establish a relationship between the preview operation identifier, the preview task identifier, and the current parameter version number. Then, during the terminal's polling of preview results, the target application's cloud server determines the associated preview task identifier and current parameter version number based on the preview operation identifier carried in the preview result retrieval request. It then uses the preview task identifier and the initial parameter version number to determine if a preview result exists for the current preview request. If it does, it returns the preview result to the terminal; otherwise, it continues to wait until the preview times out, at which point it returns a preview failure feedback result to the terminal.
[0098] In the service provider's cloud server, downloaded files and preview task identifiers can be associated and stored. When a preview task is received, the service provider can determine whether the file has been downloaded based on the preview task identifier. If the file has been downloaded, it can be retrieved directly. If the file has not been downloaded, it can be downloaded based on the file retrieval path provided in the preview task.
[0099] Understandably, in practical applications, if the cloud server of the target application detects that there is an associated preview task for the target print task, it can further obtain the print parameters of the preview task. Only when the print parameters of the preview task are different from the print parameters received in the current preview request will a parameter version number corresponding to the current preview request be generated. If the print parameters of the preview task are the same as the print parameters received in the current preview request, the parameter version number of the print parameter and the preview result associated with the preview task can be directly returned to the terminal.
[0100] In the above embodiments, since the preview task can also carry the parameter version number, the preview result of each preview request can be accurately determined when the user initiates multiple preview requests, thus ensuring the accuracy of the preview result.
[0101] In one embodiment, determining the associated target print task based on the parsed print file identifier includes: determining the associated print tasks based on the parsed print file identifier, and obtaining the task status of the associated print tasks; if the task status indicates that printing is not completed, determining the associated print task as the target print task; if the task status indicates that printing is completed, generating a new print task, and determining the newly generated print task as the target print task.
[0102] The task status of the preview task includes two types: a status indicating that the preview task is completed and a status indicating that the preview task is not completed.
[0103] Considering that users may initiate multiple print processes for the same document, this embodiment can record the print status for each print task. When the target application's cloud server creates the print task, it can set the print task status to indicate that the print task is not completed. When it receives a print result indicating that the print task is completed, it can update the print task status to indicate that the print task is completed. Thus, when the target application's cloud server receives a preview request, it first determines the associated print tasks based on the print file identifier carried in the preview request, and then executes different processes according to the determined print task status. Specifically, when the task status indicates that the print task is not completed, the print task can be reused and determined as the target print task. When the task status indicates that the print task is completed, a new print task is generated and determined as the target print task, while the print status of the target print task is set to print task not completed.
[0104] Understandably, when a print file identifier has multiple associated print jobs, the task status of each print job is traversed. If all print jobs are in the completed state, a new print job is generated; otherwise, the print job that has not been completed is identified as the target print job.
[0105] In the above embodiments, by setting the task status for the preview task, the preview result can be accurately determined when the user initiates printing multiple times for the same file, thus ensuring the accuracy of the preview result.
[0106] In one embodiment, the print request also carries a printer identifier; sending a print job to the service provider's cloud server includes: obtaining pre-established association data; the association data records the association between the printer model and the callback service address of the service provider's cloud server; determining the printer model based on the printer identifier carried in the print request, determining the target callback service address based on the determined printer model and the association data; and sending a print job back to the corresponding service provider's cloud server based on the target callback service address.
[0107] In this embodiment, a callback service can be configured for the service provider's cloud server. Configuring the callback service requires three configuration items: URL (Uniform Resource Locator), Token, and EncodingAESKey. The URL is the callback service address, set up by the service provider's server to receive notification messages or events. The Token is used to calculate the signature; it is a custom string consisting of English letters or numbers and no more than 32 characters long, used to determine the reliability of the message source. The EncodingAESKey is used to encrypt the message content; it is a custom string consisting of English letters or numbers and no more than 43 characters long. After configuring the callback service, association data can be established in the target application's cloud server. This association data records the relationship between the printer model and the callback service configuration items of the service provider's cloud server. When sending a print job, the target application's cloud server can determine the printer model based on the printer identifier, and then determine the target callback service address based on the printer model and the association data. The print job is signed with the Token and encrypted with the EncodingAESKey, and the print job is then sent back to the corresponding service provider's cloud server according to the target callback service address.
[0108] In the above embodiments, by configuring a callback service, the target application's cloud server can promptly and proactively send a callback of the print task back to the service provider's cloud server, thereby improving printing efficiency.
[0109] In one embodiment, such as Figure 5 As shown, a document printing method is provided, which can be applied to... Figure 1 Taking server 106 as an example, the explanation includes the following steps:
[0110] Step 502: Upon receiving a print task from the cloud server corresponding to the target application, the cloud server calls the task data acquisition interface provided by the cloud server to send a data acquisition request. The print task is determined by the cloud server corresponding to the target application upon receiving a print request for a file to be printed triggered by the target application. There is an association between the print task identifier of the print task and the print file identifier carried in the print request. The data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier and association carried in the data acquisition request, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider's cloud server.
[0111] Step 504: Receive print data and control the cloud printer to print based on the print data.
[0112] For explanations regarding this embodiment, please refer to the embodiments above, which will not be repeated here.
[0113] The above-described document printing method, upon receiving a print job from the cloud server corresponding to the target application, calls the task data acquisition interface provided by the cloud server to send a data acquisition request, receives the print data, and controls the cloud printer to print based on the print data. This achieves cloud printing through the target application. Since the cloud server of the target application can directly communicate with the server's cloud server during the printing process, and controls the cloud printer to print through the server's cloud server, the entire printing process does not require additional hardware or software for the printing user, greatly saving printing costs. Furthermore, by identifying the print job associated with the print file identifier, and since the print job contains the print job identifier, the cloud server of the target application and the server's cloud server can complete the printing process through the print job and the job identifier, avoiding sending the print file identifier to the server's cloud server and improving data security during the printing process.
[0114] In one embodiment, the above-mentioned document printing method further includes: receiving a preview task sent by a cloud server corresponding to the target application; the preview task carries printing parameters parsed from the preview request and a preview task identifier; performing transcoding processing on the document to be printed according to the printing parameters to obtain a preview result, and returning the preview result carrying the preview task identifier to the cloud server corresponding to the target application; the cloud server corresponding to the target application is used to allocate a preview operation identifier for the preview request, establish an association between the preview operation identifier and the preview task identifier, and send the preview operation identifier to the document previewer; upon receiving a preview result retrieval request carrying the preview operation identifier from the document previewer, determining the associated preview task identifier based on the preview operation identifier; and when a preview result carrying the preview task identifier is detected, returning the preview result to the document previewer.
[0115] In one embodiment, such as Figure 6 As shown, a document printing system 600 is provided, comprising a terminal 602 with a target application installed, a cloud server 604 of the target application, a service provider cloud server 606, and a cloud printer 608; wherein:
[0116] The terminal is used to send a print request for a file to be printed to the cloud server of the target application through the target application; the print request carries the print file identifier of the file to be printed;
[0117] The target application's cloud server, upon receiving a print request, determines the associated print job based on the print file identifier carried in the print request; the print job contains a print job identifier; and sends the print job to the service provider's cloud server.
[0118] The service provider's cloud server is used to call the task data acquisition interface provided by the target application's cloud server to send a data acquisition request when it receives a print task;
[0119] The target application's cloud server is also used to receive data acquisition requests, parse the print task identifier from the data acquisition request, determine the associated print file identifier based on the print task identifier, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider's cloud server.
[0120] The service provider's cloud server is also used to control the cloud printer to print based on the printing data.
[0121] The aforementioned document printing system enables cloud printing through the target application. During the printing process, the target application's cloud server can directly communicate with the server's cloud server, controlling the cloud printing process through the server's cloud server. For the printing user, the entire printing process requires no additional hardware or software, significantly reducing printing costs. Furthermore, by identifying the print job associated with the print file identifier, and by including the print job identifier in the print job, the target application's cloud server and the server's cloud server can complete the printing process through the print job and the job identifier. This avoids sending the print file identifier to the server's cloud server, improving data security during the printing process.
[0122] In one specific embodiment, a document printing method is provided, mainly involving four roles: a terminal with the target application installed, a cloud server of the target application, a service provider's cloud server, and a cloud printer. The main tasks undertaken are as follows:
[0123] (1) Terminals with the target application installed
[0124] a) Accepting print requests: The user uploads a print file on a terminal with the target application installed. The target application's cloud server returns a print preview. The user sets the print parameters on the terminal with the target application installed based on the print preview and submits the print request. Then, the target application's cloud server accesses the service provider's cloud and submits the print job.
[0125] b) Feedback on printing results: After the cloud server of the target application obtains the printing results, it notifies the user through the terminal with the target application installed. In abnormal scenarios, the terminal with the target application installed can provide the reason for the failure and customer support.
[0126] (2) Cloud server of the target application
[0127] a) Encrypted transmission of printed files: For local files, the target application's cloud server uses the AES-256-CBC algorithm for encrypted storage; for cloud files, the target application's cloud server first takes a snapshot of the file content and then encrypts and saves it.
[0128] b) Provide communication capabilities with the service provider's cloud server: The target application's cloud server supports callback capabilities, actively sending some operations during the printing process to the service provider's cloud server; and the target application's cloud server provides an API (Application Programming Interface) to passively receive printing results, printer status, and print job status reported by the service provider's cloud server.
[0129] (3) Service provider cloud server
[0130] a) Handling printing interactions with the target application's cloud server: Based on the cloud server requirements of the target application, develop a relay service platform to handle the interactions with the target application's cloud server during the printing process.
[0131] b) Handling interaction with underlying printing devices: The target application's cloud server provides a general printing protocol, but the specific devices are heterogeneous. The service provider's cloud server needs to correctly handle the interaction with the printer and report the results to the target application's cloud server.
[0132] (4) Cloud printer
[0133] Responsible for completing the final printing work and sending the printing results back to the service provider's cloud server.
[0134] like Figure 7 As shown, the document printing method in this embodiment can print local files on the terminal. (Refer to...) Figure 7 Specifically, it includes the following steps:
[0135] 1. The user selects to print a local file.
[0136] 2. The terminal requests the target application's cloud server to obtain all eligible printing devices (filtering criteria include device visibility range, device online status, etc.).
[0137] 3. The target application's cloud server returns a list of printing devices.
[0138] 4. The user confirms the "User Authorization Agreement" and selects the specific printing device.
[0139] 5. The terminal submits the printed file to the target application's cloud server.
[0140] After receiving the print file submitted by the terminal, the target application's cloud server performs transcoding preprocessing on the file based on the file type and the document types supported by the user's selected printing device. Specifically:
[0141] 6. If the cloud server of the printing equipment provider offers transcoding services and supports the current file type, the file will be directly encrypted and stored.
[0142] 7. If the cloud server of the printing device does not support printing this type of file and the printing device selected by the user supports printing PDF files, then the file will be converted to PDF.
[0143] 8. After transcoding is complete, encrypt and store the file.
[0144] To ensure user information security, all printed documents are encrypted using the AES-256-CBC algorithm and have a certain validity period (e.g., 10 days), after which they are deleted.
[0145] 9. Users can set printing parameters and view print previews.
[0146] 10. The terminal sends a preview request to the cloud server of the target application.
[0147] The preview request can include a print file identifier and print parameters.
[0148] 11. The target application's cloud server generates a preview task and sends a callback preview task to the service provider's cloud server. The preview task carries the jobID (preview task identifier) and setting_version (parameter version number).
[0149] The preview task also carries the print parameters parsed from the preview request.
[0150] 12. The target application's cloud server assigns an operID (preview operation identifier) to the preview request and returns the operID to the terminal.
[0151] 13. After receiving the preview task, the service provider's cloud server performs transcoding processing based on the printing parameters to obtain the preview result, and then reports it to the cloud server of the target application.
[0152] 14. The terminal polls the preview results in the cloud server of the target application using operID.
[0153] 15. The cloud server of the target application refreshes to the preview result and sends the preview result back to the terminal.
[0154] Understandably, if the target application's cloud server detects that the preview task has timed out, it can return a preview failure result to the terminal.
[0155] 16. The terminal displays a print preview based on the preview results.
[0156] It's important to note that the "preview task" sent from the target application's cloud server to the service provider's cloud server includes a JobId, which is the preview task identifier. This preview task identifier corresponds to each printing process the user initiates, and it remains unchanged when printing parameters are changed and the preview is re-initiated. For the specific printing process, the print file is selected at the beginning; when the user re-initiates the preview, only the parameters are changed. The service provider's cloud server does not need to retrieve the print file multiple times. Using the same JobId facilitates mapping for the service provider, thereby saving bandwidth on both sides.
[0157] The target application's cloud server sends a callback to the service provider's cloud server in a "preview task," which includes a file download link. The service provider's cloud server uses this link to obtain the print format file. This link has a limited validity period (e.g., 10 minutes). When the user resets the print parameters, the target application's cloud server recalculates the signature and sends the data back to the service provider's cloud server.
[0158] After completing the transcoding, the service provider's cloud server asynchronously uploads the resulting preview to the target application's cloud server. However, users may modify printing parameters and submit print previews multiple times. To avoid potential timing issues during the operation, the target application's cloud server includes a "setting_version" (parameter version number) in its callback data packet. Each time a parameter is modified, the target application's cloud server increments this parameter value by one. The service provider's cloud server must also include specific "parameter version number" information in its reported transcoding data packet. The target application's cloud server uses jobid + setting_version to correspond to the specific print preview request.
[0159] In real-world use cases, users may modify printing parameters multiple times, potentially triggering preview events multiple times. Therefore, once device capability checks and transcoding preprocessing are complete, the relevant information is stored. During subsequent preview initiation, a "preview task" callback is directly sent to the service provider's cloud server.
[0160] The above process describes the print preview process using the service provider's cloud server. In actual use, the print preview operation is not necessary, and users can initiate printing directly without previewing.
[0161] Optionally, a "print preview" module can also be integrated into the target application's cloud server. This preview module can provide the same preview functionality as the service provider's cloud server. After the user uploads the file to be printed via the terminal, the target application's cloud server can directly call this module to perform transcoding processing based on the user-set printing parameters to generate a preview result. Only after the user confirms the preview result and submits the print request will the print task be sent back to the service provider's cloud server to continue the subsequent printing process.
[0162] 17. After setting the printing parameters, the user clicks "Print" on the page to submit the print job.
[0163] 18. The terminal sends a print request to the cloud server of the target application.
[0164] 19. The target application's cloud server determines the print task based on the print file identifier in the print request and sends the print task back to the service provider's cloud server.
[0165] 20. The service provider's cloud server obtains printing data, including printing parameters, decryption parameters, and file download links, through the "Get Print File" interface. The download link is valid for 10 minutes.
[0166] Specifically, the "print task" callback carries a unique JobId, which is the print task identifier. The service provider's cloud server carries the JobId when obtaining print data and reporting print results. The target application's cloud server maps the corresponding print task through this JobId.
[0167] 21. Print. The service provider's cloud server controls the printer to complete the printing process.
[0168] 22. Call the API provided by the target application's cloud server to upload the print results.
[0169] like Figure 8 As shown, the file printing method in this embodiment can print cloud files stored on a cloud server. (Refer to...) Figure 8 Specifically, it includes the following steps:
[0170] 1. The user selects to print cloud files.
[0171] 2. The terminal requests the target application's cloud server to obtain all eligible printing devices (filtering criteria include device visibility range, device online status, etc.).
[0172] 3. The target application's cloud server returns a list of printing devices.
[0173] 4. The user confirms the "User Authorization Agreement" and selects the specific printing device.
[0174] 5. The terminal uploads the docID (i.e., print file identifier) of the cloud file to the cloud server of the target application.
[0175] 6. Cloud file content of the target application's cloud server snapshot.
[0176] The target application's cloud server can locate the cloud file that the user wants to print based on the file identifier and take a snapshot of the cloud file's content.
[0177] Because cloud files contain sensitive data, direct document access cannot be granted to printing devices to ensure security. Snapshot files are a better solution. Furthermore, cloud files do not require transcoding services and can be generated as PDF files using existing online document capabilities. The snapshot file content is encrypted using the AES-256-CBC algorithm and has a validity period (10 days), after which it is deleted.
[0178] 7. Users can set printing parameters and view print previews.
[0179] 8. The terminal sends a preview request to the cloud server of the target application.
[0180] The preview request can include the cloud file's docID and printing parameters.
[0181] 9. The target application's cloud server generates a preview task and sends a callback preview task to the service provider's cloud server. The preview task carries the jobID (preview task identifier) and setting_version (parameter version number).
[0182] The preview task also carries the print parameters parsed from the preview request.
[0183] 10. The cloud server of the target application assigns an operID (preview operation identifier) to the preview request and returns the operID to the terminal.
[0184] 11. After receiving the preview task, the service provider's cloud server performs transcoding processing based on the printing parameters to obtain the preview result, and then reports it to the cloud server of the target application.
[0185] 12. The terminal polls the preview results in the cloud server of the target application using operID.
[0186] 13. The target application's cloud server refreshes to the preview result and sends the preview result back to the terminal.
[0187] Understandably, if the target application's cloud server detects that the preview task has timed out, it can return a preview failure result to the terminal.
[0188] 14. The terminal displays a print preview based on the preview results.
[0189] 15. After setting the printing parameters, the user clicks "Print" on the page to submit the print job.
[0190] 16. The terminal sends a print request to the cloud server of the target application.
[0191] 17. The target application's cloud server determines the print task based on the print file identifier in the print request and sends the print task back to the service provider's cloud server.
[0192] 18. The service provider's cloud server obtains printing data through the "Get Print File" interface. The printing data includes printing parameters, decryption parameters, file download links, etc. The download link is valid for 10 minutes.
[0193] Specifically, the "print task" callback carries a unique JobId, which is the print task identifier. The service provider's cloud server carries the JobId when obtaining print data and reporting print results. The target application's cloud server maps the corresponding print task through this JobId.
[0194] 19. Print. The service provider's cloud server controls the printer to complete the printing process.
[0195] 20. Call the API provided by the target application's cloud server to upload the print results.
[0196] In the above embodiments, a multi-cloud secure printing system is created by combining the cloud server of the target application and the cloud server of the service provider. Users can meet their secure printing needs without additional hardware or software. Furthermore, it provides enterprise users with the ability to print online documents directly, further enriching the printing scenarios for enterprise users and improving the printing efficiency of enterprise members. With the help of the service provider's cloud server capabilities, the cloud server of the target application does not need to pay attention to the details of printer data interaction, so as to realize the rapid access of printing devices, reduce access costs, reduce system coupling, and reduce platform complexity.
[0197] In another specific embodiment, a document printing method is provided, which designs printing as a medium- to long-term asynchronous process to further improve user document security. After the user initiates printing, the document to be printed is stored in the cloud server of the target application; when the user comes to the printer and scans the QR code of the cloud printer device, the terminal displays the print job submitted by the user on the current device; the user selects a specific print job to execute the subsequent printing process.
[0198] Specifically, such as Figure 9 As shown, in this embodiment, the document printing method includes the following steps:
[0199] 1. The user selects to print cloud files.
[0200] 2. The terminal requests the target application's cloud server to obtain all eligible printing devices (filtering criteria include device visibility range, device online status, etc.).
[0201] 3. The target application's cloud server returns a list of printing devices.
[0202] 4. The user confirms the "User Authorization Agreement" and selects the specific printing device.
[0203] 5. The terminal uploads local files to the target application's cloud server.
[0204] 6. The target application's cloud server performs transcoding preprocessing on the local files uploaded by the user.
[0205] For details on the transcoding preprocessing process, please refer to [link / reference]. Figure 7 Steps 6-8 in the process.
[0206] 7. The user scans the printer's QR code asynchronously.
[0207] 8. The terminal requests a list of printable files from the target application's cloud server.
[0208] 9. The target application's cloud server returns a list of print jobs to the terminal.
[0209] 10. The user selects a specific print file.
[0210] 11. The terminal sends a preview request to the cloud server of the target application.
[0211] 12. The cloud server of the target application assigns an operID (preview operation identifier) to the received preview request and returns the operID to the terminal.
[0212] 13. The target application's cloud server generates a preview task and sends a callback preview task to the service provider's cloud server.
[0213] 14. The service provider's cloud server performs transcoding on the local print file selected by the user based on the preview task to obtain the preview result, and reports the preview result to the cloud server of the target application.
[0214] 15. The terminal polls the preview results in the cloud server of the target application using operID.
[0215] 16. The target application's cloud server refreshes to the preview result and sends the preview result back to the terminal. Understandably, if the target application's cloud server detects a preview task timeout, it can return a preview failure result to the terminal.
[0216] 17. The terminal displays a print preview based on the preview results.
[0217] 18. User confirms printing.
[0218] 19. The terminal sends a print request to the cloud server of the target application.
[0219] 20. After receiving the print request, the target application's cloud server determines the print task based on the print file identifier in the print request and sends the print task back to the service provider's cloud server.
[0220] 21. The service provider's cloud server initiates a print request to the cloud printer.
[0221] 22. The cloud printer returns the printing results.
[0222] 23. The service provider's cloud server calls the API provided by the target application's cloud server to report the printed results to the target application's cloud server.
[0223] 24. The target application's cloud server returns the printed results to the terminal.
[0224] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0225] Based on the same inventive concept, this application also provides a document printing apparatus for implementing the document printing method described above. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more document printing apparatus embodiments provided below can be found in the limitations of the document printing method described above, and will not be repeated here.
[0226] In one embodiment, such as Figure 10 As shown, a document printing device 1000 is provided, comprising:
[0227] The print request receiving module 1002 is used to determine the associated print job based on the print file identifier carried in the print request when it receives a print request for a file to be printed triggered by a target application; the print job contains a print job identifier.
[0228] The print task sending module 1004 is used to send print tasks to the service provider's cloud server; the print task is used to instruct the service provider's cloud server to call the task data acquisition interface provided by the sender of the print task to send a data acquisition request.
[0229] The file identifier acquisition module 1006 is used to receive a data acquisition request, parse the print task identifier from the data acquisition request, and determine the associated print file identifier based on the print task identifier.
[0230] The print data sending module 1008 is used to obtain the print data corresponding to the file to be printed based on the print file identifier and send the print data to the service provider's cloud server; the service provider's cloud server is used to control the cloud printer to print based on the print data.
[0231] The aforementioned document printing device enables cloud printing through the target application. During the printing process, the target application's cloud server can directly communicate with the service provider's cloud server, controlling the cloud printing process through the service provider's cloud server. The entire printing process does not require additional hardware or software, greatly saving printing costs. Furthermore, by identifying the print job associated with the print file identifier, and since the print job contains a print job identifier, the target application's cloud server and the service provider's cloud server can complete the printing process through the print job and the job identifier. This avoids sending the print file identifier to the service provider's cloud server, improving data security during the printing process.
[0232] In one embodiment, the print data sending module is further configured to: obtain the print parameters and file acquisition path corresponding to the file to be printed based on the print file identifier, and send the print parameters and file acquisition path to the service provider's cloud server; upon receiving a file download request triggered by the service provider's cloud server through the file acquisition path, respond to the file download request by sending the print format file corresponding to the file to be printed to the service provider's cloud server; the service provider's cloud server is configured to send the print parameters and print format file to the cloud printer to control the cloud printer to print according to the print parameters and print format file.
[0233] In one embodiment, the print format file corresponding to the file to be printed is stored in an encrypted manner; the print data sending module is further configured to: obtain the print parameters, file acquisition path and decryption parameters corresponding to the file to be printed according to the print file identifier, and send the print parameters, file acquisition path and decryption parameters to the service provider cloud server; the service provider cloud server is further configured to decrypt the print format file according to the decryption parameters, and send the print parameters and the decrypted print format file to the cloud printer to control the cloud printer to print according to the print parameters and the decrypted print format file.
[0234] In one embodiment, the file to be printed is a local file selected by the target application; the apparatus further includes: a transcoding preprocessing module, configured to receive the local file uploaded by the target application; if the cloud printer supports the file type of the received local file, determine the received local file as the print format file corresponding to the file to be printed; if the cloud printer does not support the file type of the received local file, convert the received local file to a file type supported by the cloud printer to obtain the print format file corresponding to the file to be printed.
[0235] In one embodiment, the file to be printed is a cloud file stored on the cloud server of the target application; the transcoding preprocessing module is further configured to receive the print file identifier of the file to be printed uploaded by the target application, determine the file to be printed based on the print file identifier, perform snapshot processing on the file content of the file to be printed, and determine the file obtained by the snapshot processing as the print format file corresponding to the file to be printed.
[0236] In one embodiment, the print task is further used to instruct the service provider's cloud server to return a print result carrying a task identifier; the above apparatus further includes: a print result receiving module, used to receive the print result; obtain a print file identifier based on the task identifier and association carried in the print result; use the print result as the print result of the file to be printed based on the print file identifier, and return the print result of the file to be printed to the file printer of the file to be printed.
[0237] In one embodiment, the apparatus further includes a preview task generation module, configured to generate a preview task containing a preview task identifier upon receiving a preview request for a file to be printed triggered by a target application, and send the preview task to the service provider's cloud server; the preview task carries printing parameters parsed from the preview request and a preview task identifier, used to instruct the service provider's cloud server to perform transcoding processing on the file to be printed according to the printing parameters to obtain a preview result, and return a preview result carrying the preview task identifier; assign a preview operation identifier to the preview request, establish an association between the preview operation identifier and the preview task identifier, and send the preview operation identifier to the file previewer; upon receiving a preview result retrieval request carrying the preview operation identifier from the file previewer, determine the associated preview task identifier based on the preview operation identifier, and return the preview result to the file previewer when a preview result carrying the preview task identifier is detected.
[0238] In one embodiment, the preview task generation module is further configured to, upon receiving a preview request for a file to be printed, parse the preview request to obtain a print file identifier, and determine the associated target print task based on the parsed print file identifier; if the target print task does not have an associated preview task, generate a preview task containing a preview task identifier; the preview task carries the print parameters parsed from the preview request, the initial parameter version number, and the preview task identifier of the preview task; if the target print task has an associated preview task, send the preview task associated with the target print task to the service provider's cloud server; the preview task carries the print parameters parsed from the preview request, the current parameter version number, and the preview task identifier of the preview task, wherein the current parameter version number is used to characterize the timing of the preview request relative to the preview task.
[0239] In one embodiment, the preview task generation module is further configured to determine the associated print tasks based on the parsed print file identifier, obtain the task status of the associated print tasks; if the task status indicates that printing is not completed, determine the associated print tasks as the target print tasks; if the task status indicates that printing is completed, generate a new print task, and determine the newly generated print task as the target print task.
[0240] In one embodiment, the print request also carries a printer identifier; the print task sending module is further configured to obtain pre-established association data; the association data records the association between the printer model and the callback service address of the service provider's cloud server; the printer model is determined based on the printer identifier carried in the print request, and the target callback service address is determined based on the determined printer model and the association data; the print task is then sent back to the corresponding service provider's cloud server based on the target callback service address.
[0241] In one embodiment, such as Figure 11 As shown, a document printing device 1100 is provided, comprising:
[0242] The request sending module 1102 is used to send a data acquisition request by calling the task data acquisition interface provided by the cloud server corresponding to the target application when it receives a print task sent by the cloud server corresponding to the target application. The print task is determined by the cloud server corresponding to the target application when it receives a print request for a file to be printed triggered by the target application. There is an association between the print task identifier of the print task and the print file identifier carried in the print request. The data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier according to the print task identifier and association carried in the data acquisition request, obtain the print data corresponding to the file to be printed according to the print file identifier, and send the print data to the service provider cloud server.
[0243] The print data receiving module 1104 is used to receive print data and control the cloud printer to print based on the print data.
[0244] The aforementioned document printing device, upon receiving a print job from the cloud server corresponding to the target application, calls the task data acquisition interface provided by the cloud server to send a data acquisition request, receives print data, and controls the cloud printer to print based on the print data. This enables cloud printing through the target application. Since the target application's cloud server can directly communicate with the server's cloud server during the printing process, controlling the cloud printer through the server's cloud server, the entire printing process requires no additional hardware or software, significantly reducing printing costs. Furthermore, by identifying the print job associated with the print file identifier, and since the print job contains the print job identifier, the target application's cloud server and the server's cloud server can complete the printing process through the print job and the task identifier, avoiding sending the print file identifier to the server's cloud server and improving data security during the printing process.
[0245] In one embodiment, the above apparatus further includes: a preview transcoding module, configured to receive a preview task sent by a cloud server corresponding to the target application; the preview task carries printing parameters parsed from the preview request and a preview task identifier; the module performs transcoding processing on the file to be printed according to the printing parameters to obtain a preview result, and returns the preview result carrying the preview task identifier to the cloud server corresponding to the target application; the cloud server corresponding to the target application is configured to allocate a preview operation identifier for the preview request, establish an association between the preview operation identifier and the preview task identifier, and send the preview operation identifier to the file previewer; upon receiving a preview result retrieval request carrying the preview operation identifier from the file previewer, the module determines the associated preview task identifier based on the preview operation identifier; and when a preview result carrying the preview task identifier is detected, the module returns the preview result to the file previewer.
[0246] Each module in the aforementioned document printing device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0247] In one embodiment, a computer device is provided, which may be a cloud server for the target application or a service provider's cloud server, and its internal structure diagram may be as follows: Figure 12As shown, the computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage medium. The database stores data during the printing process, such as print files and printing parameters. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements the file printing method described in any of the above embodiments.
[0248] Those skilled in the art will understand that Figure 12 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0249] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the document printing method in any of the above embodiments.
[0250] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the document printing method in any of the above embodiments.
[0251] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the document printing method in any of the above embodiments.
[0252] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0253] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0254] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0255] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A document printing method, characterized in that, The method includes: Upon receiving a print request for a document to be printed triggered by a target application, the associated print job is determined based on the print document identifier carried in the print request; the print job includes a print job identifier. Send the print task to the service provider's cloud server; the print task is used to instruct the service provider's cloud server to call the task data acquisition interface provided by the sender of the print task to send a data acquisition request; Receive the data acquisition request, parse the print task identifier from the data acquisition request, and determine the associated print file identifier based on the print task identifier; The printing data corresponding to the file to be printed is obtained based on the print file identifier, and the print data is sent to the service provider's cloud server; the service provider's cloud server is used to control the cloud printer to print according to the print data.
2. The method according to claim 1, characterized in that, The step of obtaining the print data corresponding to the file to be printed based on the print file identifier and sending the print data to the service provider's cloud server includes: Based on the print file identifier, obtain the print parameters and file acquisition path corresponding to the file to be printed, and send the print parameters and file acquisition path to the service provider's cloud server; The method further includes: Upon receiving a file download request triggered by the service provider's cloud server through the file acquisition path, in response to the file download request, the service provider's cloud server is sent the print format file corresponding to the file to be printed; The service provider's cloud server is used to send the printing parameters and the printing format file to the cloud printer, so as to control the cloud printer to print according to the printing parameters and the printing format file.
3. The method according to claim 2, characterized in that, The print format file corresponding to the file to be printed is stored encrypted; the step of obtaining the print parameters and file acquisition path corresponding to the file to be printed based on the print file identifier, and sending the print parameters and file acquisition path to the service provider's cloud server, includes: Based on the print file identifier, obtain the print parameters, file acquisition path and decryption parameters corresponding to the file to be printed, and send the print parameters, the file acquisition path and the decryption parameters to the service provider's cloud server; The service provider's cloud server is also used to decrypt the print format file according to the decryption parameters, and send the print parameters and the decrypted print format file to the cloud printer to control the cloud printer to print according to the print parameters and the decrypted print format file.
4. The method according to claim 2, characterized in that, The file to be printed is a local file selected by the target application for printing; the method further includes: Receive local print files uploaded via the target application; If the cloud printer supports the file type of the received local file from the printer, the received local file from the printer will be identified as the print format file corresponding to the file to be printed. If the cloud printer does not support the file type of the received local file from the printer, the received local file from the printer will be converted into a file type supported by the cloud printer to obtain the print format file corresponding to the file to be printed.
5. The method according to claim 2, characterized in that, The file to be printed is a cloud file stored on the cloud server of the target application; The method further includes: Receive the print file identifier of the file to be printed uploaded through the target application, and determine the file to be printed based on the print file identifier; A snapshot of the file content to be printed is performed, and the file obtained from the snapshot is determined as the print format file corresponding to the file to be printed.
6. The method according to claim 1, characterized in that, The print task is also used to instruct the service provider's cloud server to return a print result carrying the task identifier; the method further includes: Receive the print result; obtain the print file identifier based on the task identifier carried in the print result and the association relationship; Based on the print file identifier, the print result is used as the print result of the file to be printed, and the print result of the file to be printed is returned to the file printer of the file to be printed.
7. The method according to claim 1, characterized in that, The method further includes: Upon receiving a preview request for a file to be printed triggered by a target application, a preview task containing a preview task identifier is generated and sent to the service provider's cloud server. The preview task carries printing parameters parsed from the preview request and the preview task identifier, which instructs the service provider's cloud server to perform transcoding processing on the file to be printed according to the printing parameters to obtain a preview result, and returns a preview result carrying the preview task identifier. Assign a preview operation identifier to the preview request, establish the association between the preview operation identifier and the preview task identifier, and send the preview operation identifier to the file previewer; Upon receiving a preview result retrieval request from the file previewer carrying the preview operation identifier, the preview task identifier with an associated relationship is determined based on the preview operation identifier; When a preview result carrying the preview task identifier is detected, the preview result is returned to the file previewer.
8. The method according to claim 7, characterized in that, Upon receiving a preview request for a file to be printed, generating a preview task and sending the preview task to the service provider's cloud server includes: Upon receiving a preview request for a file to be printed, the preview request is parsed to obtain a print file identifier, and the associated target print job is determined based on the parsed print file identifier. If the target print job does not have an associated preview job, a preview job containing a preview job identifier is generated; the preview job carries the print parameters parsed from the preview request, the initial parameter version number, and the preview job identifier of the preview job. The method further includes: If the target print task has an associated preview task, the preview task associated with the target print task is sent to the service provider's cloud server; the preview task carries the print parameters parsed from the preview request, the current parameter version number, and the preview task identifier of the preview task, wherein the current parameter version number is used to characterize the timing of the preview request relative to the preview task.
9. The method according to claim 8, characterized in that, The step of determining the associated target printing task based on the parsed print file identifier includes: Based on the parsed print file identifiers, identify the print tasks with related relationships and obtain the task status of the print tasks with related relationships. If the task status indicates that printing is incomplete, the associated print task will be identified as the target print task. If the task status indicates that printing is complete, a new print job is generated and designated as the target print job.
10. The method according to any one of claims 1 to 9, characterized in that, The print request also carries a printer identifier; sending the print job to the service provider's cloud server includes: Obtain pre-established association data; the association data records the association between printer model and callback service address of service provider cloud server; The printer model is determined based on the printer identifier carried in the print request, and the target callback service address is determined based on the determined printer model and the association data. The printing task is sent back to the corresponding cloud server based on the target callback service address.
11. A document printing method, characterized in that, The method includes: Upon receiving a print task from the cloud server corresponding to the target application, the system calls the task data acquisition interface provided by the cloud server to send a data acquisition request. The print task is determined by the cloud server corresponding to the target application upon receiving a print request for a file to be printed triggered by the target application. There is an association between the print task identifier of the print task and the print file identifier carried in the print request. The data acquisition request instructs the cloud server corresponding to the target application to obtain the print file identifier based on the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider's cloud server. Receive the print data and control the cloud printer to print according to the print data.
12. The method according to claim 11, characterized in that, The method further includes: Receive a preview task sent by the cloud server corresponding to the target application; the preview task carries the printing parameters parsed from the preview request and the preview task identifier of the preview task; The print parameters are used to transcode the file to be printed to obtain a preview result, and the preview result carrying the preview task identifier is returned to the cloud server corresponding to the target application. The cloud server corresponding to the target application is used to assign a preview operation identifier to the preview request, establish an association between the preview operation identifier and the preview task identifier, and send the preview operation identifier to the file previewer. When a preview result retrieval request carrying the preview operation identifier is received from the file previewer, the preview operation identifier is determined based on the preview operation identifier to identify the associated preview task identifier. When a preview result carrying the preview task identifier is detected, the preview result is returned to the file previewer.
13. A document printing system, characterized in that, The system includes a terminal with the target application installed, a cloud server for the target application, a service provider's cloud server, and a cloud printer; wherein: The terminal is used to send a print request for a file to be printed to the cloud server of the target application through the target application; the print request carries a print file identifier of the file to be printed; The cloud server of the target application is used to determine the associated print task based on the print file identifier carried in the print request when it receives the print request, and send the print task carrying the print task identifier to the service provider cloud server. The service provider's cloud server is used to send a data acquisition request by calling the task data acquisition interface provided by the cloud server of the target application when it receives the printing task. The cloud server of the target application is also used to receive the data acquisition request, parse the print task identifier from the data acquisition request, determine the associated print file identifier based on the print task identifier, obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider cloud server. The service provider's cloud server is also used to control the cloud printer to print based on the printing data.
14. A document printing device, characterized in that, The device includes: The print request receiving module is used to determine the associated print job based on the print file identifier carried in the print request when it receives a print request for a file to be printed triggered by a target application; the print job includes a print job identifier. The print task sending module is used to send the print task to the service provider's cloud server; the print task is used to instruct the service provider's cloud server to call the task data acquisition interface provided by the sender of the print task to send a data acquisition request. The file identifier acquisition module is used to receive the data acquisition request, parse the print task identifier from the data acquisition request, and determine the associated print file identifier based on the print task identifier; The print data sending module is used to obtain the print data corresponding to the file to be printed based on the print file identifier, and send the print data to the service provider cloud server; the service provider cloud server is used to control the cloud printer to print based on the print data.
15. A document printing device, characterized in that, The device includes: The request sending module is used to send a data acquisition request by calling the task data acquisition interface provided by the cloud server corresponding to the target application when it receives a print task sent by the cloud server corresponding to the target application. The print task is determined by the cloud server corresponding to the target application when it receives a print request for a file to be printed triggered by the target application. There is an association between the print task identifier of the print task and the print file identifier carried in the print request. The data acquisition request is used to instruct the cloud server corresponding to the target application to obtain the print file identifier according to the print task identifier carried in the data acquisition request and the association, obtain the print data corresponding to the file to be printed according to the print file identifier, and send the print data to the service provider cloud server. The print data receiving module is used to receive the print data and control the cloud printer to print based on the print data.
16. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 10 or 11 to 12.
17. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10 or 11 to 12.
18. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10 or 11 to 12.
Citation Information
Patent Citations
Cloud printing method, device and system, equipment and storage medium
CN111638859A
Order printing method and device, computer equipment and storage medium
CN114489520A