A data processing method and device, computer equipment and a storage medium

By introducing a chunked transmission mechanism into the traditional long-connection mechanism, using document permission identifiers and transmission connection identifiers for permission verification, and setting a transmission maintenance period, the problem of excessive resource consumption in multi-person collaborative document scenarios is solved, achieving resource saving and cost reduction.

CN117014422BActive Publication Date: 2026-08-25TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211052296.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-30
Publication Date
2026-08-25
Estimated Expiration
2042-08-30

AI Technical Summary

Technical Problem

Traditional long-connection mechanisms consume a lot of computing resources in multi-person collaborative document scenarios, making it difficult to meet the needs of business development.

Method used

A chunked transmission mechanism is introduced, which verifies permissions through document permission identifiers and transmission connection identifiers, sets a transmission maintenance period, establishes a chunked transmission channel, and performs data transmission operations within the period.

Benefits of technology

This reduced resource consumption, lowered costs, and met the needs of business development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117014422B_ABST
    Figure CN117014422B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a data processing method and device, computer equipment and a storage medium, comprising: obtaining a first data transmission request for a business collaboration document; the first data transmission request carries a document permission identifier and a transmission connection identifier; the document permission identifier is identifier information determined based on a business object for the document permission of the business collaboration document; the transmission connection identifier refers to identifier information corresponding to a first block transmission channel established for the business object; based on the document permission identifier and the transmission connection identifier, performing permission verification on the business object to obtain a first verification result; when the first verification result indicates that the business object has legal permission, setting a transmission maintenance period for the first data transmission request, and executing a document operation corresponding to the first data transmission request within the transmission maintenance period, generating a business document message associated with the document operation, and returning to the business object. By adopting the embodiments of the present application, resource consumption can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a data processing method, apparatus, computer equipment, and storage medium. Background Technology

[0002] In multi-user collaborative document scenarios, business collaborative documents require collaborative editing by multiple users (e.g., object A and object B). Object A not only needs to synchronize its edited document data with object B in real time, but also needs to obtain object B's edited document data in real time for simultaneous display on its own terminal device. Therefore, a real-time collaborative push mechanism is needed to push messages. Traditional message push methods use traditional long-connection mechanisms (e.g., WebSocket long-connections). Traditional long-connection mechanisms utilize the characteristic of long-duplex communication over a single transmission connection. Once a connection is established between the backend device and a document object (e.g., object A), this connection will be maintained regardless of whether data needs to be transmitted, until object A actively closes it. Therefore, if the number of document objects participating in the business collaboration is large, it will consume a significant amount of computing resources, making it difficult to meet the needs of business development. Summary of the Invention

[0003] This application provides a data processing method, apparatus, computer equipment, and storage medium that can reduce resource consumption.

[0004] One embodiment of this application provides a data processing method, including: Obtain a first data transmission request for the business collaboration document; the first data transmission request carries the document permission identifier and transmission connection identifier corresponding to the business object; the document permission identifier is the identification information determined based on the document permissions of the business object for the business collaboration document; the transmission connection identifier refers to the identification information corresponding to the first segmented transmission channel established for the business object; Based on the document permission identifier and the transmission connection identifier, the business object is verified to obtain the first verification result; When the first verification result indicates that the business object has legitimate permissions, a transmission maintenance period is set for the first data transmission request, and the document operation corresponding to the first data transmission request is executed within the transmission maintenance period, generating a business document message associated with the document operation and returning it to the business object.

[0005] One embodiment of this application provides a data processing apparatus, including: The first transmission request acquisition module is used to acquire a first data transmission request for a business collaboration document; the first data transmission request carries a document permission identifier and a transmission connection identifier corresponding to the business object; the document permission identifier is identification information determined based on the document permissions of the business object for the business collaboration document; the transmission connection identifier refers to the identification information corresponding to the first block transmission channel established for the business object; The first result determination module is used to perform permission verification on the business object based on the document permission identifier and the transmission connection identifier, and obtain the first verification result. The business message generation module is used to set a transmission maintenance period for the first data transmission request when the first verification result indicates that the business object has legitimate permissions, and to perform the document operation corresponding to the first data transmission request within the transmission maintenance period, generate a business document message associated with the document operation, and return it to the business object.

[0006] Among them, the document permission identifier and the transmission connection identifier are both obtained after initializing the first block transmission channel; the document permission identifier is the first permission identifier; the transmission connection identifier is the first connection identifier. The device also includes: The channel establishment request acquisition module is used to acquire the channel establishment request forwarded by the gateway device based on the first routing identifier through the access service; the channel establishment request is generated by the terminal device of the business object based on the login status information of the business object when displaying the business collaboration document; the first routing identifier is determined based on the document information of the business collaboration document; The initial result determination module is used to verify the document permissions of the business object for the business collaboration document based on the login status information, obtain the initial verification result, and when the initial verification result indicates that the business object has the document participation permission, obtain the number of objects in the first document virtual room corresponding to the business collaboration document. The channel establishment module is used to establish a first block transmission channel between the object terminal device and the first device corresponding to the first document virtual room if the number of objects does not reach the object number threshold of the first document virtual room, and add the business object to the first document virtual room. The identifier generation module is used to generate a first permission identifier associated with document permissions and to generate a first connection identifier corresponding to the first block transmission channel based on the access timestamp in the login status information. The first message generation module is used to generate a first document message to be returned to the target terminal device based on the first permission identifier and the first connection identifier.

[0007] The device also includes: The route identifier change module is used to change the first route identifier to obtain the second route identifier based on the room creation priority if the number of objects reaches the object number threshold. The routing identifier sending module is used to return the second routing identifier to the gateway device through the access service, so that the gateway device forwards the channel establishment request to the second device corresponding to the second routing identifier. The second device is used to return the second document message to the target terminal device through the gateway device. The second document message is generated by the second device based on the second permission identifier and the second connection identifier when the business object is successfully added to the second document virtual room based on the channel establishment request. The second document virtual room is a document virtual room created by the second device for business collaboration documents. The second permission identifier is a permission identifier generated by the second device based on document permissions when verifying that the business object has document participation permissions. The second connection identifier is a connection identifier generated by the second device based on the access timestamp, and the second connection identifier is used to indicate the first segmented transmission channel established between the target terminal device and the second device.

[0008] The first result determination module includes: The identifier table acquisition unit is used to acquire a mapping table associated with the first document virtual room of the business collaboration document based on the data caching service; the mapping table is used to represent the connection identifiers corresponding to the block transmission channels of N document objects in the first document virtual room; N is a positive integer less than or equal to the threshold of the number of objects in the first document virtual room; The query unit is used to query the mapping table based on the transmission connection identifier; The identification verification unit is used to obtain the verification document permissions of the business object for the business collaboration document if a connection identifier matching the transmission connection identifier is found in the mapping table, and to verify the document permission identifier based on the verification document permissions. The successful verification unit is used to determine that the permission verification is successful if the document permission corresponding to the document permission identifier matches the document permission to be verified, and to generate a first verification result to indicate that the business object has legitimate permissions.

[0009] The first result determination module further includes: The first exception message generation unit is used to generate an exception notification message indicating a packaging error if no connection identifier matching the transmission connection identifier is found in the mapping table. The first abnormal message forwarding unit is used to forward abnormal notification messages to the corresponding object terminal device of the business object through the gateway device via the access service.

[0010] The first result determination module further includes: The verification failure unit is used to determine that the permission verification has failed if the document permission corresponding to the document permission identifier does not match the document permission to be verified, and to generate a first verification result to indicate that the business object has illegal permissions. The second exception message generation unit is used to generate an exception notification message indicating a packaging error based on the first verification result. The second abnormal message forwarding unit is used to forward abnormal notification messages to the corresponding object terminal device of the business object through the gateway device via the access service.

[0011] The business message generation module includes: The setting unit is used to set the service status of the first block transmission channel to the connected state when the first verification result indicates that the service object has legitimate permissions, and to set the transmission maintenance period for the first data transmission request based on the request maintenance pipeline. The signal detection unit is used to respond to the document operation corresponding to the first data transmission request during the transmission maintenance period and to perform signal detection on the local buffer. The packaging processing unit is used to package the document data cached in the local cache according to the transmission format corresponding to the block encoding transmission rule if a data update signal sent by the local cache is detected during the transmission maintenance period, so as to obtain document block data. The business message generation unit is used to generate business document messages associated with document operations based on document block data and return them to the business object; the business document messages are displayed on the object terminal device corresponding to the business object.

[0012] The device also includes: The release signal acquisition module is used to acquire the release signal sent by the request maintenance pipe when the transmission duration corresponding to the first data transmission request reaches the transmission maintenance period; The release message generation module is used to change the service status of the service object for the first block transmission channel from the connected state to the released state based on the release signal, and generate a release notification message associated with the release signal after the change is completed. The release message sending module is used to send a release notification message to the object terminal device corresponding to the business object, so that the object terminal device generates a second data transmission request for the business collaboration document based on the release notification message; the second data transmission request is used to change the business status of the first block transmission channel from the release state back to the connection state.

[0013] The device also includes: The data change request acquisition module is used to acquire data change requests from business objects for business collaboration documents through the access service; the data change request is forwarded by the gateway device based on the first routing identifier; the data change request carries the document permission identifier, the transmission connection identifier, and the change data for the business collaboration document; The second result determination module is used to perform permission verification on the business object based on the document permission identifier and the transmission connection identifier, and obtain the second verification result. The conflict handling module is used to handle data conflict requests based on the task orchestration service when the second verification result indicates that the business object has legitimate permissions. The data storage module is used to respond to data change requests after data conflict resolution based on changed data, and store the document data obtained after the change operation into the database. The third message generation module is used to generate third document messages associated with change operations and send these third document messages to business objects.

[0014] The device operates on the first equipment; the first equipment is used to establish a first document virtual room corresponding to the business collaboration document, and the business object belongs to the first document virtual room; The device also includes: The module for obtaining the object to be broadcast is used to obtain document objects other than business objects in the first document virtual room, and to use the obtained document objects as the objects to be broadcast. The transmission channel determination module is used to obtain the block transmission channel between the object to be broadcast and the first device based on the block transmission manager of the first device, and determine the obtained block transmission channel as the second block transmission channel. The data caching module is used to store the document data after the change operation in the local cache if the service status of the object to be broadcast for the second block transmission channel is in the released state. The update message generation module is used to generate an update message to be sent to the object to be broadcast based on the document data stored in the local cache when the service status of the second block transmission channel changes from the released state to the connected state.

[0015] The device also includes: The channel detection module is used to detect the M block transmission channels under the block transmission manager of the first device based on the timer deployed on the first device; M is a positive integer; the M block transmission channels include the first block transmission channel; The channel destruction module is used to destroy the first segment transmission channel and remove the business object from the first document virtual room if it is detected that there is no data transmission in the first segment transmission channel during the business detection period.

[0016] This application provides a computer device, including: a processor, a memory, and a network interface; The processor is connected to a memory and a network interface. The network interface is used to provide data communication functions, the memory is used to store computer programs, and the processor is used to call the computer programs so that the computer device executes the methods provided in the embodiments of this application.

[0017] One aspect of this application provides a computer-readable storage medium storing a computer program adapted to be loaded and executed by a processor, so that a computer device having the processor performs the method provided in this application.

[0018] One aspect of this application provides a computer program product, which includes a computer program stored in a computer-readable storage medium; a processor of a computer device reads the computer program from the computer-readable storage medium and executes the computer program, causing the computer device to perform the method described in this application.

[0019] In this embodiment, when the first device (the backend device corresponding to the application client associated with the business collaboration document) receives a first data transmission request for the business collaboration document, it can perform permission verification on the business object based on the document permission identifier (token) and transmission connection identifier (sid) carried in the first data transmission request to obtain a first verification result. Here, the document permission identifier can be identification information determined based on the document permissions of the business object for the business collaboration document, and the transmission connection identifier refers to the identification information corresponding to the first segmented transmission channel established for the business object. It can be understood that when the first verification result indicates that the business object has legitimate permissions, the first device can set a transmission maintenance period for the first data transmission request. This means that the business object and the first device can maintain their connection through the first segmented transmission channel established for the business object throughout the transmission maintenance period. That is, the first device can execute the document operation corresponding to the first data transmission request during the transmission maintenance period to generate a business document message associated with the document operation and return it to the business object. In other words, by setting a transmission maintenance period for the first data transmission request, the first device in this embodiment does not require the business object to actively close the transmission link, nor does it need to maintain the link between the first device and the target terminal device continuously, thus effectively reducing resource consumption and lowering costs. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0021] Figure 1 This is a schematic diagram of a network architecture provided in an embodiment of this application; Figure 2 This is a schematic diagram of a data interaction scenario provided in an embodiment of this application; Figure 3 This is a flowchart illustrating a data processing method provided in an embodiment of this application; Figure 4 This is a flowchart illustrating a data processing method provided in an embodiment of this application; Figure 5 This is a flowchart illustrating a message push method provided in an embodiment of this application; Figure 6 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application; Figure 7 This is a schematic diagram of a computer device provided in an embodiment of this application. Detailed Implementation

[0022] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0023] Please see Figure 1 , Figure 1 This is a schematic diagram of a network architecture provided in an embodiment of this application. Figure 1 As shown, the network architecture may include a cluster of terminal devices, a cluster of backend devices, and a gateway device 10W for providing relay services between these two clusters. The terminal device cluster may include one or more terminal devices; the number of terminal devices is not limited here. Figure 1As shown, the terminal device cluster may specifically include terminal device 100a, terminal device 100b, terminal device 100c, ..., terminal device 100n. Each terminal device in the terminal device cluster can connect to the gateway device 10W via a network, so that each terminal device can interact with the gateway device 10W through the network connection. The network connection method is not limited; it can be a direct or indirect connection via wired communication, a direct or indirect connection via wireless communication, or other methods. This application does not impose any restrictions on this method.

[0024] Each terminal device in this terminal device cluster can include: smartphones, tablets, laptops, desktop computers, smart speakers, smartwatches, in-vehicle terminals, smart TVs, and other smart terminals with document data processing capabilities. It should be understood that, for example... Figure 1 Each terminal device in the terminal device cluster shown can have an application client installed. When the application client is running on each terminal device, it can connect to the aforementioned devices through the gateway device 10W. Figure 1 The background devices in the illustrated background device cluster interact with each other. The application client can be a client with document data processing capabilities. This application client can be a standalone client or an embedded sub-client integrated into another client (e.g., a social client, an educational client, or a multimedia client), and this is not limited here.

[0025] The backend device cluster may include one or more backend devices; the number of backend devices is not limited here. For example, the backend device cluster in this embodiment may be a server cluster or a distributed system composed of multiple physical servers, such as... Figure 1 As shown, the backend device cluster may specifically include backend device 10F1, backend device 10F2, ..., backend device 10F... M Each backend device in this backend device cluster can connect to the gateway device 10W via a network, enabling data interaction between them. Each backend device in the cluster can serve as a server for the application client; a backend device can be an independent physical server or a cloud server providing cloud computing services.

[0026] For ease of understanding, the embodiments of this application may be described in detail below. Figure 1 From the multiple terminal devices shown, one terminal device is selected as the object terminal device used by the service object. For example, in the embodiments of this application, a terminal device can be selected as the object terminal device used by the service object. Figure 1The terminal device 100a shown serves as the object terminal device, and the application client integrated into this object terminal device is used to display business collaboration documents. Meanwhile, embodiments of this application can also... Figure 1 Select one background device from the multiple background devices shown (e.g., Figure 1 The background device 10F1 shown is used as the first device. In a multi-person collaborative document scenario, the document virtual room created by the first device for the business collaborative document can be referred to as the first document virtual room.

[0027] When the first device adds a business object to the first document virtual room, it means that the first chunk transmission channel has been successfully established between the first device and the object terminal device. Afterwards, the object terminal device can... Figure 1 The gateway device 10W shown enables data interaction between the first device and the business data platform corresponding to the application client. For example, when a business collaboration document is displayed on the terminal interface of the target terminal device, the target terminal device can generate a first data transmission request for the business collaboration document based on the document permission identifier and transmission connection identifier corresponding to the business object. Here, the first data transmission request refers to the business request from the target terminal device of the business object to obtain document data from the first device. The document permission identifier and transmission connection identifier can both be obtained by the first device after initializing the first segmented transmission channel. The document permission identifier is a permission identifier generated by the first device based on the document permissions of the business object for the business collaboration document, and the transmission connection identifier is a connection identifier generated by the first device based on the access timestamp in the login status information. This transmission connection identifier indicates the first segmented transmission channel established between the target terminal device and the first device. Furthermore, when the first device obtains the first data transmission request through the gateway device 10W, it can perform permission verification on the business object based on the above two identifiers to obtain a first verification result. Understandably, when the first verification result indicates that the business object has legitimate permissions, the first device can set a transmission maintenance period (e.g., 50 seconds) for the first data transmission request, and execute the document operation corresponding to the first data transmission request within the transmission maintenance period to generate a business document message associated with the document operation and return it to the business object.

[0028] Therefore, this application embodiment simulates a new message transmission method by introducing a chunked transmission mechanism into the traditional Hypertext Transfer Protocol (HTTP). Specifically, after the first device establishes a first chunked transmission channel for the business object between the first device and the target terminal device, it sets a transmission maintenance period (e.g., 50 seconds) for the acquired first data transmission request, enabling the first chunked transmission channel to maintain a connection within this maintenance period. This means that the new message transmission method not only eliminates the need for the business object to actively close the transmission link, but also eliminates the need to continuously maintain the link between the first device and the target terminal device, thereby effectively reducing resource consumption and lowering costs.

[0029] For better understanding, please refer to [link / reference]. Figure 2 , Figure 2 This is a schematic diagram illustrating a data interaction scenario provided in an embodiment of this application. For example... Figure 2 As shown, the terminal device used by the business object (e.g., object a) can be one of the above-mentioned devices. Figure 1 Any terminal device in the terminal device cluster shown, for example, terminal device 100a. The document virtual room to which object a belongs can be a document virtual room created by the backend device 20F (i.e., the first device) for business collaboration documents. The backend device 20F can be the aforementioned... Figure 1 Any one of the backend devices in the shown backend device cluster, for example, backend device 10F1. Gateway device 20W can provide relay services between the target terminal device and backend device 20F. This gateway device 20W can provide the aforementioned... Figure 1 The gateway device shown is 10W.

[0030] like Figure 2 As shown, interface 210J can be the terminal interface displayed by the object terminal device after responding to object a by performing a trigger operation on a business collaboration document. The trigger operation can include contact operations such as clicking and long-pressing, as well as non-contact operations such as voice and gestures; these are not limited here. The business data displayed on interface 210J can include the document name of the business collaboration document (e.g., ...). Figure 2 The document name (2m) and document details data (21S) of the business collaboration document are shown. Furthermore, the interface (210J) may include an avatar display area (2Q), which can be used to display the avatars of document objects participating in the business collaboration document. For example, the avatar display area (2Q) may include the avatars of object a and object b.

[0031] Because the display size of the avatar display area 2Q is limited, the avatar icons of document objects displayed in this area do not include the object icons of all document objects. Therefore, the terminal device can sort all document objects and prioritize displaying the avatar icons of some document objects according to the sorting result. For example, the avatar display area 2Q can prioritize displaying the avatar icon of object 'a', and then display the avatar icons of other document objects based on their access timestamps for the business collaboration document. Of course, if object 'a' needs to find all document objects currently participating in the business collaboration document, object 'a' can execute a trigger operation on the avatar display area 2Q. Then, when the terminal device responds to the trigger operation and determines that object 'a' has object query permissions, all document objects will be displayed.

[0032] It should be understood that when the terminal interface of the target terminal device is interface 210J, the target terminal device needs to request document data associated with the business collaboration document from the backend device 20F. At this time, the target terminal device can generate a data transmission request 20q for the business collaboration document based on the document permission identifier and transmission connection identifier corresponding to the business object. Here, both the document permission identifier and the transmission connection identifier can be obtained by the backend device 20F after initializing the first block transmission channel (i.e., the block transmission channel established for object a). The document permission identifier is the identification information determined by the document permissions of the business object for the business collaboration document. The document permissions here can include document access permissions, document editing permissions, document management permissions, etc. The transmission connection identifier refers to the identification information corresponding to the first block transmission channel.

[0033] Furthermore, the terminal device can forward the data transmission request 20q to the backend device 20F via the gateway device 20W. Upon receiving the data transmission request 20q, the backend device 20F can perform authorization verification on object a based on the two identifiers carried in the data transmission request 20q, thereby obtaining an authorization result (i.e., the first authorization result). When the first authorization result indicates that object a has legitimate authorization, the backend device 20F can set a transmission maintenance period (e.g., 50 seconds) for the data transmission request 20q.

[0034] The transmission maintenance period setting here can be dynamically configured based on document information such as document type and document update time, and will not be limited here. For example, if the business collaboration document is a large document with more than 500 collaborators (e.g., a sales record statistics document), and the current time is a period of frequent updates, then the backend device 20F can set the transmission maintenance period to 30 minutes based on this document information. This means that within half an hour of receiving the data transmission request 20q, the backend device 20F can directly send the updated data for the business collaboration document to the target terminal device.

[0035] Furthermore, the backend device 20F can execute the document operation corresponding to the data transmission request 20q during the transmission maintenance period, and generate a business document message associated with the document operation (e.g., Figure 2 The message 20x can then be forwarded to the target terminal device through the gateway device 20W, so that the target terminal device can update the document details data 21S displayed on the original interface 210J in real time based on the message 20x, so as to display the updated document details data (e.g., the document details data 22S displayed on the interface 220J).

[0036] It should be noted that, Figure 2 The interfaces and controls shown are merely some forms of representation for reference. In actual business scenarios, developers can make relevant designs according to product requirements. This application does not limit the specific forms of the interfaces and controls involved.

[0037] Therefore, since device 20F can set a transmission maintenance period for data transmission request 20q when it successfully verifies that object a has legitimate permissions, the object terminal device can maintain a connection with device 20F throughout the transmission maintenance period via the first segmented transmission channel and receive business document messages returned by the backend device 20F. This means that when device 20F has new data to transmit during the transmission maintenance period, it can also directly forward it to the object terminal device through gateway device 20W. This new message transmission method eliminates the need for the object terminal device to generate new data transmission requests during the data transmission period, thereby reducing the consumption of computing resources, lowering costs, and meeting the needs of business development.

[0038] The specific implementation of this application's embodiment, which introduces a chunked transmission mechanism into the traditional Hypertext Transfer Protocol, to simulate a new message transmission method, can be found below. Figures 3-5 The corresponding implementation examples.

[0039] Further, please see Figure 3 , Figure 3 This is a flowchart illustrating a data processing method provided in an embodiment of this application. Figure 3 As shown, this method can be executed by a first device, which can be the aforementioned Figure 1 Any one of the background devices in the background device cluster shown, for example, background device 10F1. The method may include at least the following steps S101-S103: Step S101: Obtain the first data transmission request for the business collaboration document.

[0040] The first data transmission request here may carry a document permission identifier and a transmission connection identifier corresponding to the business object. The document permission identifier is identification information determined based on the document permissions of the business object for the business collaboration document; the transmission connection identifier refers to the identification information corresponding to the first segmented transmission channel established for the business object. Specifically, when the business object performs a trigger operation on the business collaboration document in the application client to display the business collaboration document on the terminal interface of the object terminal, the object terminal device can generate a first data transmission request for the business collaboration document based on the document permission identifier and transmission connection identifier corresponding to the business object. The trigger operation here may include contact operations such as clicking and long-pressing, or non-contact operations such as voice and gestures; these will not be limited here. Further, the object terminal device may send the first data transmission request to the gateway device that provides relay services, so that when the gateway device determines that the backend device used to transmit document data to the object terminal device is the first device, it forwards the first data transmission request to the first device.

[0041] In this embodiment, the gateway device can establish a routing table based on the backend device corresponding to the application client and the IP address of the backend device by employing a consistent hashing algorithm. For example, the gateway device can perform a hash calculation on the IP address corresponding to each backend device to obtain the corresponding hash value, and then use the hash value as a route identifier to indicate the connection to the backend device.

[0042] For ease of understanding, please further refer to Table 1, which is a routing table provided in an embodiment of this application. If, in this embodiment, the number of background devices corresponding to the application client is M (M is a positive integer), then the routing table shown in Table 1 may include M routing identifier mapping relationships. These mapping relationships indicate a one-to-one correspondence between the background device, the background device address, and the routing identifier. For example, the routing identifier mapping relationship for background device 10F1 can be used to indicate that the background device address corresponding to background device 10F1 is address D1, and the routing identifier corresponding to background device 10F1 is identifier 1. As shown in Table 1: Table 1

[0043] It is understandable that after the first device initializes the first segment transmission channel for the service object, the first device can configure its own routing identifier (i.e., the first routing identifier) ​​to the target terminal device, and then send the association between the first routing identifier and the target terminal device to the gateway device, so that the gateway device can subsequently forward the service requests sent by the target terminal device to the first device based on this association. For example... Figure 2As shown, when the gateway device 20W receives a data transmission request 20q from the target terminal device, it can obtain the routing identifier (i.e., the backend device corresponding to the document virtual room joined by object a) that has been configured for the target terminal device beforehand. For example, if the routing identifier obtained by the gateway device 20W is identifier 1 as shown in Table 1 above, then the gateway device can forward the data transmission request 20q to the backend device 10F1 (i.e., the backend device address corresponding to identifier 1, for example, address D1) based on the backend device address (e.g., address D1). Figure 2 The back-end device shown is 20F.

[0044] Step S102: Based on the document permission identifier and the transmission connection identifier, perform permission verification on the business object to obtain the first verification result.

[0045] Specifically, the first device can obtain a mapping table associated with the first document virtual room of the business collaboration document based on a data caching service (e.g., Redis). This mapping table can represent the connection identifiers corresponding to the block transmission channels of N document objects in the first document virtual room; N is a positive integer less than or equal to a threshold number of objects in the first document virtual room (e.g., 500). Further, the first device can query the mapping table based on the transmission connection identifiers. If a connection identifier matching the transmission connection identifier is found in the mapping table, the first device can continue to verify based on the document permission identifier, i.e., obtain the verification document permissions of the business object for the business collaboration document, and verify the document permission identifier based on the verification document permissions. If the document permissions corresponding to the document permission identifier match the verification document permissions, the first device can determine that the permission verification is successful and generate a first verification result indicating that the business object has legitimate permissions. Optionally, if the document permissions corresponding to the document permission identifier do not match the verification document permissions, the first device can determine that the permission verification has failed, generate a first verification result indicating that the business object has illegal permissions, and then generate an exception notification message indicating a packaging error based on the first verification result. At the same time, the first device can forward the abnormal notification message to the corresponding object terminal device through the gateway device via the access service.

[0046] Optionally, if no connection identifier matching the transmission connection identifier is found in the mapping table, the first device can generate an exception notification message to indicate a packaging error, and then forward the exception notification message to the object terminal device corresponding to the business object through the gateway device via the access service.

[0047] For ease of understanding, please further refer to Table 2, which is a mapping table provided in an embodiment of this application. This mapping table is established by the first device based on the mapping relationships corresponding to N document objects in the first document virtual room. These mapping relationships indicate a one-to-one correspondence between a document object and the connection identifier corresponding to the chunked transmission channel of that document object. These N document objects may specifically include object a, object b, ..., object n as shown in Table 2. For example, the mapping relationship corresponding to object a can be used to indicate the connection identifier corresponding to the chunked transmission channel of object a. As shown in Table 2: Table 2

[0048] like Figure 2 As shown, when the backend device 20F receives the data transmission request 20q forwarded by the gateway device 20W, it can obtain the transmission connection identifier (token) and document permission identifier (sid) carried by the data transmission request 20q. Further, the backend device 20F can first query the transmission connection identifier in the mapping table shown in Table 2. If the backend device 20F does not find a matching connection identifier in the mapping table, it can determine that the permission verification has failed, and then generate a first verification result indicating that object a has illegal permissions. At this time, the backend device 20F can generate an exception notification message indicating a packaging error. For example, the exception notification message could be "Sorry, you are temporarily unable to obtain the updated data for this document. Please check your network connection." Further, the backend device 20F can forward this exception notification message to the target terminal device through the gateway device 20W, so that the target terminal device can display it on the interface 220J. The abnormal notification message can be displayed on interface 220J in the form of a floating window, a mask, or a semi-transparent form. Alternatively, it can be displayed on an interface whose size can be changed by dragging and can be shrunk. The size of this interface is smaller than that of interface 220J.

[0049] Optionally, if the backend device 20F finds a connection identifier that matches the transmission connection identifier in the mapping table, which is identifier B1 as shown in Table 1, then the backend device 20F can continue to perform verification based on the document permission identifier. For example, the backend device 20F needs to obtain the current document permissions of object a for business collaboration documents to verify document permissions, and then can verify the document permission identifier based on the verified document permissions.

[0050] If the verification document permission obtained by the backend device 20F is a document prohibition permission (i.e., prohibiting object a from accessing business collaboration documents), then the backend device 20F can determine that the document permission corresponding to the document permission identifier (e.g., document editing permission) does not match the verification document permission. In this case, the backend device 20F can determine that the permission verification has failed, and thus generate a first verification result indicating that object a has illegal permissions. Based on this first verification result, an exception notification message indicating a packaging error is generated. For example, the exception notification message could be "Sorry, you do not currently have permission to access this document. Please contact the document management object for correction." Furthermore, the backend device 20F can forward this exception notification message to the object's terminal device through the gateway device 20W, so that the object's terminal device can display it on the interface 220J.

[0051] If the verification document permission obtained by the backend device 20F is a document editing permission, then the backend device 20F determines that the document permission corresponding to the document permission identifier (e.g., document editing permission) matches the verification document permission. At this time, the backend device 20F can determine that the permission verification is successful, and then generate a first verification result to indicate that object a has illegal permissions.

[0052] Step S103: When the first verification result indicates that the business object has legitimate permissions, a transmission maintenance period is set for the first data transmission request, and the document operation corresponding to the first data transmission request is executed within the transmission maintenance period to generate a business document message associated with the document operation and return it to the business object.

[0053] Specifically, when the first verification result indicates that the business object has legitimate permissions, the first device can set the business status of the first block transmission channel to a connected state, and set a transmission maintenance period (e.g., 50 seconds) for the first data transmission request based on the request maintenance channel. Further, the first device can respond to the document operation corresponding to the first data transmission request within the transmission maintenance period and perform signal detection on the local buffer. If a data update signal sent by the local buffer is detected within the transmission maintenance period, the first device can package the document data cached in the local buffer according to the transmission format corresponding to the block encoding transmission rule to obtain document block data. Then, based on this document block data, a business document message associated with the document operation can be generated and returned to the business object. This business document message can be displayed on the object terminal device corresponding to the business object.

[0054] like Figure 2As shown, when the backend device 20F determines that object a has legitimate permissions, it can use a channel in a certain programming language (e.g., Golang) to block the data transmission request 20q. This means setting the business state of the first segment transmission channel corresponding to object a from its initial state to a connected state, and thus setting a transmission maintenance period for the data transmission request, for example, maintaining it for 50 seconds without termination. Furthermore, the backend device 20F can respond to the document operation (e.g., document update operation) corresponding to the data transmission request within the transmission period, performing signal detection on its local cache. It is understood that once the backend device 20F's local cache caches document data for the business collaboration document, it will generate a data update signal so that the backend device 20F can subsequently update the document object in the first document virtual room. For example, if a data update signal is detected from the local cache during the transmission maintenance period, it means that the backend device 20F has document data to push. In this case, the backend device 20F can package the document data cached in the local cache based on the transmission format corresponding to the chunked encoding transmission rules, thereby obtaining document chunk data to generate a business document message to be returned to object a. In other words, the backend device 20F can package the document data according to the pre-set chunked transmission protocol header and data format, and then write it out through the currently maintained chunked transmission channel. When object a's terminal device receives the business document message, it can display the message on the terminal interface of the terminal device in real time for object a to browse.

[0055] Understandably, when the transmission duration corresponding to the first data transmission request reaches the transmission maintenance period, the first device can obtain the release signal sent by the request maintenance channel. Based on the release signal, it can change the service status of the service object for the first segmented transmission channel from a connected state to a released state. After the change is completed, a release notification message associated with the release signal is generated. Then, the first device can send the release notification message to the object terminal device corresponding to the service object, so that the object terminal device can generate a second data transmission request for the business collaboration document based on the release notification message. This second data transmission request can be used to change the service status of the first segmented transmission channel back from a released state to a connected state.

[0056] like Figure 2As shown, if the transmission duration corresponding to the data transmission request has reached the transmission maintenance period (e.g., 50 seconds), the backend device 20F can change the service status of the first segment transmission channel corresponding to object a from the connected state to the released state based on the release signal sent by the request maintenance pipe. Then, through the gateway device 20W, the release notification message generated after the change can be sent to the object terminal device corresponding to object a. When the object terminal device receives the release notification message, it can generate a new request (i.e., the second data transmission request) to obtain document data from the backend device 20F based on the document permission identifier and transmission connection identifier of object a.

[0057] Furthermore, the target terminal device can forward the second data transmission request to the backend device 20F again through the first routing identifier determined by the gateway device 20W. This allows the backend device 20F to change the service status of the first segmented transmission channel back to the connected state and set a transmission maintenance period for the second data transmission request. During the transmission maintenance period of the second data transmission request, it can continue to update the document data of the business collaboration document to the target terminal device, and so on. This cyclical message push method allows the backend device 20F to continuously push messages. Of course, there is an interval between any two data transmission requests. When the backend device 20F responds to the update operation of other document objects (e.g., object b) on the business collaboration document, it may be in this interval. That is, the backend device 20F determines that the first segmented transmission channel cannot transmit data, i.e., there is no available connection. At this time, the backend device 20F can temporarily cache the document data generated by object b's update operation on the business collaboration document in its local cache, and then package and output it when a connection comes in (i.e., the service status of the first segmented transmission channel is back to the connected state).

[0058] In this embodiment, when the first device (the backend device corresponding to the application client associated with the business collaboration document) receives a first data transmission request for the business collaboration document, it can perform permission verification on the business object based on the document permission identifier (token) and transmission connection identifier (sid) carried in the first data transmission request to obtain a first verification result. Here, the document permission identifier can be identification information determined based on the document permissions of the business object for the business collaboration document, and the transmission connection identifier refers to the identification information corresponding to the first segmented transmission channel established for the business object. It can be understood that when the first verification result indicates that the business object has legitimate permissions, the first device can set a transmission maintenance period for the first data transmission request. This means that the business object and the first device can maintain their connection through the first segmented transmission channel established for the business object throughout the transmission maintenance period. That is, the first device can execute the document operation corresponding to the first data transmission request during the transmission maintenance period to generate a business document message associated with the document operation. In other words, by setting a transmission maintenance period for the first data transmission request, the first device in this embodiment does not require the business object to actively close the transmission link, nor does it need to continuously maintain the link between the first device and the target terminal device, thus effectively reducing resource consumption and lowering costs.

[0059] Further, please see Figure 4 , Figure 4 This is a flowchart illustrating a data processing method provided in an embodiment of this application. Figure 4 As shown, this method is jointly executed by the object terminal device corresponding to the business object, the gateway device, and the first device used to create the first document virtual room. The object terminal device can be one of the aforementioned... Figure 1 Any terminal device in the terminal device cluster shown, for example, terminal device 100a. This first device can be any of the aforementioned terminal devices. Figure 1 This refers to any one of the backend devices in the backend device cluster shown, for example, backend device 10F1. The gateway device can be any of the aforementioned... Figure 1 The gateway device shown is 10W. This method may include at least the following steps S201-S214: The first device provided in this application embodiment can deploy three data interfaces, specifically including a first data interface (e.g., a bind / post interface), a second data interface (e.g., a bind / get interface), and a third data interface (e.g., a save interface). The first data interface can be used to initialize the chunked transmission channel, simulating the connection establishment process of a traditional long-connection push mechanism. The second data interface can be used to simulate the downlink data transmission process, which refers to the data transmission process of sending document data of a business collaboration document from the first device to the target terminal device. The third data interface can be used to simulate the uplink data transmission process, which refers to the data transmission process of uploading document data of a business collaboration document from the target terminal device to the first device.

[0060] The connection establishment process simulated by the first data interface can be seen in the following steps S201-S204: Step S201: The target terminal device sends a channel establishment request to the gateway device.

[0061] Specifically, when a business object opens a business collaboration document on a terminal device for the first time, the terminal device can respond to the opening operation and obtain the business object's login status information (e.g., a cookie). This login status information may include the access timestamp recorded when the business object opens the business collaboration document, the business object's basic information (e.g., object avatar, object nickname, etc.), and a document object identifier (UID) used to uniquely represent the business object in the business collaboration document. It is understood that in the specific embodiments of this application, data related to the business object's login status information, when applied to specific products or technologies, requires the user's (i.e., the business object's) permission or consent, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. Furthermore, the terminal device can generate a channel establishment request (bind post) based on the login status information and the document information of the business collaboration document, and then send this channel establishment request to the gateway device.

[0062] In step S202, the gateway device forwards a channel establishment request to the first device based on the first routing identifier.

[0063] Specifically, the routing table stored in the gateway device can be as shown in Table 1 above. Each of the M backend devices shown in Table 1 can create a virtual room for business collaboration documents, and these M backend devices can be arranged and displayed in order of room creation priority. For example, the room creation priority of backend device 10F1 is higher than that of backend device 10F2, the room creation priority of backend device 10F2 is higher than that of backend device 10F3, and so on. Based on this, when the gateway device receives a channel establishment request, it can obtain the routing identifier (i.e., the first routing identifier) ​​corresponding to the backend device with the highest room creation priority based on the document information of the business collaboration document in the channel establishment request. Then, it can send the channel establishment request to the backend device (i.e., the first device) corresponding to the first routing identifier based on the first routing identifier.

[0064] In step S203, the first device verifies the document permissions of the business object for the business collaboration document based on the login status information, obtains an initial verification result, and when it is determined that the initial verification result indicates that the business object has document participation permissions, it establishes a first block transmission channel based on the number of objects in the first document virtual room.

[0065] Specifically, when the first device receives a channel establishment request from the gateway device through the access service, it can verify the document permissions of the business object for the business collaboration document based on the login state information through the room layer service. That is, it determines whether the business object has the document participation permission for the business collaboration document, and thus obtains an initial verification result. It can be understood that when the initial verification result indicates that the business object has document participation permission, the first device can obtain the number of objects in the first document virtual room corresponding to the business collaboration document, thereby determining whether the business object can join the first document virtual room, that is, whether the first device can establish the first block transmission channel corresponding to the business object.

[0066] To alleviate the operational burden on each backend device, this embodiment of the application can reasonably configure the object quantity threshold for the corresponding document virtual room based on the computing resources of each backend device. This object quantity threshold limits the number of document objects accessing the business collaboration document on the same backend device. For example, the object quantity threshold for the first document virtual room created by the first device for the business collaboration document can be set to 500 people, and the object quantity threshold for the second document virtual room created by the second device for the business collaboration document can be set to 300 people. If the number of objects in the first document virtual room does not reach the object quantity threshold (e.g., 500), the first device can establish a first block transmission channel corresponding to the business object between the object terminal device and the first device corresponding to the first document virtual room, thereby adding the business object to the first document virtual room.

[0067] In step S204, the first device generates a first document message based on the generated first permission identifier and first connection identifier, and sends the first document message to the gateway device.

[0068] Specifically, after adding a business object to a first document virtual room, the first device can generate a first permission identifier associated with document permissions and a first connection identifier based on the access timestamp in the login status information. This first connection identifier indicates the first segmented transmission channel established between the object terminal device and the first device. Further, the first device can generate a first document message based on the first permission identifier and the first connection identifier, and send this first document message to a gateway device via an access service, so that the gateway device forwards it to the object terminal device. The object terminal device can subsequently use the first permission identifier in the first document message as a document permission identifier and the first connection identifier as a transmission connection identifier to generate business requests (e.g., a first data transmission request, a second data transmission request, and a data change request) to meet business needs.

[0069] Optionally, if the number of objects in the first document virtual room reaches the threshold for the number of objects in the first document virtual room (e.g., 500), it means that the first document virtual room is full. In this case, the first device needs to obtain the room creation priority of each backend device in the backend device cluster where the first device is located, and then select the backend device with the highest room creation priority from the backend device cluster other than the first device as the second backend device (e.g., the one mentioned above). Figure 1The backend device 10F2 shown can then be used as the routing identifier corresponding to the second device as a second routing identifier for modifying the first routing identifier. At this time, the first device can send the second routing identifier to the gateway device via the access service, so that the gateway device changes the routing identifier corresponding to the business object from the first routing identifier to the second routing identifier, and forwards the channel establishment request to the second device via the second routing identifier. In a multi-user collaborative document scenario, this embodiment can refer to the document virtual room created by the second device for the business collaborative document as the second document virtual room.

[0070] When the second device receives the channel establishment request, it can further determine whether the business object can join the second document virtual room, i.e., whether the second device can establish the first segmented transmission channel corresponding to the business object, based on the object quantity threshold in the second document virtual room and the current object quantity in the second document virtual room. It is understood that when the second device successfully adds the business object to the second document virtual room based on the channel establishment request, the second device can generate a second document message to be returned to the object terminal device based on the second permission identifier and the second connection identifier. The second permission identifier can be a permission identifier generated by the second device based on the document permissions of the business object when verifying that the business object has document participation permissions. The second connection identifier is a connection identifier generated by the second device based on the access timestamp in the login status information, and this second connection identifier is used to indicate the first segmented transmission channel established between the object terminal device and the second device.

[0071] When a business object joins the first document virtual room, the data downlink transmission process simulated by the second data interface can be seen in the following steps S205-S209: In step S205, the target terminal device sends a first data transmission request for the business collaboration document to the gateway device.

[0072] Specifically, when a business object performs a trigger operation on a business collaboration document in the application client to display the document on the terminal interface of the object terminal, the object terminal device can generate a first data transmission request for the business collaboration document based on the document permission identifier and transmission connection identifier corresponding to the business object. The trigger operation here can include contact operations such as clicking or long-pressing, as well as non-contact operations such as voice or gestures; these are not limited here. Furthermore, the object terminal device can send this first data transmission request to a gateway device that provides relay services.

[0073] In step S206, the gateway device forwards the first data transmission request to the first device based on the first routing identifier.

[0074] Specifically, the gateway device can obtain the first route identifier corresponding to the service object, and then send the first data transmission request to the first device based on the first route identifier.

[0075] In step S207, the first device performs permission verification on the business object based on the document permission identifier and the transmission connection identifier, and obtains the first verification result.

[0076] Specifically, the first device can obtain a mapping table associated with the first document virtual room of the business collaboration document based on a data caching service. Further, the first device can query the mapping table based on the transmission connection identifier. If no connection identifier matching the transmission connection identifier is found in the mapping table, the first device can determine that the permission verification has failed and generate a first verification result indicating that the business object has illegal permissions. Optionally, if a connection identifier matching the transmission connection identifier is found in the mapping table, the first device can continue to verify based on the document permission identifier, that is, obtain the verification document permissions of the business object for the business collaboration document, and verify the document permission identifier based on the verification document permissions. When the document permissions corresponding to the document permission identifier match the verification document permissions, the first device can determine that the permission verification is successful and generate a first verification result indicating that the business object has legal permissions. When the document permissions corresponding to the document permission identifier do not match the verification document permissions, the first device can determine that the permission verification has failed and generate a first verification result indicating that the business object has illegal permissions.

[0077] In step S208, when the first verification result indicates that the service object is legitimate, the first device performs the document operation corresponding to the first data transmission request within the transmission maintenance period set in the first data transmission request, generates a service document message, and sends the service document message to the gateway device so that the gateway device can send it to the object terminal device.

[0078] Specifically, when the first verification result indicates that the service object has legitimate permissions, the first device can set the service status of the first chunked transmission channel to a connected state and set a transmission maintenance period (e.g., 50 seconds) for the first data transmission request based on the request maintenance channel. Further, the first device can respond to the document operation corresponding to the first data transmission request within the transmission maintenance period and perform signal detection on the local buffer. If a data update signal sent by the local buffer is detected within the transmission maintenance period, the first device can package the document data cached in the local buffer according to the transmission format corresponding to the chunked encoding transmission rule to obtain document chunked data. Then, based on this document chunked data, a business document message can be generated to be returned to the service object. Further, the first device can send the business document message to the gateway device based on the access service, so that the gateway device forwards it to the object terminal device. This business document message is displayed on the object terminal device corresponding to the service object.

[0079] In step S209, when the first verification result indicates that the service object is illegal, the first device generates an exception notification message to indicate a packaging error and sends the exception notification message to the gateway device so that the gateway device forwards it to the object terminal device.

[0080] For specific implementation methods of steps S205-S209, please refer to the above. Figure 3 The descriptions of steps S101-S103 in the corresponding embodiments will not be repeated here. Furthermore, the data uplink transmission process simulated by the third data interface can be found in steps S210-S214 below: In step S210, the target terminal device sends a data change request for the business collaboration document to the gateway device.

[0081] Specifically, when a business object performs a change operation (e.g., data deletion, data editing, or data modification) on a business collaboration document displayed on the object terminal device, the object terminal device can respond to the change operation, obtain the change data associated with the change operation, and then generate a data change request for the business collaboration document based on the document permission identifier, transmission connection identifier, and change data. Furthermore, the object terminal device can send this data change request to the gateway device.

[0082] Step S211: The gateway device forwards a data change request to the first device based on the first routing identifier.

[0083] Specifically, the gateway device can obtain the first route identifier corresponding to the service object, and then send the data change request to the first device based on the first route identifier.

[0084] In step S212, the first device performs permission verification on the business object based on the document permission identifier and transmission connection identifier carried in the data change request, and obtains the second verification result.

[0085] Specifically, the first device obtains the document permission identifier and transmission connection identifier carried in the data change request, and then performs permission verification on the business object based on the data caching service to obtain a second verification result. The specific implementation of the second verification result obtained by the first device can be found in the specific implementation of obtaining the first verification result described in step S207 above, and will not be repeated here.

[0086] In step S213, when the second verification result indicates that the business object has legitimate permissions, the first device performs data conflict handling on the data change request based on the task orchestration service.

[0087] Specifically, when the second verification result indicates that the business object has legitimate permissions, the first device can, based on the task orchestration service, arrange and process data change requests and business requests received from other document objects to obtain a task queue for the business collaboration document. Furthermore, the first device can, based on this task queue, perform data conflict handling on data change requests.

[0088] For example, if the document details of a business collaboration document are "I love peaches", a data change request instructs the first device to change the fourth character in the document details to "apple", meaning "peach" needs to be changed to "apple". Simultaneously, a business request (i.e., a business conflict request) exists in the task queue prior to this data change request, instructing the first device to change the second character in the document details to "like". This means that after the first device responds to the document operation corresponding to the business conflict request, the document details of the business collaboration document have been updated to "I like peaches". Therefore, when the first device subsequently executes a data change request, to meet the actual needs of the business object, data conflict processing should be performed on the data change request, i.e., the position of the character to be changed in the data change request should be redefined (e.g., the fifth character). At this point, a data processing request after data conflict processing can be used to instruct the first device to change the fifth character in the document details to "apple".

[0089] In step S214, the first device responds to the change operation corresponding to the data change request after the data conflict is resolved and sends a third document message to the gateway device so that the gateway device forwards the third document message to the target terminal device.

[0090] Specifically, the first device can respond to the data change request corresponding to the data conflict resolution based on the changed data, and then perform database persistence processing on the document data obtained after the change operation. Here, database persistence processing refers to storing the document data obtained after the change operation into the database of the first device. Simultaneously, after responding to the change operation, the first device can generate a third document message indicating successful change, and then send this third document message to the gateway device through the access service, so that the gateway device forwards the third document message to the target terminal device.

[0091] Understandably, when the first device stores the document data obtained after the change operation into its database, it can obtain document objects other than the business object in the first document virtual room, and then use these obtained document objects as broadcast objects. Further, the first device can obtain the block transmission channel between the broadcast object and the first device based on its block transmission manager, and designate the obtained block transmission channel as the second block transmission channel. If the business status of the broadcast object for the second block transmission channel is in a released state, the first device can store the document data after the change operation into its local cache, and when it detects that the business status of the second block transmission channel has changed from a released state to a connected state, it generates an update message to send to the broadcast object based on the document data stored in its local cache.

[0092] like Figure 2 As shown, if object a performs a change operation on the business collaboration document on interface 210J, the backend device 20F can store the changed document data in its database after responding to the change operation. At this time, the backend device 20F can obtain document objects other than object a in the first document virtual room (e.g., object b displayed on interface 220J), and can then use the obtained object b as a broadcast object. The chunk manager deployed by the backend device 20F can be used to manage the chunk transmission channels established between the M document objects in the first document virtual room and the first device, where M refers to the number of document objects in the current first document virtual room, and M is a positive integer.

[0093] At this time, the backend device 20F can obtain the chunked transmission channel between object b and the backend device 20F based on the chunked transmission manager of the backend device 20F, and then determine the obtained chunked transmission channel as the second chunked transmission channel. Further, the backend device 20F can detect the service status of the second chunked transmission channel. When the service status of the second chunked transmission channel is connected, the first device can directly package the document data after the change operation according to the chunked encoding transmission rules, and send the update message generated after packaging to the terminal device corresponding to object b (e.g., the one mentioned above) through the gateway device. Figure 1 Another terminal device in the terminal device cluster shown, for example, terminal device 100b).

[0094] Optionally, if object b is in the released state for the service status of the second segmented transmission channel, the backend device 20F can store the document data after the change operation in the local cache, and when it detects that the service status of the second segmented transmission channel has changed from the released state to the connected state, it generates an update message to be sent to object b based on the document data stored in the local cache.

[0095] In this embodiment, the first device is further equipped with a timer to detect the data transmission status of the first segment transmission channel, simulating the connection disconnection process of a traditional long-connection push mechanism. It is understood that the first device can periodically detect each of the M segment transmission channels under its segment transmission manager based on the timer's detection duration (e.g., every second). These M segment transmission channels may include the first segment transmission channel corresponding to the business object. The timer's detection duration can be dynamically adjusted according to actual business needs, and will not be limited here.

[0096] When a business object temporarily shrinks the terminal interface where the business collaboration document is located, or opens another business data display interface to cover the terminal interface where the business collaboration document is located, this means that the first segment transmission channel will have no data transmission. It should be understood that if the first device detects that the first segment transmission channel has no data transmission within a business detection period (e.g., 30 seconds), meaning the terminal device has not displayed the business collaboration document for as long as 30 seconds, then the first device can destroy the first segment transmission channel and remove the business object from the first document virtual room to release resources. Subsequently, when the business object returns to the terminal interface where the business collaboration document is located, a new first segment transmission channel needs to be re-established for the business object through the gateway device, following steps S201-S204 as described above.

[0097] Optionally, when the business object closes the terminal interface where the business collaboration document is located, the object terminal device can also directly generate a channel destruction request to instruct the destruction of the first segment transmission channel. Then, when the request is sent to the first device through the gateway device, the first device can immediately destroy the first segment transmission channel based on the channel destruction request and exit the first document virtual room.

[0098] For better understanding, please refer to [link / reference]. Figure 5 , Figure 5 This is a flowchart illustrating a message push method provided in an embodiment of this application. For example... Figure 5 As shown, the first device in this embodiment can be the one described above. Figure 1 Any one of the backend devices in the backend device cluster in the corresponding embodiment, for example, backend device 10F1.

[0099] It should be understood that at the start of the downlink data transmission process, the first device may execute step S501 to obtain the service request sent by the gateway device based on the routing identifier of the service object (i.e., the first routing identifier). This service request may include channel establishment requests and data transmission requests. Further, the first device may execute step S502 to determine the request type of the service request in order to determine the steps to be executed.

[0100] When the first device determines that the request type of the service request is a channel establishment request, the first device needs to execute steps S503-S507 to establish a first block transmission channel for the service object. For example, the first device can execute step S503 to determine whether the service object has document participation permissions. If the service object does not have document participation permissions, it can be understood that the service object cannot access the business collaboration document. At this time, the first device can generate a message indicating that the service object does not have document participation permissions, and then jump to step S506 to send the message to the object terminal device through the gateway device to end the process.

[0101] Optionally, when the business object has document participation permissions, the first device can execute step S504 to determine whether the first document virtual room created by the first device for the business collaboration document is full. If it is determined that the first document virtual room is full, the first device can execute step S505 to change the routing identifier of the business object from the first routing identifier to the second routing identifier, and then execute step S506 to send the message carrying the second routing identifier to the object terminal device through the gateway device to end the process. If it is determined that the first document virtual room is not full, the first device can execute step S507 to establish a first segmented transmission channel between the object terminal device and the first device, and add the business object to the first document virtual room. Then, a first permission identifier associated with the document permissions of the business object can be generated, and a first connection identifier for indicating the first segmented transmission channel can be generated based on the access timestamp in the login status information. Then, a first document message can be generated based on these two identifiers, and step S506 can be executed to send the first document message to the object terminal device through the gateway device to end the process.

[0102] When the first device determines that the service request type is a data transmission request, it needs to execute steps S508-S512 to send document data to the target terminal device through the first block transmission channel. For example, the first device can execute step S508 to determine whether the data transmission request (e.g., the first data transmission request or the second data transmission request) carries a document permission identifier and a transmission connection identifier. If the data transmission request does not carry a document permission identifier or a transmission connection identifier, the first device can directly jump to step S512 to generate an exception notification message indicating a packaging error, and then execute step S506 to send the exception notification message to the target terminal device through the gateway device to end the process.

[0103] Optionally, if the data transmission request carries a document permission identifier and a transmission connection identifier, the first device can execute steps S509-S510 to verify both the transmission connection identifier and the document permission identifier. If any identifier fails verification, the first device directly jumps to step S512 to generate an exception notification message indicating a packaging error. Then, step S506 is executed to send the exception notification message to the target terminal device via the gateway device to end the process. Alternatively, if both the transmission connection identifier and the document permission identifier are successfully verified, the first device can execute step S511 to package the document data cached in the local cache based on the transmission format corresponding to the block encoding transmission rule within the transmission maintenance period of the data transmission request. Based on the obtained document block data, a document message (i.e., a business document message) is generated. Then, step S506 is executed to send the business document message to the target terminal device via the gateway device to end the process.

[0104] Furthermore, at the start of the data uplink transmission process, the first device can execute step S513 to obtain the data change request sent by the gateway device based on the routing identifier of the service object (i.e., the first routing identifier), and then execute step S514 to determine whether the data change request carries a document permission identifier and a transmission connection identifier. If the data change request does not carry a document permission identifier or a transmission connection identifier, the first device can directly jump to step S519 to generate an exception notification message indicating a packaging error, and then execute step S518 to send the exception notification message to the target terminal device through the gateway device to end the process.

[0105] Optionally, if the data change request carries a document permission identifier and a transmission connection identifier, the first device can execute steps S515-S516 to verify both the transmission connection identifier and the document permission identifier. If any identifier fails verification, the first device directly jumps to step S519 to generate an exception notification message indicating a packaging error. Then, step S506 is executed to send the exception notification message to the target terminal device via the gateway device to end the process. If both the transmission connection identifier and the document permission identifier are successfully verified, the first device can execute step S517 to perform data conflict handling on the data change request based on the task orchestration service provided by the first device. Based on the changed data carried in the data change request, it responds to the change operation corresponding to the data change request after data conflict handling, generating a third document message associated with the change operation. Then, step S518 is executed to send the third document message to the target terminal device via the gateway device to end the process. During step S517, the first device can also perform the process of step S511 through asynchronous confirmation.

[0106] This application's embodiments introduce a chunked transmission mechanism into the traditional Hypertext Transfer Protocol (HTTP). Leveraging the chunked encoding transmission mechanism's ability to maintain connections for extended periods and distribute data in chunks, a new message transmission method is simulated. This new method can be used for real-time data transmission between a business terminal device and a first device, enabling real-time bidirectional message push between the client and server at a lower cost. Because this new message transmission method can separately provide data uplink and downlink transmission processes, it achieves read-write separation, effectively meeting business development needs. Furthermore, when the business object has legitimate permissions, the first device can set a transmission maintenance period for the first data transmission request. This means that the business object and the first device can maintain their connection through the first chunked transmission channel established for the business object throughout the transmission maintenance period. In other words, when the first device needs to transmit new document data to the business object during the transmission maintenance period, it does not need to obtain the business object's data transmission request for the business collaboration document again. This reduces the number of data transmissions between the target terminal device and the first device, effectively reducing network bandwidth usage and thus reducing computing resource consumption. Furthermore, the first device sets a transmission maintenance period for the first data transmission request, which means that in this application embodiment, the business object does not need to actively close the transmission link, nor does it need to maintain the link between the first device and the target terminal device. Instead, it uses a timer to periodically detect and destroy the first block transmission channel in a timely manner when there is no data transmission. This effectively reduces resource consumption, lowers operation and maintenance costs and architecture costs, and improves observability.

[0107] Further, please see Figure 6 , Figure 6 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application. Figure 6 As shown, the data processing device 1 can be a computer program (including program code) running on a computer device; for example, the data processing device 1 is an application software. The data processing device 1 can be used to execute the corresponding steps in the methods provided in the embodiments of this application. Figure 6 As shown, the data processing device 1 can operate on a first device for creating a first document virtual room, and the first device can be the aforementioned Figure 1Any one of the backend devices in the backend device cluster shown, for example, backend device 10F1. The data processing device 1 may include: a first transmission request acquisition module 11, a first result determination module 12, a business message generation module 13, a channel establishment request acquisition module 14, an initial result determination module 15, a channel establishment module 16, an identifier generation module 17, a first message generation module 18, a route identifier change module 19, a route identifier sending module 20, a release signal acquisition module 21, a release message generation module 22, a release message sending module 23, a data change request acquisition module 24, a second result determination module 25, a conflict handling module 26, a data storage module 27, a third message generation module 28, a broadcast object acquisition module 29, a transmission channel determination module 30, a data caching module 31, an update message generation module 32, a channel detection module 33, and a channel destruction module 34.

[0108] The first transmission request acquisition module 11 is used to acquire a first data transmission request for a business collaboration document; the first data transmission request carries a document permission identifier and a transmission connection identifier corresponding to the business object; the document permission identifier is identification information determined based on the document permissions of the business object for the business collaboration document; the transmission connection identifier refers to the identification information corresponding to the first block transmission channel established for the business object; The first result determination module 12 is used to perform permission verification on the business object based on the document permission identifier and the transmission connection identifier, and obtain the first verification result.

[0109] The first result determination module 12 includes: an identifier table acquisition unit 121, a query unit 122, an identifier verification unit 123, a verification success unit 124, a first abnormal message generation unit 125, a first abnormal message forwarding unit 126, a verification failure unit 127, a second abnormal message generation unit 128, and a second abnormal message forwarding unit 129.

[0110] The identifier table acquisition unit 121 is used to acquire a mapping table associated with the first document virtual room of the business collaboration document based on the data caching service; the mapping table is used to represent the connection identifiers corresponding to the block transmission channels of N document objects in the first document virtual room; N is a positive integer less than or equal to the threshold of the number of objects in the first document virtual room; The query unit 122 is used to query the mapping table based on the transmission connection identifier; The identifier verification unit 123 is used to obtain the verification document permission of the business object for the business collaboration document if a connection identifier matching the transmission connection identifier is found in the mapping table, and to verify the document permission identifier based on the verification document permission. The verification success unit 124 is used to determine that the permission verification is successful if the document permission corresponding to the document permission identifier matches the document permission to be verified, and to generate a first verification result to indicate that the business object has legitimate permissions.

[0111] The first abnormal message generation unit 125 is used to generate an abnormal notification message indicating a packaging error if no connection identifier matching the transmission connection identifier is found in the mapping table. The first abnormal message forwarding unit 126 is used to forward abnormal notification messages to the object terminal device corresponding to the business object through the gateway device via the access service.

[0112] The verification failure unit 127 is used to determine that the permission verification has failed if the document permission corresponding to the document permission identifier does not match the document permission to be verified, and to generate a first verification result to indicate that the business object has illegal permissions. The second abnormal message generation unit 128 is used to generate an abnormal notification message indicating a packaging error based on the first verification result; The second abnormal message forwarding unit 129 is used to forward abnormal notification messages to the object terminal device corresponding to the business object through the gateway device via the access service.

[0113] The specific implementation methods of the identifier table acquisition unit 121, query unit 122, identifier verification unit 123, verification success unit 124, first abnormal message generation unit 125, first abnormal message forwarding unit 126, verification failure unit 127, second abnormal message generation unit 128, and second abnormal message forwarding unit 129 can be found above. Figure 3 The description of step S102 in the corresponding embodiment will not be repeated here.

[0114] The business message generation module 13 is used to set a transmission maintenance period for the first data transmission request when the first verification result indicates that the business object has legitimate permissions, and to perform the document operation corresponding to the first data transmission request within the transmission maintenance period, generate a business document message associated with the document operation, and return it to the business object.

[0115] The service message generation module 13 includes: a setting unit 131, a signal detection unit 132, a packaging processing unit 133, and a service message generation unit 134.

[0116] The setting unit 131 is used to set the service status of the first block transmission channel to the connected state when the first verification result indicates that the service object has legitimate permissions, and to set the transmission maintenance period for the first data transmission request based on the request maintenance pipe. The signal detection unit 132 is used to respond to the document operation corresponding to the first data transmission request during the transmission maintenance period and to perform signal detection on the local buffer. The packaging processing unit 133 is used to package the document data cached in the local cache according to the transmission format corresponding to the block encoding transmission rule if a data update signal sent by the local cache is detected during the transmission maintenance period, so as to obtain document block data. The business message generation unit 134 is used to generate business document messages associated with document operations based on document block data and return them to the business object; the business document messages are displayed on the object terminal device corresponding to the business object.

[0117] The specific implementation methods of the setting unit 131, signal detection unit 132, packet processing unit 133, and service message generation unit 134 can be found in the above description. Figure 3 The description of step S103 in the corresponding embodiment will not be repeated here.

[0118] Among them, the document permission identifier and the transmission connection identifier are both obtained after initializing the first block transmission channel; the document permission identifier is the first permission identifier; the transmission connection identifier is the first connection identifier. The channel establishment request acquisition module 14 is used to acquire, through the access service, the channel establishment request forwarded by the gateway device based on the first routing identifier; the channel establishment request is generated by the terminal device of the business object based on the login status information of the business object when displaying the business collaboration document; the first routing identifier is determined based on the document information of the business collaboration document; The initial result determination module 15 is used to verify the document permissions of the business object for the business collaboration document based on the login status information, obtain the initial verification result, and when the initial verification result indicates that the business object has the document participation permission, obtain the number of objects in the first document virtual room corresponding to the business collaboration document. The channel establishment module 16 is used to establish a first block transmission channel between the object terminal device and the first device corresponding to the first document virtual room if the number of objects does not reach the object number threshold of the first document virtual room, and add the business objects to the first document virtual room. The identifier generation module 17 is used to generate a first permission identifier associated with document permissions and to generate a first connection identifier corresponding to the first block transmission channel based on the access timestamp in the login status information. The first message generation module 18 is used to generate a first document message for returning to the target terminal device based on the first permission identifier and the first connection identifier.

[0119] The route identifier change module 19 is used to change the first route identifier to obtain the second route identifier based on the room creation priority if the number of objects reaches the object number threshold. The routing identifier sending module 20 is used to return the second routing identifier to the gateway device through the access service, so that the gateway device forwards the channel establishment request to the second device corresponding to the second routing identifier; the second device is used to return the second document message to the target terminal device through the gateway device; the second document message is generated by the second device based on the second permission identifier and the second connection identifier when the business object is successfully added to the second document virtual room based on the channel establishment request; the second document virtual room is a document virtual room created by the second device for business collaboration documents; the second permission identifier is a permission identifier generated by the second device based on document permissions when verifying that the business object has document participation permissions; the second connection identifier is a connection identifier generated by the second device based on the access timestamp, and the second connection identifier is used to indicate the first block transmission channel established between the target terminal device and the second device.

[0120] The release signal acquisition module 21 is used to acquire the release signal sent by the request maintenance pipe when the transmission duration corresponding to the first data transmission request reaches the transmission maintenance period. The release message generation module 22 is used to change the service status of the service object for the first block transmission channel from the connected state to the released state based on the release signal, and generate a release notification message associated with the release signal after the change is completed. The release message sending module 23 is used to send a release notification message to the object terminal device corresponding to the business object, so that the object terminal device generates a second data transmission request for the business collaboration document based on the release notification message; the second data transmission request is used to change the business status of the first block transmission channel from the release status back to the connection status.

[0121] The data change request acquisition module 24 is used to acquire data change requests for business collaboration documents from business objects through the access service; the data change request is forwarded by the gateway device based on the first routing identifier; the data change request carries the document permission identifier, the transmission connection identifier, and the change data for the business collaboration document; The second result determination module 25 is used to perform permission verification on the business object based on the document permission identifier and the transmission connection identifier, and obtain the second verification result. The conflict handling module 26 is used to handle data conflict requests based on the task orchestration service when the second verification result indicates that the business object has legitimate permissions. The data storage module 27 is used to respond to the data change request after data conflict handling based on the changed data, and store the document data obtained after the change operation into the database. The third message generation module 28 is used to generate a third document message associated with the change operation and send the third document message to the business object.

[0122] The device operates on the first equipment; the first equipment is used to establish a first document virtual room corresponding to the business collaboration document, and the business object belongs to the first document virtual room; The module 29 for obtaining the object to be broadcast is used to obtain document objects other than business objects in the first document virtual room and to use the obtained document objects as the objects to be broadcast. The transmission channel determination module 30 is used to obtain the block transmission channel between the object to be broadcast and the first device based on the block transmission manager of the first device, and determine the obtained block transmission channel as the second block transmission channel. The data caching module 31 is used to store the document data after the change operation in the local cache if the service status of the object to be broadcast for the second block transmission channel is in the released state. The update message generation module 32 is used to generate an update message to be sent to the object to be broadcast based on the document data stored in the local cache when the service status of the second block transmission channel changes from the release state to the connection state.

[0123] The channel detection module 33 is used to detect the M block transmission channels under the block transmission manager of the first device based on the timer deployed on the first device; M is a positive integer; the M block transmission channels include the first block transmission channel; The channel destruction module 34 is used to destroy the first segment transmission channel and remove the business object from the first document virtual room if it is detected that the first segment transmission channel has no data transmission during the business detection period.

[0124] The specific implementation methods of the first transmission request acquisition module 11, the first result determination module 12, the service message generation module 13, the channel establishment request acquisition module 14, the initial result determination module 15, the channel establishment module 16, the identifier generation module 17, the first message generation module 18, the route identifier change module 19, the route identifier sending module 20, the release signal acquisition module 21, the release message generation module 22, the release message sending module 23, the data change request acquisition module 24, the second result determination module 25, the conflict handling module 26, the data storage module 27, the third message generation module 28, the broadcast object acquisition module 29, the transmission channel determination module 30, the data caching module 31, the update message generation module 32, the channel detection module 33, and the channel destruction module 34 can be found above. Figure 4 The descriptions of steps S201-S214 in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated.

[0125] Further, please see Figure 7 , Figure 7 This is a schematic diagram of a computer device provided in an embodiment of this application. Figure 7 As shown, the computer device 1000 can be a first device for creating a first document virtual room, and the first device can be as described above. Figure 1 Any one of the background devices in the illustrated background device cluster, such as background device 10F1, may include the following: at least one processor 1001, such as a CPU; at least one network interface 1004; a user interface 1003; memory 1005; and at least one communication bus 1002. The communication bus 1002 is used to enable communication between these components. The user interface 1003 may include a display screen and a keyboard. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface). The memory 1005 may be high-speed RAM or non-volatile memory, such as at least one disk drive. Optionally, the memory 1005 may also be at least one storage device located remotely from the aforementioned processor 1001. Figure 7 As shown, the memory 1005, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program.

[0126] exist Figure 7In the computer device 1000 shown, the network interface 1004 is mainly used for network communication with the gateway device; the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve: Obtain a first data transmission request for the business collaboration document; the first data transmission request carries the document permission identifier and transmission connection identifier corresponding to the business object; the document permission identifier is the identification information determined based on the document permissions of the business object for the business collaboration document; the transmission connection identifier refers to the identification information corresponding to the first segmented transmission channel established for the business object; Based on the document permission identifier and the transmission connection identifier, the business object is verified to obtain the first verification result; When the first verification result indicates that the business object has legitimate permissions, a transmission maintenance period is set for the first data transmission request, and the document operation corresponding to the first data transmission request is executed within the transmission maintenance period, generating a business document message associated with the document operation and returning it to the business object.

[0127] It should be understood that the computer device 1000 described in the embodiments of this application can execute the foregoing text. Figure 3 and Figure 4 The description of the data processing method in the corresponding embodiment can also be performed as described above. Figure 6 The description of the data processing apparatus 1 in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated here.

[0128] This application also provides a computer-readable storage medium storing a computer program, the computer program including program instructions, which are implemented when executed by a processor. Figure 3 and Figure 4 For details on the data processing methods provided in each step, please refer to [link / reference]. Figure 3 as well as Figure 4 The implementation methods provided for each step will not be elaborated here.

[0129] The computer-readable storage medium can be an internal storage unit of the data transmission apparatus or computer device provided in any of the foregoing embodiments, such as a hard disk or memory of the computer device. The computer-readable storage medium can also be an external storage device of the computer device, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., provided on the computer device. Furthermore, the computer-readable storage medium may include both internal and external storage units of the computer device. The computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.

[0130] This application also provides a computer program product, which includes a computer program stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium and executes the computer program, enabling the computer device to perform the data processing methods or apparatus described in the preceding embodiments, which will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated here.

[0131] The terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the term "comprising," and any variations thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, apparatus, product, or device that includes a series of steps or units is not limited to the listed steps or modules, but may optionally include steps or modules not listed, or may optionally include other step units inherent to these processes, methods, apparatuses, products, or devices.

[0132] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.

[0133] The above-disclosed embodiments are merely preferred embodiments of this application and should not be construed as limiting the scope of this application. Therefore, any equivalent variations made in accordance with the claims of this application shall still fall within the scope of this application.

Claims

1. A data processing method, characterized in that, include: Obtain the first data transfer request for the business collaboration document; The first data transmission request carries the document permission identifier and the transmission connection identifier corresponding to the business object; The document permission identifier is an identifier determined based on the document permissions of the business object for the business collaboration document; The transmission connection identifier refers to the identifier information corresponding to the first block transmission channel established for the service object; Based on the data caching service, a mapping table associated with the first document virtual room of the business collaboration document is obtained; the mapping table is used to represent the connection identifiers corresponding to the block transmission channels of N document objects in the first document virtual room; N is a positive integer less than or equal to the threshold of the number of objects in the first document virtual room; the mapping table is queried based on the transmission connection identifiers; If a connection identifier matching the transmission connection identifier is found in the mapping table, the verification document permission of the business object for the business collaboration document is obtained, and the document permission identifier is verified based on the verification document permission; If the document permission corresponding to the document permission identifier matches the document permission being verified, then the permission verification is determined to be successful, and a first verification result is generated to indicate that the business object has legitimate permissions. When the first verification result indicates that the business object has legitimate permissions, a transmission maintenance period is set for the first data transmission request, and the document operation corresponding to the first data transmission request is executed within the transmission maintenance period to generate a business document message associated with the document operation and return it to the business object.

2. The method according to claim 1, characterized in that, Both the document permission identifier and the transmission connection identifier are obtained after initializing the first block transmission channel; The document permission identifier is the first permission identifier; The transmission connection identifier is the first connection identifier; The method further includes: The access service obtains a channel establishment request forwarded by the gateway device based on a first routing identifier; the channel establishment request is generated by the terminal device of the business object based on the login status information of the business object when displaying the business collaboration document; the first routing identifier is determined based on the document information of the business collaboration document; Based on the login status information, the document permissions of the business object for the business collaboration document are verified to obtain an initial verification result. When the initial verification result indicates that the business object has document participation permissions, the number of objects in the first document virtual room corresponding to the business collaboration document is obtained. If the number of objects does not reach the object number threshold of the first document virtual room, a first block transmission channel is established between the object terminal device and the first device corresponding to the first document virtual room, and the business object is added to the first document virtual room. Generate a first permission identifier associated with the document permissions, and generate a first connection identifier corresponding to the first block transmission channel based on the access timestamp in the login status information; Based on the first permission identifier and the first connection identifier, a first document message is generated for returning to the object terminal device.

3. The method according to claim 2, characterized in that, The method further includes: If the number of objects reaches the object number threshold, the first route identifier is changed based on the room creation priority to obtain the second route identifier; The second routing identifier is returned to the gateway device through the access service, so that the gateway device forwards the channel establishment request to the second device corresponding to the second routing identifier; the second device is used to return a second document message to the target terminal device through the gateway device. The second document message is generated by the second device based on the second permission identifier and the second connection identifier when the second device successfully adds the business object to the second document virtual room based on the channel establishment request; the second document virtual room is a document virtual room created by the second device for the business collaboration document; the second permission identifier is a permission identifier generated by the second device based on the document permission when verifying that the business object has document participation permission; the second connection identifier is a connection identifier generated by the second device based on the access timestamp, and the second connection identifier is used to indicate the first block transmission channel established between the object terminal device and the second device.

4. The method according to claim 1, characterized in that, The method further includes: If no connection identifier matching the transmission connection identifier is found in the mapping table, an exception notification message indicating a packaging error is generated. By accessing the service, the exception notification message is forwarded to the object terminal device corresponding to the business object through the gateway device.

5. The method according to claim 1, characterized in that, The method further includes: If the document permission corresponding to the document permission identifier does not match the document permission to be verified, the permission verification is determined to have failed, and a first verification result is generated to indicate that the business object has illegal permissions. Based on the first verification result, an exception notification message indicating a packaging error is generated; By accessing the service, the exception notification message is forwarded to the object terminal device corresponding to the business object through the gateway device.

6. The method according to claim 1, characterized in that, When the first verification result indicates that the business object has legitimate permissions, the step of setting a transmission maintenance period for the first data transmission request, and performing the document operation corresponding to the first data transmission request within the transmission maintenance period, generating a business document message associated with the document operation, and returning it to the business object includes: When the first verification result indicates that the business object has legitimate permissions, the business status of the first block transmission channel is set to the connected state, and a transmission maintenance period is set for the first data transmission request based on the request maintenance pipeline. During the transmission maintenance period, respond to the document operation corresponding to the first data transmission request and perform signal detection in the local cache area; If a data update signal sent by the local cache is detected during the transmission maintenance period, the document data cached in the local cache is packaged based on the transmission format corresponding to the block encoding transmission rule to obtain document block data. Based on the document chunk data, a business document message associated with the document operation is generated and returned to the business object; the business document message is displayed on the object terminal device corresponding to the business object.

7. The method according to claim 1, characterized in that, The method further includes: When the transmission duration corresponding to the first data transmission request reaches the transmission maintenance period, obtain the release signal sent by the request maintenance pipe; Based on the release signal, the service status of the service object for the first block transmission channel is changed from the connected state to the released state. After the change is completed, a release notification message associated with the release signal is generated. The release notification message is sent to the object terminal device corresponding to the business object, so that the object terminal device generates a second data transmission request for the business collaboration document based on the release notification message; the second data transmission request is used to change the business status of the first block transmission channel from the released status back to the connected status.

8. The method according to claim 1, characterized in that, The method further includes: The access service obtains the data change request of the business object for the business collaboration document; the data change request is forwarded by the gateway device based on the first routing identifier; the data change request carries the document permission identifier, the transmission connection identifier, and the change data for the business collaboration document; Based on the document permission identifier and the transmission connection identifier, the permission of the business object is verified to obtain a second verification result; When the second verification result indicates that the business object has legitimate permissions, data conflict handling is performed on the data change request based on the task orchestration service; Based on the changed data, respond to the data change request corresponding to the data conflict handling, and store the document data obtained after the change operation in the database; Generate a third document message associated with the change operation, and send the third document message to the business object.

9. The method according to claim 8, characterized in that, The method is executed by a first device; the first device is used to establish a first document virtual room corresponding to the business collaboration document, and the business object belongs to the first document virtual room; The method further includes: Obtain the document objects in the first document virtual room other than the business object, and use the obtained document objects as the objects to be broadcast; Based on the chunked transmission manager of the first device, the chunked transmission channel between the object to be broadcast and the first device is obtained, and the obtained chunked transmission channel is determined as the second chunked transmission channel; If the broadcast object is in a released state for the service status of the second block transmission channel, the document data after the change operation will be stored in the local cache. When the service status of the second block transmission channel changes from the released state to the connected state, an update message is generated based on the document data stored in the local cache to be sent to the object to be broadcast.

10. The method according to claim 9, characterized in that, The method further includes: Based on the timer deployed by the first device, the M block transmission channels under the block transmission manager of the first device are detected respectively; M is a positive integer; the M block transmission channels include the first block transmission channel; If it is detected that the first segmented transmission channel has no data transmission during the service detection period, the first segmented transmission channel will be destroyed and the service object will be removed from the first document virtual room.

11. A data processing apparatus, characterized in that, include: The first transmission request acquisition module is used to acquire the first data transmission request for the business collaboration document. The first data transmission request carries a document permission identifier and a transmission connection identifier corresponding to the business object; the document permission identifier is identification information determined based on the document permissions of the business object for the business collaboration document; the transmission connection identifier refers to the identification information corresponding to the first block transmission channel established for the business object; The first result determination module is used to obtain a mapping table associated with the first document virtual room of the business collaboration document based on the data caching service; the mapping table is used to represent the connection identifiers corresponding to the block transmission channels of N document objects in the first document virtual room; N is a positive integer less than or equal to the threshold of the number of objects in the first document virtual room; the mapping table is queried based on the transmission connection identifiers; If a connection identifier matching the transmission connection identifier is found in the mapping table, the verification document permission of the business object for the business collaboration document is obtained, and the document permission identifier is verified based on the verification document permission; if the document permission corresponding to the document permission identifier matches the verification document permission, the permission verification is determined to be successful, and a first verification result is generated to indicate that the business object has legal permissions. The business message generation module is used to set a transmission maintenance period for the first data transmission request when the first verification result indicates that the business object has legitimate permissions, and to perform the document operation corresponding to the first data transmission request within the transmission maintenance period, generate a business document message associated with the document operation, and return it to the business object.

12. A computer device, characterized in that, include: Processor, memory, and network interface; The processor is connected to the memory and the network interface, wherein the network interface is used to provide data communication functions, the memory is used to store computer programs, and the processor is used to invoke the computer programs to cause the computer device to perform the method according to any one of claims 1 to 10.

13. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program adapted to be loaded and executed by a processor to cause a computer device having the processor to perform the method of any one of claims 1 to 10.

14. A computer program product, characterized in that, The computer program product includes a computer program stored in a computer-readable storage medium, the computer program being adapted to be read and executed by a processor to cause a computer device having the processor to perform the method of any one of claims 1 to 10.

Citation Information

Patent Citations

  • Data transmission method, device and system

    CN105610919A

  • Document-management service device, authentication service device, document-management service program, authentication service program, recording medium, document-management service method, and authentication service method

    US20060095831A1