Desktop sharing method, desktop sharing device, electronic device, and readable storage medium
By receiving and classifying desktop video stream data, integrating and sharing it to the target cloud client, the compatibility issues in multi-user, multi-window screen sharing are resolved, enabling cross-application screen sharing and interactive viewing, thus improving the user experience.
Patent Information
- Application Number
- CN202410343981.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-25
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2044-03-25
AI Technical Summary
In the process of multi-user, multi-window screen sharing, users need to install the same desktop sharing software, which leads to compatibility issues and functional limitations on different devices, making it impossible to achieve screen sharing across applications and resulting in a poor user experience.
By receiving and classifying desktop video stream data carrying connection identifiers, integrating multiple video stream data under the same connection identifier, and sharing them with target cloud clients, including cloud clients with different identity states, screen sharing can be achieved for multiple users, multiple windows, and across services.
It enables cross-application screen sharing, meeting the screen sharing needs of various scenarios such as gaming and office work, providing interactive viewing functions, and improving the user experience.
Smart Images

Figure CN118802870B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer technology, and particularly relates to a desktop sharing method, desktop sharing device, electronic device, and readable storage medium. Background Technology
[0002] In multi-user, multi-window screen sharing, users need to install the same desktop sharing software. However, different desktop sharing software may have different device requirements and may have compatibility issues or be unable to support certain functions on some devices. Due to these limitations, cross-application screen sharing cannot be achieved, resulting in a poor user experience. Summary of the Invention
[0003] This application provides a desktop sharing method, a desktop sharing device, an electronic device, and a readable storage medium, which can realize cross-application screen sharing in multi-user, multi-window scenarios.
[0004] In a first aspect, embodiments of this application provide a desktop sharing method, the method comprising: receiving desktop video stream data sent by at least one first cloud client, wherein each desktop video stream data carries a connection identifier; classifying the at least one desktop video stream data according to the connection identifier; integrating at least one desktop video stream data under the same connection identifier to obtain multiple desktop video stream data corresponding to each connection identifier; for each of the multiple desktop video stream data, obtaining a target cloud client corresponding to a target connection identifier from a preset connection set, and sharing the desktop video stream data with each target cloud client respectively, wherein the target connection identifier is the connection identifier corresponding to the multiple desktop video stream data, the target cloud client is the cloud client corresponding to the target connection identifier, the target cloud client includes at least one second cloud client and the first cloud client corresponding to the multiple desktop video stream data, and the second cloud client and the first cloud client corresponding to the multiple desktop video stream data have different identity states.
[0005] Secondly, embodiments of this application provide a desktop sharing device, comprising: a receiving module for receiving desktop video stream data sent by at least one first cloud client, wherein each desktop video stream data carries a connection identifier; a classification module for classifying the at least one desktop video stream data according to the connection identifier; an integration module for integrating at least one desktop video stream data under the same connection identifier to obtain multiple desktop video stream data corresponding to each connection identifier; and a sharing module for obtaining a target cloud client corresponding to a target connection identifier from a preset connection set for each of the multiple desktop video stream data, and sharing the desktop video stream data with each target cloud client, wherein the target connection identifier is the connection identifier corresponding to the multiple desktop video stream data, the target cloud client is the cloud client corresponding to the target connection identifier, the target cloud client includes at least one second cloud client and the first cloud client corresponding to the multiple desktop video stream data, and the second cloud client and the first cloud client corresponding to the multiple desktop video stream data have different identity states.
[0006] Thirdly, embodiments of this application provide an electronic device including a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the method described in the first aspect.
[0007] Fourthly, embodiments of this application provide a readable storage medium on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method described in the first aspect.
[0008] Fifthly, embodiments of this application provide a chip, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the method as described in the first aspect.
[0009] In this application, desktop video stream data sent by at least one first cloud client is received, wherein each desktop video stream data carries a connection identifier. The at least one desktop video stream data is categorized according to the connection identifier, and then the at least one desktop video stream data under the same connection identifier is integrated to obtain multiple desktop video stream data corresponding to each connection identifier. Simultaneously, for each multiple desktop video stream data, a target cloud client corresponding to a target connection identifier is obtained from a preset connection set, and the desktop video stream data is shared with each target cloud client. Here, the target connection identifier is the connection identifier corresponding to the multiple desktop video stream data, and the target cloud client is the cloud client corresponding to the target connection identifier. It includes at least one second cloud client and a first cloud client corresponding to multiple desktop video streams. The second cloud client and the first cloud client corresponding to the multiple desktop video streams have different identity states, which meets the screen sharing needs of multiple scenarios such as games and office work, as well as the functional needs of interactive viewing. Moreover, different users can carry any third-party business through the cloud client. The first cloud client on the user side transmits the real-time screen of the third-party business / terminal. In this way, multiple real-time screens from different terminals can be transmitted to the cloud server. The cloud server integrates the multiple screens and pushes the integrated screen containing multiple user screens to the corresponding user terminal based on the connection identifier, realizing screen sharing and interaction for multiple users, multiple windows, cross-business, and cross-software. Attached Figure Description
[0010] Figure 1 A schematic diagram of the cloud server architecture in related technologies;
[0011] Figure 2 This is a flowchart illustrating a desktop sharing method provided in an embodiment of this application;
[0012] Figure 3 This is a schematic diagram of the architecture of a cloud phone shared desktop provided in an embodiment of this application;
[0013] Figure 4 This is a schematic diagram of the architecture of a cloud phone shared desktop provided in an embodiment of this application;
[0014] Figure 5 This is an interactive schematic diagram of a cloud phone shared desktop provided in an embodiment of this application;
[0015] Figure 6 This is an interactive schematic diagram of a cloud phone shared desktop provided in an embodiment of this application;
[0016] Figure 7 This is an interactive schematic diagram of a cloud phone shared desktop provided in an embodiment of this application;
[0017] Figure 8This is a schematic diagram of the structure of a desktop sharing device provided in an embodiment of this application;
[0018] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0019] 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, 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.
[0020] To better understand the solution proposed in this application, the technologies involved in this application will be explained below.
[0021] A cloud phone is a virtual machine hosted on a cloud server, featuring a native Android operating system and virtual phone functionality. Cloud phones provide interactive control to various users via audio and video streams, allowing operation from various clients such as Android, iOS, and browser applications. A common cloud phone architecture is as follows... Figure 1 As shown. On the left is the cloud phone server, and at the bottom is the hardware server, such as an ARM server. This server provides the hardware resources used by the cloud phone, including CPU, GPU, memory, and storage. A host operating system, such as Linux, runs on this server. Based on the specifications, the server's hardware resources are allocated to multiple virtual Android operating systems above. Each Android operating system can share the server's memory or be allocated different amounts of memory. Each Android operating system instance is a remotely controlled cloud phone. Screen, sound, and control commands are transmitted through the cloud-side SDK on the left and the device-side SDK on the right to achieve the desired cloud phone experience.
[0022] The following description, in conjunction with the accompanying drawings, details a desktop sharing method, desktop sharing device, electronic device, and readable storage medium provided in this application through specific embodiments and application scenarios.
[0023] Figure 2 This application illustrates a desktop sharing method according to an embodiment of the present application. The method can be executed by an electronic device, which may include a terminal device and / or a network-side device. In other words, the method can be executed by software or hardware installed on the electronic device, and the method includes the following steps:
[0024] S210: Receive desktop video stream data sent by at least one first cloud client.
[0025] Each of the desktop video stream data carries a connection identifier.
[0026] Understandably, at least one cloud client sends recorded desktop video stream data to the cloud server. Each desktop video stream carries a connection identifier, which identifies which meeting or event the cloud client belongs to. This connection identifier can be a unique identifier used to identify a specific meeting or event, and can be generated by the organizer when creating the meeting or event and shared with the participants.
[0027] It should be noted that the first cloud client is the client corresponding to the first operating terminal. The desktop video stream data may include the screen display content of the first operating terminal, or it may be the display content selected by the user of the first operating terminal, i.e., the user chooses which content to share, for example, only sharing the display interface of a specific application. Optionally, the desktop video stream data may be recorded by the first cloud client calling a third-party application.
[0028] S220: Classify at least one of the desktop video stream data according to the connection identifier.
[0029] Understandably, since each first cloud client corresponds to a connection identifier, if multiple first cloud clients have the same connection identifier, it means that this group of first cloud clients is connected to the same cloud machine instance, that is, this group of first cloud clients belongs to the same meeting or event. Therefore, based on the connection identifier, the desktop video stream data can be classified, that is, desktop video stream data carrying the same connection identifier are classified into one category.
[0030] S230: By integrating at least one of the desktop video stream data under the same connection identifier, multiple desktop video stream data corresponding to each connection identifier are obtained.
[0031] Understandably, after determining the desktop video stream data corresponding to each connection identifier, the desktop video stream data corresponding to each connection identifier is integrated to obtain multiple desktop video stream data corresponding to each connection identifier.
[0032] S240: For each of the multi-channel desktop video stream data, obtain the target cloud client corresponding to the target connection identifier from the preset connection set, and share the desktop video stream data with each of the target cloud clients respectively.
[0033] Wherein, the target connection identifier is the connection identifier corresponding to the multi-channel desktop video stream data, the target cloud client is the cloud client corresponding to the target connection identifier, the target cloud client includes at least one second cloud client and a first cloud client corresponding to the multi-channel desktop video stream data, and the second cloud client and the first cloud client corresponding to the multi-channel desktop video stream data have different identity states.
[0034] Understandably, this preset connection set stores multiple mappings between connection identifiers and cloud clients. By querying a specific target connection identifier, the corresponding cloud client can be retrieved. This allows for obtaining the cloud client corresponding to a specified connection identifier from the preset connection set. In other words, cloud clients corresponding to the same connection identifier belong to the same meeting or event, and therefore, desktop sharing can be performed based on the same connection identifier.
[0035] In this application, the second cloud client is the client corresponding to the second operating terminal. Regarding the different identity states of the second cloud client and the first cloud client corresponding to the multi-channel desktop video stream data, it is understood that during desktop sharing, there are three identity states: sharing end, viewing end, and offline end. The sharing end refers to the cloud client sending the desktop video stream data, the viewing end refers to the cloud client receiving the desktop video stream data, and the offline end refers to a cloud client that corresponds to a connection identifier but is in a connectionless state. Therefore, this identity state can identify whether the cloud client is a sharing end, a viewing end, or an offline end. In this application, the first cloud client can be a sharing end, and the second cloud client can be a viewing end. Optionally, the second cloud client may include cloud clients with an offline identity state; during final desktop sharing, cloud clients with an offline identity state can be filtered out.
[0036] In addition, the login methods for the first and second cloud clients can include client software, mini-programs, and web pages. Users can also choose to log in directly through a web page without installing client software.
[0037] In this application, desktop video stream data sent by at least one first cloud client is received, wherein each desktop video stream data carries a connection identifier. The at least one desktop video stream data is categorized according to the connection identifier, and then the at least one desktop video stream data under the same connection identifier is integrated to obtain multiple desktop video stream data corresponding to each connection identifier. Simultaneously, for each multiple desktop video stream data, a target cloud client corresponding to a target connection identifier is obtained from a preset connection set, and the desktop video stream data is shared with each target cloud client. Here, the target connection identifier is the connection identifier corresponding to the multiple desktop video stream data, and the target cloud client is the cloud client corresponding to the target connection identifier. It includes at least one second cloud client and a first cloud client corresponding to multiple desktop video streams. The second cloud client and the first cloud client corresponding to the multiple desktop video streams have different identity states, which meets the screen sharing needs of multiple scenarios such as games and office work, as well as the functional needs of interactive viewing. Moreover, different users can carry any third-party business through the cloud client. The first cloud client on the user side transmits the real-time screen of the third-party business / terminal. In this way, multiple real-time screens from different terminals can be transmitted to the cloud server. The cloud server integrates the multiple screens and pushes the integrated screen containing multiple user screens to the corresponding user terminal based on the connection identifier, realizing screen sharing and interaction for multiple users, multiple windows, cross-business, and cross-software.
[0038] In one implementation, before receiving desktop video stream data sent by at least one first cloud client, the method further includes: receiving a connection establishment request sent by at least one cloud client, wherein the connection establishment request carries target parameters, the target parameters including a cloud client identifier, a connection identifier, and an identity password, the identity password being used to identify the identity status of the cloud client, the cloud client including the first cloud client and the second cloud client; and establishing a connection for each cloud client based on the target parameters. The connection establishment request may use Hypertext Transfer Protocol Secure (HTTPS) to encrypt the transmitted content to prevent man-in-the-middle eavesdropping and information theft. The cloud client identifier may be a unique identifier.
[0039] In this implementation, before receiving desktop video stream data sent by at least one first cloud client, the cloud client needs to establish a connection with the cloud server. The cloud server needs to verify the identity information and permissions sent by the cloud client according to the target parameters to ensure connection security.
[0040] Furthermore, in one implementation, establishing a connection based on the target parameters may include the following steps:
[0041] Step 1: If the cloud client has connection permissions based on the connection identifier, verify the identity password.
[0042] Specifically, verifying the cloud client's connection permission based on the connection identifier means that only users with the correct connection identifier can successfully join the meeting or event, effectively preventing unauthorized personnel from participating. Verifying the identity password means verifying the legality and compliance of the identity password; only cloud clients that have passed identity verification can establish a connection and transmit data, thereby protecting the security and privacy of the meeting or event.
[0043] Step 2: If the identity password meets the first verification condition, determine the identity status corresponding to the identity password.
[0044] Determining the identity status corresponding to the identity password means confirming whether the sender of the connection request is a sharing end or a viewing end. Based on the identity status of the cloud client, different permission restrictions and access controls can be applied to it.
[0045] Step 3: Store the correspondence between the cloud client identifier, the connection identifier, and the identity status in the preset connection set.
[0046] Understandably, once verification is successful, the correspondence between the cloud client identifier, connection identifier, and identity status needs to be stored in the preset connection set. In this way, the cloud server can determine whether the cloud clients belong to the same meeting or event based on the connection information, and can ensure that each user's connection can be effectively managed and monitored.
[0047] Step 4: Send the connection authentication success message to the cloud client.
[0048] In this implementation, authentication via connection requests allows for better management and control over which cloud clients can send video streams. Furthermore, sending a connection authentication success message to the cloud client upon successful connection establishment clearly informs the user that their connection request has been accepted, thus improving the user experience. Additionally, establishing connections in this way increases the flexibility of multi-user, multi-window desktop sharing, thereby meeting diverse business needs and scenario requirements.
[0049] In one implementation, after establishing a connection based on the target parameters for each of the cloud clients, the method further includes: receiving a change request sent by a third cloud client, wherein the change request is used to perform a change operation on the connection identifier and / or the identity status corresponding to the third cloud client, and the first cloud client includes the third cloud client or the second cloud client includes the third cloud client; and performing a change operation according to the change request if the change request satisfies a second verification condition.
[0050] It is understandable that after a connection is established, the connection identifier and identity status can be modified. For example, a user may need to join another meeting or event, in which case the connection identifier needs to be modified; or, if a user's identity status is that of a viewer, and they want to share their desktop, their identity status needs to be modified to that of a sharer. This change request includes the connection identifier and / or identity status to be modified. Upon receiving the change request, the cloud server needs to verify it. If the change request includes the connection identifier to be modified, it verifies whether the connection identifier is valid, such as whether it exists. If the change request includes the identity status to be modified, it verifies whether the third-party cloud client has permission to modify its own role, such as whether it is a meeting organizer, event organizer, or has specific management permissions. If the verification passes, the connection identifier is updated to the new connection identifier and / or the client's identity status is updated to the new identity status. The second verification condition can be set according to actual circumstances, and this embodiment does not limit it.
[0051] Optionally, a confirmation response can be sent to the third-party cloud client to indicate that the change was successful. Upon receiving the confirmation response, the third-party cloud client will update the locally saved connection identifier to the new connection identifier and / or update the locally saved identity status to the new identity status, and notify the user corresponding to the third-party cloud client that the modification has been successfully completed.
[0052] This implementation allows for the dynamic adjustment and management of connection identifiers and identity states to meet user needs.
[0053] In one implementation, after establishing a connection for each cloud client based on the target parameters, the method further includes: enabling different service functions for cloud clients with different identity states. It is understood that the identity states in this application include sharing client, viewing client, and offline client. A sharing client may have the permission to initiate and accept sharing, a viewing client only has the permission to accept sharing, and an offline client has neither the permission to initiate nor accept sharing. Different identity states correspond to different service functions; for example, a sharing client may have service functions such as recording meetings and initiating polls, while a viewing client may have service functions such as requesting to speak and participating in polls.
[0054] In one implementation, before receiving desktop video stream data sent by at least one first cloud client, the method further includes: receiving a desktop sharing request sent by at least one first cloud client, the desktop sharing request carrying the connection identifier, the desktop sharing request being used to request sharing the desktop with at least one cloud client corresponding to the connection identifier; and, if the desktop sharing request satisfies a third verification condition, sending a desktop sharing request success message to the first cloud client. It is understood that in a multi-user, multi-window desktop sharing scenario, when a request is sent to the cloud server, the cloud server can verify the request, check whether the requested first cloud client has sufficient permissions to share the desktop, and decide whether to agree to the sharing based on a policy, i.e., whether the third verification condition is met. This ensures the collaborative order, permission control, and security of desktop sharing, enabling desktop sharing to proceed in an orderly manner. The third verification condition can be set according to actual circumstances, and this embodiment does not limit it.
[0055] To better illustrate the above embodiments, this application provides an exemplary architectural diagram of a cloud phone shared desktop, as shown below. Figure 3 As shown, the cloud phone shared desktop includes a cloud phone server-side (cloud server) 310 and a cloud phone client-side (cloud client) 320. The cloud phone client-side 320 is divided into a broadcaster end 321 and a viewer end 322. The broadcaster end 321 mainly provides screen projection functionality, while the viewer end 322 primarily views the screen projected from the broadcaster end. The cloud phone server-side 310 includes a cloud service module 311 and a display module 312. The cloud service module 311 mainly provides the compositing processing of the projected images from the cloud phone client, while the display module 312 is mainly responsible for the display processing of the composited projected images. Figure 3 The architecture diagram shown is used as a reference for a specific application diagram, as illustrated in this application. Figure 4 As shown.
[0056] The processing framework for screen recording and projection from the cloud phone client to the broadcaster is as follows: Figure 5 As shown, the cloud phone client records and encodes the screen using a third-party application (which can be a floating window or full-screen display), then transmits it over the network to the cloud phone server. The cloud phone server receives, decodes, and displays the recording. The cloud phone server then transmits the screen recording to the viewer's client on the cloud phone side. Figure 6 As shown, the cloud phone server transmits data to the cloud phone client (viewer's end) via the network. The viewer receives the data, decodes it, and displays it. Furthermore, the cloud phone client can display the cloud phone's screen in a floating window, as shown... Figure 7 As shown, each user (both the broadcaster and the viewer) can see the relevant desktop video.
[0057] In the above embodiments, the above can be achieved. Figure 2 The processes in the illustrated embodiments will not be described in detail here.
[0058] Figure 8 This application provides a schematic diagram of the structure of a desktop sharing device according to an embodiment of the present application, as shown below. Figure 8 As shown, the desktop sharing device 800 may include: a receiving module 810, a classification module 820, an integration module 830, and a sharing module 840.
[0059] In this embodiment, the receiving module 810 is used to receive desktop video stream data sent by at least one first cloud client, wherein each desktop video stream data carries a connection identifier; the classification module 820 is used to classify at least one desktop video stream data according to the connection identifier; the integration module 830 is used to integrate at least one desktop video stream data under the same connection identifier to obtain multiple desktop video stream data corresponding to each connection identifier; the sharing module 840 is used to obtain a target cloud client corresponding to a target connection identifier from a preset connection set for each of the multiple desktop video stream data, and share the desktop video stream data with each target cloud client respectively, wherein the target connection identifier is the connection identifier corresponding to the multiple desktop video stream data, the target cloud client is the cloud client corresponding to the target connection identifier, the target cloud client includes at least one second cloud client and the first cloud client corresponding to the multiple desktop video stream data, and the second cloud client and the first cloud client corresponding to the multiple desktop video stream data have different identity states.
[0060] In one implementation, the apparatus further includes: a second receiving module, configured to receive a connection establishment request sent by at least one cloud client, wherein the connection establishment request carries target parameters, the target parameters including a cloud client identifier, a connection identifier, and an identity password, the identity password being used to identify the identity status of the cloud client, and the cloud client including a first cloud client and a second cloud client; and a connection module, configured to establish a connection for each cloud client based on the target parameters.
[0061] In one implementation, establishing a connection based on the target parameters includes: verifying the identity password when the cloud client has connection permissions based on the connection identifier; determining the identity status corresponding to the identity password when the identity password meets a first verification condition; storing the correspondence between the cloud client identifier, the connection identifier, and the identity status in the preset connection set; and sending a connection authentication success message to the cloud client.
[0062] In one implementation, the apparatus further includes: a third receiving module, configured to receive a change request sent by a third cloud client, wherein the change request is used to perform a change operation on the connection identifier and / or the identity status corresponding to the third cloud client, and the first cloud client includes the third cloud client or the second cloud client includes the third cloud client; and a processing module, configured to perform a change operation according to the change request if the change request satisfies a second verification condition.
[0063] In one implementation, the device further includes an activation module for activating different service functions for the cloud client with different identity statuses.
[0064] In one implementation, the apparatus further includes: a fourth receiving module, configured to receive a desktop sharing request sent by at least one of the first cloud clients, the desktop sharing request carrying the connection identifier, the desktop sharing request being used to request sharing the desktop with at least one cloud client corresponding to the connection identifier; and a sending module, configured to send a desktop sharing request success message to the first cloud client if the desktop sharing request meets a third verification condition.
[0065] The desktop sharing device provided in this application embodiment can achieve... Figures 1 to 7 The various processes implemented in the illustrated embodiments will not be described again here to avoid repetition.
[0066] The desktop sharing device in the embodiments of this application can be a device, or a component, integrated circuit, or chip in an electronic device. The embodiments of this application are not specifically limited.
[0067] The desktop sharing device in this application embodiment can be a device with an operating system. This operating system can be Android, iOS, or other possible operating systems; this application embodiment does not specifically limit the specific operating system used.
[0068] Optional, such as Figure 9As shown, this application embodiment also provides an electronic device 900, including a processor 901, a memory 902, and a program or instructions stored in the memory 902 and executable on the processor 901. When the program or instructions are executed by the processor 901, they implement the above-mentioned... Figures 1-7 The various processes of the method embodiments shown can achieve the same technical effect, and will not be described again here to avoid repetition.
[0069] This application embodiment also provides a readable storage medium storing a program or instructions that, when executed by a processor, implement the above-described functionality. Figures 1-7 The various processes of the method embodiments shown can achieve the same technical effect, and will not be described again here to avoid repetition.
[0070] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0071] This application embodiment also provides a chip, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the above. Figures 1-7 To avoid repetition, the various processes of the method embodiments shown will not be described again here.
[0072] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0073] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
[0074] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0075] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
Claims
1. A desktop sharing method, characterized in that, The method includes: Receive desktop video stream data sent by at least one first cloud client, wherein each desktop video stream data carries a connection identifier; At least one of the desktop video stream data is classified according to the connection identifier; By integrating at least one desktop video stream data under the same connection identifier, multiple desktop video stream data corresponding to each connection identifier are obtained; For each of the multi-channel desktop video stream data, a target cloud client corresponding to the target connection identifier is obtained from a preset connection set, and the desktop video stream data is shared with each of the target cloud clients respectively. The target connection identifier is the connection identifier corresponding to the multi-channel desktop video stream data, and the target cloud client is the cloud client corresponding to the target connection identifier. The target cloud client includes at least one second cloud client and a first cloud client corresponding to the multi-channel desktop video stream data. The second cloud client and the first cloud client corresponding to the multi-channel desktop video stream data have different identity states. Before receiving desktop video stream data sent by at least one first cloud client, the method further includes: Receive at least one desktop sharing request sent by the first cloud client, the desktop sharing request carrying the connection identifier, the desktop sharing request being used to request to share the desktop with at least one cloud client corresponding to the connection identifier; If the desktop sharing request meets the third verification condition, a successful desktop sharing request message is sent to the first cloud client. The fact that the desktop sharing request meets the third verification condition indicates that the first cloud client that sent the desktop sharing request has the permission to share the desktop, and decides to agree to its sharing according to the policy.
2. The method according to claim 1, characterized in that, Before receiving desktop video stream data sent by at least one first cloud client, the method further includes: Receive a connection establishment request sent by at least one cloud client, wherein the connection establishment request carries target parameters, the target parameters including cloud client identifier, connection identifier and identity password, the identity password being used to identify the identity status of the cloud client, and the cloud client including the first cloud client and the second cloud client; For each cloud client, a connection is established based on the target parameters.
3. The method according to claim 2, characterized in that, The establishment of a connection based on the target parameters includes: If the cloud client has connection permissions based on the connection identifier, verify the identity password; If the identity password is verified to meet the first verification condition, the identity status corresponding to the identity password is determined. The correspondence between the cloud client identifier, the connection identifier, and the identity status is stored in the preset connection set; A connection authentication success message is sent to the cloud client.
4. The method according to claim 3, characterized in that, After establishing a connection based on the target parameters for each cloud client, the method further includes: Receive a change request sent by a third cloud client, wherein the change request is used to perform a change operation on the connection identifier and / or the identity status corresponding to the third cloud client, and the first cloud client includes the third cloud client or the second cloud client includes the third cloud client; If the change request meets the second verification condition, the change operation is performed according to the change request.
5. The method according to claim 2, characterized in that, After establishing a connection based on the target parameters for each cloud client, the method further includes: Different service functions are enabled for the cloud client based on its different identity status.
6. A desktop sharing device, characterized in that, The device includes: A receiving module is configured to receive desktop video stream data sent by at least one first cloud client, wherein each desktop video stream data carries a connection identifier. A classification module is used to classify at least one of the desktop video stream data according to the connection identifier; An integration module is used to integrate at least one of the desktop video stream data under the same connection identifier to obtain multiple desktop video stream data corresponding to each connection identifier; A sharing module is used to obtain a target cloud client corresponding to a target connection identifier from a preset connection set for each of the multi-channel desktop video stream data, and to share the desktop video stream data with each of the target cloud clients respectively. The target connection identifier is the connection identifier corresponding to the multi-channel desktop video stream data, and the target cloud client is the cloud client corresponding to the target connection identifier. The target cloud client includes at least one second cloud client and a first cloud client corresponding to the multi-channel desktop video stream data. The second cloud client and the first cloud client corresponding to the multi-channel desktop video stream data have different identity states. The fourth receiving module is used to receive at least one desktop sharing request sent by the first cloud client, wherein the desktop sharing request carries the connection identifier and is used to request to share the desktop with at least one cloud client corresponding to the connection identifier; The sending module is used to send a desktop sharing application success message to the first cloud client when the desktop sharing application meets the third verification condition. The desktop sharing application meeting the third verification condition indicates that the first cloud client that sent the desktop sharing application has the permission to share the desktop and decides to agree to its sharing according to the policy.
7. An electronic device, characterized in that, It includes a processor and a memory, the memory storing a program or instructions that can run on the processor, the program or instructions being executed by the processor to implement the steps of the desktop sharing method as described in any one of claims 1-5.
8. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the steps of the desktop sharing method as described in any one of claims 1-5.
9. A computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions that, when executed by a computer, cause the computer to perform the steps of the desktop sharing method as described in any one of claims 1-5.
Citation Information
Patent Citations
Desktop sharing method and device, electronic equipment and storage medium
CN112291197A
Cloud desktop conference sharing method and device, electronic equipment and storage medium
CN112672094A