Data transmission method, system and device, storage medium and computer program product
Direct data transmission between cloud phones is achieved through the parent-child architecture of the cloud phone service platform, which solves the problems of device switching and reliance on third-party tools in existing technologies and improves the convenience and efficiency of data transmission.
Patent Information
- Application Number
- CN202510554811.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-29
- Publication Date
- 2025-09-19
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing cloud phones require switching devices during data transmission, rely on third-party tools, increase operation steps and time, and have compatibility issues and high user learning costs.
The cloud phone service platform adopts a parent-child architecture, which realizes the transfer of data packets on the server side through direct communication between the parent machine and the child machine, without the need to download them to local storage and rely on third-party tools and cloud storage.
It simplifies the data transmission process, reduces user operation steps and time, lowers the user usage threshold, and improves the convenience and efficiency of data transmission.
Smart Images

Figure CN120675984A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of cloud phone technology, and in particular to a data transmission method, system, device, storage medium and computer program product. Background Art
[0002] The cloud phones currently on the market are all managed by the client 10. Multiple cloud phones are run independently. When performing data transmission, it is necessary to switch devices. Switching devices requires exiting the current session before switching to other cloud phone devices.
[0003] In the file transfer scenario, if users want to transfer files between different cloud phones, they need to first download the files from the old cloud phone locally and then manually upload them to the new cloud phone. Alternatively, they can use cloud storage and transfer tools to transfer files between the two cloud phones.
[0004] In the non-system application transfer and installation scenario, you need to first download the non-system applications from the old cloud phone to the local computer, and then manually upload them to the new cloud phone for installation; or, use cloud storage and transfer tools to transfer applications between the two cloud phones; or, manually install applications and search for the names of applications installed on the old cloud phone on the new cloud phone to download and install them.
[0005] The above data transmission method requires reliance on third-party tools and cloud storage for data transmission, which has the following disadvantages:
[0006] 1. It requires reliance on third-party tools and must be installed on both local and cloud phones;
[0007] 2. Relying on local storage, files or applications need to be downloaded locally and then uploaded, which increases the operation steps and time;
[0008] 3. Compatibility issues are prominent. Cloud phones with different architectures (such as x86 and ARM) will cause applications to not run properly.
[0009] 4. There are many corresponding users, but the learning cost is relatively high and it is difficult to operate. Summary of the Invention
[0010] This application mainly provides a data transmission method, system, device, storage medium and computer program product to solve the problem of cumbersome data transmission operations between cloud phones.
[0011] To solve the above technical problems, the present application adopts a technical solution: providing a data transmission method. In this data transmission method, the cloud phone service platform operates with an associated master device and at least one slave device. The data transmission method includes: in response to a data transmission instruction received by the master device, the master device sends a data transmission request to the corresponding slave device; the data transmission instruction includes a data packet to be transmitted and the identity information of the slave device to be received; in response to the slave device receiving the data transmission request, the slave device receives the data packet when there is sufficient storage space.
[0012] In an optional implementation manner of the embodiment of the present application, after the slave receives the data packet when the storage space is sufficient, the method further includes: the slave processes the data packet based on the type of the data packet.
[0013] In an optional implementation of an embodiment of the present application, the sub-machine processes the data packet based on the type of the data packet, including: in response to the type of the data packet being file data, the sub-machine stores the file data in the same file directory structure as the parent machine; in response to the type of the data packet being application data, the sub-machine automatically installs the application data.
[0014] In an optional implementation of an embodiment of the present application, before the mother machine sends a data transmission request to the corresponding child machine, the data transmission method also includes: the mother machine requests the child machine configuration from the cloud phone service platform based on the identity information of the child machine to be received; the cloud phone service platform verifies whether there is a pairing relationship between the mother machine and the requested child machine based on historical subscription records, and returns the child machine configuration information to the mother machine when there is a pairing relationship between the mother machine and the child machine; in response to the cloud phone service platform returning the child machine configuration information to the mother machine, the mother machine establishes a long connection with the corresponding child machine.
[0015] In an optional implementation of an embodiment of the present application, in response to the sub-machine receiving the data transmission request, the sub-machine receives the data packet when there is sufficient storage space, including: the main machine encrypts and transmits the data packet to the sub-machine, and the sub-machine receives the data packet.
[0016] In an optional implementation of the embodiment of the present application, the data packet is a data packet stored on the master machine.
[0017] To solve the above technical problems, another technical solution adopted in this application is to provide a data transmission system based on a cloud phone service platform. The data transmission system includes a client and a server in communication connection. The server is the carrier of the cloud phone service platform. The cloud phone service platform runs an associated master machine and at least one slave machine, and the master machine runs on the client. The master machine is configured to send a data transmission request to the corresponding slave machine upon receiving a data transmission instruction. The data transmission instruction includes a data packet to be transmitted and the identity information of the slave machine to be received. The slave machine is configured to receive the data packet upon receiving the data transmission request and having sufficient storage space.
[0018] To solve the above technical problems, another technical solution adopted in this application is: providing a computer device, including a memory, a processor and a computer program stored in the memory, characterized in that the processor executes the computer program to implement the steps of the above data transmission method.
[0019] In order to solve the above technical problems, another technical solution adopted in this application is: providing a computer-readable storage medium on which a computer program is stored, characterized in that when the computer program is executed by a processor, the steps of the above-mentioned data transmission method are implemented.
[0020] In order to solve the above technical problems, another technical solution adopted in this application is: to provide a computer program product, including a computer program, characterized in that when the computer program is executed by a processor, it implements the steps of the above data transmission method.
[0021] The beneficial effect of the present application is as follows: Different from the prior art, the present application discloses a data transmission method. In the data transmission method, based on a pre-built cloud phone service platform and a master machine and at least one slave machine associated through a master-child architecture running on the service platform, after the user initiates a transmission instruction, the master machine directly sends a data transmission request containing a data packet to be transmitted to the slave machine, and the corresponding slave machine directly receives the data packet sent by the master machine when there is sufficient storage space, so that the transmitted data packet is only transferred within the server side, without downloading to local storage, and without relying on third-party cloud storage or transmission tools for data transmission between cloud phones. The master machine and the slave machine directly communicate with each other for data transmission, shortening the data transmission link, greatly simplifying the data transmission method, and making the transmission more convenient and quick; during the data transmission process, the user only needs to select the data to be transmitted, and the user does not need to download the data on the client, which reduces the user operation steps, saves operation time, and lowers the user usage threshold. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. Those skilled in the art can also derive other drawings based on these drawings without inventive work, among which:
[0023] Figure 1 This is a schematic diagram of the structure of the cloud phone service platform provided by this application;
[0024] Figure 2 This is a schematic diagram of the interaction structure of various modules on the server side of the cloud phone service platform provided by this application;
[0025] Figure 3 This is a schematic diagram of the mother-child business logic of the cloud phone service platform provided by this application;
[0026] Figure 4 This is a diagram of the data transmission request interaction process of the cloud phone service platform provided by this application;
[0027] Figure 5 This is a schematic diagram of the cloud machine replacement interaction process of the cloud phone service platform provided by this application;
[0028] Figure 6 This is a schematic diagram of the interaction structure between the video stream acquisition submodule and the picture acquisition submodule of the cloud phone service platform provided by this application;
[0029] Figure 7 This is a schematic diagram of the interaction structure between the data storage submodule and the file storage submodule of the cloud phone service platform provided by this application;
[0030] Figure 8 This is a schematic diagram of the backup / restore process of the parent and child devices of the cloud phone service platform provided by this application;
[0031] Figure 9 This is a schematic diagram of the parent-child machine file transfer process of the cloud mobile phone service platform provided by this application;
[0032] Figure 10 This is a schematic diagram of the interaction structure of the resource allocation submodule of the cloud phone service platform provided by this application;
[0033] Figure 11 This is a schematic diagram of the interaction structure between the application running submodule and the control instruction parsing submodule of the cloud phone service platform provided by this application;
[0034] Figure 12 This is a schematic diagram of the start-stop interaction process of the parent-child machine application of the cloud mobile phone service platform provided by this application;
[0035] Figure 13 This is a flow chart of a first embodiment of a data transmission method for a cloud phone service platform provided by this application;
[0036] Figure 14 This is a flow chart of establishing a long connection between a mother and child machine in the first embodiment of the data transmission method of the cloud phone service platform provided by this application;
[0037] Figure 15 This is a schematic diagram of a data packet processing flow in accordance with a first embodiment of a data transmission method for a cloud phone service platform provided by the present application;
[0038] Figure 16 This is a flow chart of data transmission interaction between a mother and child machine in the first embodiment of the data transmission method of the cloud phone service platform provided by the present application;
[0039] Figure 17 It is a structural diagram of the second embodiment of the data transmission system of the cloud phone service platform provided by this application. DETAILED DESCRIPTION
[0040] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0041] The terms "first", "second" and "third" in the embodiments of the present application are only used for descriptive purposes and are not to be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first", "second" and "third" may explicitly or implicitly include at least one of the features. In the description of the present application, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device comprising a series of steps or units is not limited to the listed steps or units, but may optionally also include steps or units that are not listed, or may optionally also include other steps or units inherent to these processes, methods, products or devices.
[0042] References to "embodiments" herein mean that a particular feature, structure, or characteristic described in connection with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute an independent or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0043] In this application, a cloud phone service platform is pre-built, which serves as a platform for the main machine and the sub-machine to operate and provide various functional services. To facilitate understanding of a data transmission method provided in this application, the cloud phone service platform (also known as a cloud phone service system based on a parent-child architecture) is described below:
[0044] The cloud phone service system based on the parent-child architecture provided by this application refers to Figure 1 , Figure 1 This is a schematic diagram of the structure of the cloud phone service platform provided by this application. The cloud phone service system based on the parent-child architecture includes a client 10 and a server 20, and the client 10 is in communication with the server 20;
[0045] The client 10 is used to obtain the control authority of the parent-child cloud phone from the server 20, and the server 20 is used to allocate the control authority of the parent machine 21 and at least one child machine 22 to the client 10, wherein the parent machine 21 runs on the client 10, and the parent machine 21 is used to interact with each child machine 22, and the configuration of the parent machine 21 is higher than that of the child machine 22.
[0046] In this application, the parent-child architecture is innovatively applied to the cloud phone service, forming a cloud phone mother-child mode, wherein the mother-child architecture is a system design pattern, which is usually used in distributed systems or service management. This architecture consists of two parts: a mother node (Mother Node), which is responsible for overall coordination and management, monitors the status and health of child nodes, assigns tasks to child nodes, and may have a fault recovery mechanism; a child node (ChildNode), which performs specific tasks and reports status to the mother node, and is usually stateless and replaceable. The cloud phone mother-child mode can be understood as treating the cloud phone responsible for control as the mother node in the mother-child architecture, that is, as the mother machine 21; and the controlled cloud phone as the child node in the mother-child architecture, that is, as the child machine 22.
[0047] In this application, client 10 refers to the end of a computer network that initiates requests and receives services, typically a device or software operated directly by a user. Client 10 can be hardware, specifically a mobile device (smartphone or tablet), a desktop (PC or laptop), or an embedded device (smart TV or IoT sensor). Client 10 can also be software, specifically a native application (iOS / Android app or Windows software), a browser (Chrome or Safari), or a command-line tool (such as curl or Postman).
[0048] Because the operation of the mother-child machine or cloud phone needs to rely on a client 10 to use. For example, if you use online payment operations, you need to rely on WeChat, Alipay or other clients that provide payment functions. Similarly, the operation of the mother-child machine or cloud phone also requires a client 10 to provide an operation entrance.
[0049] The server side 20 can be a physical server side, a cloud server side, or a virtual server side. If the server side 20 is a physical server side (for example, a physical server with an ARM architecture), it can be understood that the physical server includes multiple computing chips, which include multiple host machines. Each host machine includes multiple cloud phone instances, and the parent machine 21 and the child machine 22 can be determined from these cloud phone instances. In the embodiment of the present application, the server side 20 takes the cloud server side (such as a cloud server with an ARM architecture) as an example to illustrate the cloud phone service system based on the parent-child architecture.
[0050] In this application, the client 10 and the server 20 are connected in communication. The core of the communication is the protocol selection and data exchange format. You can weigh the real-time, security and performance according to the scenario and select the appropriate communication protocol and data exchange format. You can also mix multiple methods, such as HTTP application program interface (API) + WebSocket protocol for communication.
[0051] In this application, users can purchase a parent-child phone package through the client 10. After the purchase is completed, the server 20 will allocate the parent-child cloud phones, and allocate the control rights of the allocated parent-child cloud phones to the client 10, as well as allocate the control rights of the parent phone 21 and at least one child phone 22 to the client 10.
[0052] It should be noted that the mother machine 21 is assigned to the client 10 for operation, and the control authority assigned to the client 10 is the mother-child cloud phone, that is, the user can control the mother machine 21 on the client 10, and control the child machine 22 through the mother machine 21. The mother-child cloud phone is deployed on the server 20. The performance of the mother-child cloud phone (including computing power, network performance, virtualization efficiency and software optimization) still depends on the hardware resources of the server 20, rather than the hardware resources (device configuration) of the client 10. Therefore, the performance of the cloud phone is not affected by the device configuration of the client 10 used by the user. Even if the client 10 device configuration is low, the user can obtain a high-configuration cloud phone for use according to the usage needs, achieving a breakthrough in physical limitations and suitable for high-performance, multi-tasking scenarios.
[0053] The configuration of the cloud phone mainly includes CPU configuration, GPU configuration and memory / storage. When allocating cloud phones on the server side 20, it is necessary to allocate a master machine 21 and at least one slave machine 22 to the client side 10. Among them, the division of the master machine 21 and the slave machine 22 is based on the configuration level of the cloud phone. The cloud phone with a higher configuration among all the optional cloud phones is selected as the master machine 21, and the cloud phone with a lower configuration is selected as the slave machine 22, so that the master machine 21 can control each slave machine 22 through interaction.
[0054] On the client 10, the user can view the screen of at least one slave device 22 through the master device 21, and the user can control each slave device 22 through the master device 21. The following uses an example of a master device 21 controlling a slave device 22 to illustrate the interaction between the master device 21 and the slave devices 22.
[0055] This application discloses a cloud phone service system based on a parent-child architecture. The system includes a client 10 and a server 20. The client 10 is in communication with the server 20. The client 10 obtains the control authority of the parent-child cloud phone from the server 20 through the client 10, and the server 20 allocates the control authority of the parent device 21 and at least one child device 22 to the client 10 through the server 20. The parent device 21 runs on the client 10 and is used to interact with each child device 22. The configuration of the parent device 21 is higher than that of the child device 22. This enables comprehensive and convenient control of at least one other cloud phone through one cloud phone, achieving low-cost and high-efficiency centralized management and control of multiple cloud phones, eliminating the need for users to frequently switch between different device interfaces, reducing operational complexity and time costs.
[0056] In this application, reference is made to Figure 2 , Figure 2 This is a schematic diagram of the interaction structure of the server-side modules of the cloud phone service platform provided by this application. The server-side 20 includes a control module 23, a sub-machine service module 24, and a service platform module 25, which are sequentially connected in communication. The client 10 is in communication with the control module 23;
[0057] The mother machine 21 running on the client 10 is used to send interaction instructions to the control module 23, and the control module 23 is used to send sub-machine service drive instructions to the sub-machine service module 24 based on the received interaction instructions. The sub-machine service module 24 is used to call the data transmission function of the service platform module 25 based on the received sub-machine service drive instructions to complete the control of the sub-machine 22.
[0058] The control module 23 is the core of the cloud phone service system based on the parent-child architecture. It communicates with the client 10 and receives interactive commands corresponding to various service requests from the client 10. It communicates with the slave service module 24 and converts interactive commands received from the client 10 into driver commands that the slave service module 24 can interpret, sending these commands to the slave service module 22. It also communicates with the service platform module 25 to invoke various functions within the service platform module 25. Service requests initiated by the client 10 include file transfer, application startup and shutdown, backup / restore, cloud machine replacement, and one-click new machine creation.
[0059] The slave service module 24 communicates with the control module 23 to achieve two-way interaction, and communicates with the service platform module 25 to invoke various functions within the service platform module 25. Upon receiving a drive instruction from the control module 23, the slave service module 24 invokes the data transmission function within the service platform module 25 and, through data transmission coordination, executes the drive instruction, thereby controlling the slave 22 accordingly.
[0060] The service platform module 25 is communicatively connected with the control module 23 and the sub-machine service module 24, serving as the business support for the cloud phone service system based on the parent-child architecture, providing an operating environment, and coordinating data transmission to ensure smooth data exchange between the client 10, the control module 23 and the sub-machine service module 24.
[0061] In a specific embodiment, referring to Figure 3 , Figure 3This is a schematic diagram of the mother-child machine business logic of the cloud phone service platform provided by this application. After the user purchases the mother-child machine package through the client 10 (such as Android client, H5 or PC client), he obtains the mother machine 21 and the child machine 22 allocated by the server 20. After the user opens the mother machine 21 on the client 10, he can display the screen preview of the mother machine 21 on the client 10. The mother machine 21 is pre-installed with a "Console APP". By clicking on the "Console APP", you can open the screen preview of the child machine 22. Among them, the "Console APP" is a pre-installed APP that integrates business functions including file transfer, application start and stop, backup / restore, replacement of cloud machines and one-click new machines. Therefore, users can also issue task instructions through the function options provided by the "Console APP" to control the child machine 22 accordingly. Among them, the functions of each business function in the "Console APP" are as follows:
[0062] File transfer: Click to read the list of files and non-system applications on the master device 21, and transfer them to the slave device 22 after the user selects them;
[0063] Application start and stop: After clicking, a list of non-system applications of the slave device 22 will be displayed on the master device 21, and the user can select an application to start or stop it;
[0064] Replace cloud machine: Click to directly replace a new sub-machine 22 on the master machine 21;
[0065] Backup and recovery: Backup refers to backing up files and non-system application data on the slave machine 22 to the master machine 21; recovery refers to restoring data that has been backed up to the master machine 21 to the slave machine 22;
[0066] One-key new machine: Perform one-key new machine operation on the main machine 21 for the sub-machine 22. One-key new machine means changing the parameters of the sub-machine 22.
[0067] Reference Figure 4 , Figure 4 This is a schematic diagram of the data transmission request interaction process of the cloud phone service platform provided in this application. The client 10 sends an interactive instruction of the data transmission request to the control module 23. After receiving the interactive instruction of the data transmission request, the control module 23 converts the interactive instruction of the data transmission request into a sub-machine service drive instruction (including the data transmission request) that can be parsed by the sub-machine service module 24, and then forwards the sub-machine service drive instruction to the sub-machine service module 24. The sub-machine service module 24 calls the data transmission function of the service platform module 25 based on the received sub-machine service drive instruction. At this time, the service platform module 25 is used to monitor the network status in the data transmission, plan the transmission protocol, and coordinate the data transmission to realize the transmission of the mother machine 21 data to the sub-machine 22. After the transmission is completed, the service platform module 25 sends a transmission completion notification to the sub-machine service module 24, which is then fed back to the control module 23 by the sub-machine service module 24, and finally fed back to the client 10.
[0068] For example, when the user chooses to transfer a file to the sub-machine 22, in the cloud phone service system based on the parent-child architecture, the parent machine 21 running on the client 10 sends an interactive instruction containing the file transfer business function to the control module 23. After receiving the interactive instruction, the control module 23 converts the interactive instruction into a sub-machine service driver instruction that can be parsed by the sub-machine service module 24, and then sends the sub-machine service driver instruction to the sub-machine service module 24. The sub-machine service module 24 calls the data transmission function of the service platform module 25 based on the received sub-machine service driver instruction, and executes the relevant business operations of the file transfer to realize the transfer of the mother machine 21 file to the sub-machine 22.
[0069] Different from the existing technology that is limited by the performance and functions of a single cloud phone and cannot efficiently run multi-tasking operations or complex business processing, in this application, a control module 23, a sub-machine service module 24 and a service platform module 25 that are sequentially connected to each other are constructed on the server side 20, and the client 10 is connected to the control module 23 to realize the step-by-step transmission of interactive instructions, so that the user can control the sub-machine 22 through the mother machine 21 after initiating the operation on the client 10, realize flexible interactive management of data between different cloud phones, and efficiently run multi-tasking operations and complex business processing.
[0070] In this application, the service platform module 25 is also used to match idle cloud phones to the client 10 based on the available resource pool of the server 20 and the device attributes of the client 10, where the relatively high-end cloud phone serves as the master phone 21 and the relatively low-end cloud phone serves as the slave phone 22, and the identity identifiers of the master phone 21 and the slave phone 22 are assigned to the client 10.
[0071] In this application, the service platform module 25 includes a sub-function module for cloud machine allocation. When a user purchases a parent-child package on the client 10, the service platform module 25 will call the cloud machine allocation sub-function module to allocate the parent and child cloud phones. For example, if a user purchases a package of one parent machine 21 and one child machine 22 on the client 10, the cloud machine allocation process after the purchase is completed is as follows:
[0072] The service platform module 25 obtains cloud phone resource information from the available resource pool based on the server side 20. The available resource pool stores a large number of idle cloud phones with different configurations suitable for different application scenarios. It matches all idle cloud phones according to the user device attributes, and matches a master phone 21 and a slave phone 22 according to the actual needs of the user to purchase a package. The cloud phone with the higher configuration of the two matched cloud phones is used as the master phone 21, and the other cloud phone with the lower configuration is used as the slave phone 22. Then, after determining the master phone 21 and each slave phone 2221, a master-slave phone instance is created, and the identity identifiers (IDs) of the master phone 21 and the slave phone 22 are assigned to the client 10, and the IDs of the master phone 21 and the slave phone 22 are bound to associate the master-slave relationship. Among them, the user device attributes here can be understood as the device configuration of the above-mentioned client 10, including CPU configuration (number of CPU cores, CPU memory), GPU configuration and memory / storage.
[0073] Different from the problem in the existing technology that there is a lack of efficient coordination mechanism between devices and it is not convenient to centrally control another device on one device (cloud phone), in this application, by dividing the cloud phone into a mother machine 21 and each child machine 22 according to the configuration level, the mother-child relationship is associated to form a mother-child architecture, so that the mother machine 21 can be used to control each child machine 22 to complete collaborative interaction, and at least one other device can be conveniently controlled on one device.
[0074] In this application, the service platform module 25 is also used to receive a request from the client 10 to replace the cloud machine, match an idle cloud phone as a new sub-machine 22 to the client 10 based on the available resource pool of the server 20 and the device attributes of the old sub-machine 22, and assign the identity of the new sub-machine 22 to the client 10.
[0075] A sub-machine 22 may malfunction during operation. For example, the sub-machine 22 may display an error code such as maintenance, failure, or offline, or the sub-machine 22 may freeze or display a black screen during operation. In this case, a new sub-machine 22 may be required.
[0076] In this application, the sub-function module for cloud machine allocation included in the service platform module 25 can also be used to realize the function of replacing the cloud machine. When the sub-machine 22 fails, the user can send a request to replace the cloud machine to the service platform module 25 through the client 10. After receiving the request to replace the cloud machine, the service platform module 25 first reads the device attributes of the old sub-machine 22 (that is, the faulty sub-machine 22 to be replaced) (that is, the above-mentioned device configuration, including CPU configuration, GPU configuration and memory / storage). Then, the service platform module 25 obtains the cloud phone resource information from the available resource pool based on the server 20. Then, according to the device attributes of the old sub-machine 22, a cloud phone of the same specifications is re-matched as the new sub-machine 22. Finally, an instance of the new sub-machine 22 is created, the identity (ID) of the new sub-machine 22 is assigned to the client 10, and the IDs of the mother machine 21 and the new sub-machine 22 are re-bound, that is, the parent-child relationship between the mother machine 21 and the new sub-machine 22 is re-associated.
[0077] Different from the existing technology in which the replacement of cloud machines requires switching the current cloud phone device, that is, the problem of needing to exit the current session and switch to other cloud phone devices, in this application, through the parent-child architecture of the cloud phone, the cloud machine can be replaced by direct operation in the parent machine 21, thereby realizing the operation of replacing the cloud machine without switching devices.
[0078] In the present application, the service platform module 25 is further configured to delete the identity of the old sub-machine 22 from the client 10 , clear the data in the old sub-machine 22 , and recycle the data to the available resource pool of the server 20 .
[0079] During the cloud machine replacement process, the old sub-machine 22 needs to be released and recycled. First, the service platform module 25 deletes the identity (ID) of the old sub-machine 22 from the client 10 and unbinds the old sub-machine 22 from the parent machine 21 (the parent-child relationship). After the unbinding is complete, the service platform module 25 clears the data in the old sub-machine 22, restoring the old sub-machine 22 to its factory settings, and then recycles the old sub-machine 22 to the available resource pool on the server 20.
[0080] In this application, reference is made to Figure 5 , Figure 5This is a schematic diagram of the cloud machine replacement interaction process of the cloud phone service platform provided by this application. Taking the interaction between the mother machine 21 and the child machine 22 and the client 10 and the server 20 as an example, the process of replacing the cloud machine is explained again. First, the client 10 sends a request to replace the cloud machine to the mother machine 21. After receiving the request, the mother machine 21 requests the configuration information of the child machine 22 from the server 20. After the server 20 returns the configuration information of the child machine 22 to the mother machine 21, the mother machine 21 sends a request to replace the cloud machine to the server 20. The server 20 will allocate the cloud machine, bind the allocated new child machine 22 to the mother machine 21 as a mother-child machine relationship, and then recycle the old child machine 22 to the available resource pool, and send a replacement completion notification to the mother machine 21. The mother machine 21 then feedbacks the replacement completion to the client 10.
[0081] Unlike the existing technology in which the cloud machine replacement process is cumbersome and cannot be directly replaced on the currently operating cloud phone, and some manufacturers do not support customers to replace the cloud machine by themselves, in this application, users can use the cloud machine replacement function pre-installed in the mother machine 21 to directly and conveniently and quickly replace the sub-machine 22, and during the replacement process, the old sub-machine 22 is directly cleared of data and recycled into the available resource pool of the server side 20, thereby quickly realizing the exchange of the old and new cloud machines.
[0082] In this application, reference is made to Figure 6 , Figure 6 This is a schematic diagram of the interactive structure of the video stream acquisition submodule and the picture acquisition submodule of the cloud phone service platform provided by this application. The sub-machine service module 24 includes a video stream acquisition submodule 241. The sub-machine service module 24 is also used to call the video stream acquisition submodule 241 to obtain the picture of the sub-machine 22 and generate a video stream, and transmit the video stream to the control module 23 in real time; the control module 23 includes a picture acquisition submodule 231. The control module 23 is also used to call the picture acquisition submodule 231, receive the video stream sent by the sub-machine service module 24, decode the video stream and render it to the client 10.
[0083] In this application, the user can view the screen of the slave machine 22 through the screen of the master machine 21 displayed by the client 10. When the user clicks on the "view console APP" built into the master machine 21, and clicks on the preview of the slave machine 22, the screen of the slave machine 22 can be displayed on the screen of the master machine 21.
[0084] During this process, the slave service module 24 invokes the video stream acquisition submodule 241 within the slave service module 24 to acquire the screen of the slave 22 through video streaming. Video streaming refers to the technology of transmitting real-time or recorded video data from a source (such as a cloud phone, camera, or computer) to a receiving end (such as a mobile phone, TV, or live streaming platform) via a network. For example, during a live game broadcast, the cloud phone pushes the screen to the live streaming platform. Video streaming is one of the core functions of the cloud phone, involving multiple steps such as video acquisition, encoding, transmission, decoding, and rendering.
[0085] After acquiring the screen from the slave device 22, the video stream acquisition submodule 241 encodes and decompresses the screen (which may be the H.264 video compression standard) to generate video stream data, which is then transmitted in real time to the control module 23. Because the screen from the slave device 22 is dynamically and continuously displayed on the screen of the master device 21, during the above process, the video stream acquisition submodule 241 continuously acquires the screen from the slave device 22 and continuously transmits the video stream data obtained by encoding and decompressing the screen to the control module 23.
[0086] After the video stream data is transmitted to the control module 23, the control module 23 will call the picture acquisition submodule 231 in the control module 23 to receive the video stream data, then decode the video stream data, and render the decoded video stream data to the client 10, so that the user can view the real-time picture of the sub-machine 22 through the mother machine 21 running on the client 10.
[0087] Different from the problem in the prior art that users cannot view the screen of another cloud machine device through one cloud machine device, in this application, through the interaction of the video stream acquisition submodule 241 in the sub-machine service module 24 and the screen acquisition submodule 231 in the control module 23, the screen of the sub-machine 22 is obtained and displayed in real time on the screen of the mother machine 21, allowing users to conveniently view the screen of at least one sub-machine 22 through the mother machine 21, so as to facilitate the control operation of the sub-machine 22.
[0088] In this application, reference is made to Figure 7 , Figure 7 This is a schematic diagram of the interaction structure between the data storage submodule and the file storage submodule of the cloud phone service platform provided by this application. The sub-machine service module 24 includes a data storage submodule 242. The sub-machine service module 24 is also used to call the data storage submodule 242 to classify and store the data in the sub-machine 22 according to preset rules; the control module 23 includes a file storage submodule 232. The control module 23 is also used to call the file storage submodule 232, the data transmission function of the service platform module 25 and the data storage submodule 242 in the sub-machine service module 24 to back up the data stored in the sub-machine 22 to the mother machine 21, or restore the backup data of the mother machine 21 to the sub-machine 22.
[0089] To ensure continued use of data from the previous cloud machine after a switch, the "Console App" provides a backup / restore function. Users can back up data from the slave machine 22 to the master machine 21 in advance. After switching to a new cloud machine, the backed-up data from the master machine 21 can be restored to the new slave machine 22, making it easier for users to use their data. The backed-up / restored data includes files and non-system application data.
[0090] During operation, the slave machine 22 receives files and generates other non-system application data. These data are called by the data storage submodule 242 in the slave machine service module 24 through the slave machine service module 24, and are classified and stored in the storage space in the slave machine 22 or the local storage space according to preset rules.
[0091] When the user selects the backup operation, the control module 23 will call the file storage submodule 232 in the control module 23, the data transmission function of the service platform module 25, and the data storage submodule 242 in the slave service module 24 to perform the backup operation. The backup operation is specifically as follows:
[0092] First, the control module 23 invokes the file storage submodule 232 within the control module 23 and the data storage submodule 242 within the slave machine service module 24 to read the file directory and non-system application list from the storage space of the slave machine 22. The file directory and non-system application list are then fed back to the client 10, allowing the user to select the data to be backed up. Finally, after determining all the data to be backed up, the control module 23 invokes the data transfer function of the service platform module 25 to transfer the data to be backed up from the storage space of the slave machine 22 to the storage space of the master machine 21. The data to be backed up can be processed based on its data type. For example, file types can be compressed, and application types can be packaged into an installation package. The compressed file and installation package are then encrypted and transferred to the storage space of the master machine 21.
[0093] During the backup process, a backup record is generated on the master machine 21. The backup record includes the backed-up compressed file and installation package, file information, backup time and data size. The backup record is used as a basis for subsequent backup data recovery.
[0094] When the user selects the restore operation, the control module 23 will call the file storage submodule 232 in the control module 23, the data transmission function of the service platform module 25, and the data storage submodule 242 in the slave service module 24 to perform the restore operation. The specific restore operation method is as follows:
[0095] First, the control module 23 calls the file storage submodule 232 in the control module 23 to read all backup records in the parent machine 21, and feeds back to the client 10 for the user to select the backup record that needs to be restored. Then, after determining the backup record that needs to be restored, the backup data in the backup record is decompressed. Then, the control module 23 calls the data transmission function of the service platform module 25 and the data storage submodule 242 in the sub-machine service module 24, encrypts the decompressed backup data and transmits it to the sub-machine 22, and restores it to the corresponding storage directory in the storage space of the sub-machine 22. As for the application type data, after the installation package is transmitted to the sub-machine 22, the corresponding application will be directly installed on the sub-machine 22.
[0096] Reference Figure 8 , Figure 8 This is a schematic diagram of the backup / restore process of the parent and child devices of the cloud phone service platform provided by this application. During the backup or restore process, the interaction process between the parent device 21 and the child device 22 is as follows:
[0097] After the backup process begins, the user selects the slave device 22 to be backed up on the master device 21. The slave device 22 returns the non-system files and files and application data in the APP (application) storage directory to the master device 21. After receiving the files and application data, the master device 21 backs them up and backs them up to the storage space on the master device 21, completing the backup. After the backup is complete, if a restore is needed, the backed-up data is selected on the master device 21, decompressed, and restored, and then transferred to the slave device 22. The slave device 22 restores the backup data to its storage space, completing the restore.
[0098] In addition to the file transfer between the master machine 21 and the slave machine 22 during backup and recovery, the user can also select the file transfer function in the "Console APP" of the master machine 21 to transfer files from the master machine 21 to the slave machine 22. Figure 9 , Figure 9 This is a schematic diagram of the file transfer process between the parent and child machines of the cloud phone service platform provided by this application. The file transfer process between the parent machine 21 and the child machine 22 is as follows:
[0099] After the user enters the mother machine 21 on the client 10, he starts the "Console APP" pre-installed in the mother machine 21 and selects the file transfer function option. At this time, the server 20 will read the file / application list (non-system) of the mother machine 21 and feedback it to the client 10. The user selects the file / application to be transferred and transfers it to the child machine 22. The file / application is transferred to the corresponding file / application storage directory in the storage space of the child machine 22, and the transfer is completed.
[0100] Different from the existing technology that relies on cumbersome operations of third-party storage services when performing backup / restore operations on multiple cloud phone devices, and the problem of additional costs due to the expansion of storage services, in this application, through the parent-child architecture of the cloud phone, users can directly back up and restore the file data and non-system application data of the child machine 22 on the parent machine 21, without relying on third-party storage, reducing storage costs, and improving the convenience of backup and restore operations of file data and non-system application data in the cloud phone.
[0101] In this application, reference is made to Figure 10 , Figure 10 This is a schematic diagram of the interaction structure of the resource allocation submodule of the cloud phone service platform provided by this application. The service platform module 25 includes a resource allocation submodule 251. Before backing up the data stored in the sub-machine 22 to the main machine 21, the service platform module 25 is also used to call the resource allocation submodule 251, read the storage space of the main machine 21, and determine whether the free storage space meets the storage requirements of the backup data; if so, the coordination control module 23 performs the backup; if not, the insufficient space prompt is fed back to the client 10.
[0102] During the backup process described above, after compressing and packaging the data to be backed up on the slave machine 22, the service platform module 25 invokes the resource allocation submodule 251 within the service platform module 25 to read the storage space of the master machine 21 and determine whether the available storage space on the master machine 21 meets the backup data storage requirements. If so, the control module 23 invokes the data transfer function of the service platform module 25 to transfer the backup data to the available storage space on the master machine 21. If not, meaning that the available storage space on the master machine 21 is insufficient to store all the backup data, the control module 23 sends a feedback to the client 10 indicating insufficient storage space on the master machine 21, and the backup data is not transferred.
[0103] Different from the existing technology that requires reliance on third-party storage for backup operations when backing up file data and non-system application data in cloud phones, in this application, the service platform module 25 calls the resource allocation function 251 to determine whether the size of the free storage space in the mother machine 21 meets the backup requirements, and coordinates the backup of data in the sub-machine 22 to the free storage space of the mother machine 21, making the operation more convenient and the data transmission faster.
[0104] In this application, before restoring the backup data of the main machine 21 to the sub-machine 22, the service platform module 25 is also used to call the resource allocation function 251, read the storage space of the sub-machine 22, and determine whether the free storage space is sufficient to restore the backup data; if so, the coordination control module 23 performs the restoration; if not, a prompt of insufficient space is fed back to the client 10.
[0105] During the above-described recovery process, after decompressing the backup data in the backup record, the service platform module 25 invokes the resource allocation submodule 251 within the service platform module 25 to read the storage space size of the slave 22 and determine whether the available storage space in the slave 22 meets the backup data storage requirements. If so, the control module 23 invokes the data transmission function of the service platform module 25 to transfer the backup data to the available storage space in the slave 22 for recovery. If not, meaning that the available storage space in the slave 22 is insufficient to store all the backup data, the control module 23 sends a feedback to the client 10 indicating insufficient storage space in the slave 22 and does not transfer the backup data.
[0106] Different from the existing technology in which third-party storage software only supports single file or application download operations when the user needs to restore, and cannot restore the entire file with the backup record module, in this application, the service platform module 25 calls the resource allocation function 251 to determine whether the size of the free storage space in the sub-machine 22 meets the recovery requirements, and coordinates the restoration of the backed-up data in the parent machine 21 to the free storage space of the sub-machine 22, making the operation more convenient and the data transmission faster.
[0107] In this application, reference is made to Figure 11 , Figure 11 This is a schematic diagram of the interaction structure between the application running submodule and the control instruction parsing submodule of the cloud phone service platform provided by this application. The control module 23 includes an application running submodule 233. The control module 23 is also used to call the application running submodule 233 and send application control instructions to the sub-machine service module 24; the sub-machine service module 24 includes a control instruction parsing submodule 243. The sub-machine service module 24 is also used to call the control instruction parsing submodule 243, receive the application control instructions sent by the control module 23, parse the application control instructions, and control the application running status of the sub-machine 22 according to the parsing results; the control module 23 is also used to call the application running submodule 233, monitor the application running status in the sub-machine 22, and feed back the running status to the client 10.
[0108] In this application, a user can control the application running status (including application startup / shutdown) of a slave 22 via the master 21 running on the client 10. The user clicks on "Application Start / Stop" in the function options within the "Console App" built into the master 21 and selects the application to be controlled. The control module 23 then calls the application running submodule 233 within the control module 23 to send an application control instruction to the slave service module 24. This instruction contains information about the application to be controlled and the application running status operation. Once the application control instruction is transmitted to the slave service module 24, the slave service module 24 calls the control instruction parsing submodule 243 to receive and parse the instruction, converting it into a command executable by the slave 22. This command is then executed via channel hardware or software to control the application running status of the slave 22. The "execution via channel hardware or software" can be understood as pre-installed in the slave service module 24 with execution modules that implement functions such as file transfer, application startup / shutdown, and one-click new machine creation, stored as channel hardware or software.
[0109] In a specific embodiment, referring to Figure 12 , Figure 12 This is a schematic diagram of the parent-child application start-stop interaction process of the cloud phone service platform provided by this application. The interaction between the parent device 21 and the child device 22 is used as an example to illustrate the process of implementing application start-stop. The process is as follows:
[0110] When the user clicks on the application start and stop function option in the "Console APP" built into the mother machine 21, the mother machine 21 sends an application list request (including the ID of the child machine 22) to the child machine 22 through the communication gateway. The communication gateway sends the application list request to the corresponding child machine 22 according to the ID of the child machine 22; after receiving the application list request, the child machine 22 returns the non-system application list (including the application status) to the mother machine 21 through the communication gateway; the mother machine 21 receives and displays the non-system application list to the client 10, and the user selects the application whose running status needs to be controlled in the non-system application list. For example, if the user chooses to start a game application that is not running, the mother machine 21 sends an application start instruction to the child machine 22 through the communication gateway. After receiving the application start instruction, the child machine 22 performs the corresponding operation, that is, starts the corresponding game application. At this time, the application status is updated and the update result is fed back to the mother machine 21; for example, if the user chooses to close the running game application, the mother machine 21 sends an application close instruction to the child machine 22 through the communication gateway. After receiving the application close instruction, the child machine 22 performs the corresponding operation, that is, closes the corresponding game application. At this time, the application status is updated and the update result is fed back to the mother machine 21.
[0111] Different from the existing technology in which the start and stop of cloud phone applications requires exiting the cloud machine and performing cumbersome steps on the client 10 to start and stop the application, in this application, by allowing users to directly control the start and stop of non-system applications on the sub-machine 22 on the main machine 21, users do not need to exit the main machine 21 and open the sub-machine 22 to start and stop non-system applications, thereby improving the convenience of operation.
[0112] This application discloses a cloud phone service system based on a parent-child architecture. The system includes a client 10 and a server 20. The client 10 is in communication with the server 20. The client 10 obtains control authority for the parent-child cloud phones from the server 20 through the client 10. The server 20 allocates control authority for a parent device 21 and at least one child device 22 to the client 10. The parent device 21 runs on the client 10 and is used to interact with each child device 22. The configuration of the parent device 21 is higher than that of the child devices 22. This enables comprehensive and convenient control of at least one other cloud phone through one cloud phone, achieving low-cost and high-efficiency centralized management and control of multiple cloud phones. This eliminates the need for users to frequently switch between different device interfaces, reduces operational complexity, and reduces time costs.
[0113] The server side 20 serves as the carrier of the above-mentioned cloud phone service system (i.e., cloud phone service platform) based on the parent-child architecture. The cloud phone service platform runs an associated parent machine 21 and at least one child machine 22, with various services provided by the cloud phone service platform serving as support for the interaction between the parent machine 21 and the child machine 22.
[0114] For example, data transmission between the master device 21 and the slave device 22 is implemented based on the data transmission related services provided by the cloud phone service platform. During data transmission, the interactions between the various modules of the cloud phone service platform are as follows:
[0115] The client 10 sends an interactive instruction (i.e., a data transmission instruction) containing a data transmission request to the control module 23. After receiving the interactive instruction of the data transmission request, the control module 23 converts the interactive instruction of the data transmission request into a sub-machine service drive instruction (including a data transmission request) that can be parsed by the sub-machine service module 24, and then forwards the sub-machine service drive instruction to the sub-machine service module 24. The sub-machine service module 24 calls the data transmission function of the service platform module 25 based on the received sub-machine service drive instruction. At this time, the service platform module 25 is used to monitor the network status during data transmission, plan the transmission protocol, and coordinate data transmission to realize the transmission of data from the mother machine 21 to the sub-machine 22. After the transmission is completed, the service platform module 25 sends a transmission completion notification to the sub-machine service module 24, which is then fed back by the sub-machine service module 24 to the control module 23, and finally fed back to the client 10.
[0116] Example 1
[0117] Based on this, the present application also provides a data transmission method, referring to Figure 13 , Figure 13 : This is a flow chart of a first embodiment of a data transmission method for a cloud phone service platform provided by this application. The data transmission method includes:
[0118] S10: In response to the data transmission instruction received by the master machine, the master machine sends a data transmission request to the corresponding slave machine; wherein the data transmission instruction includes the data packet to be transmitted and the identity information of the slave machine to be received.
[0119] In an embodiment of the present application, when a user wants to transfer data from a mother machine 21 to a child machine 22, the user can perform a corresponding data transmission initiation operation on the mother machine 21 on the client 10 and send a data transmission instruction to the mother machine 21. For example, the data transmission initiation operation can be an operation in which the user clicks and selects the data transmission operation through the "Console APP" provided by the cloud phone service platform on the mother machine 21, or the user directly opens the file directory of the mother machine 21 and drags the file on the mother machine 21 to the child machine 22 to trigger the data transmission operation. This is not limited here.
[0120] In the embodiment of the present application, the data transmission initiation operation is performed by the user clicking on the "Console APP" to select the data transmission operation mode. After the user clicks, the master machine 21 automatically scans the data stored in the master machine 21. The types of data include file data and application data, which are read by scanning file directories and non-system applications respectively. In addition, the master machine 21 reduces unnecessary transmission by filtering out system data during scanning.
[0121] The master device 21 generates a corresponding data list of stored non-system applications and file directories and feeds it back to the client 10 for the user to view. After the user selects the data to be transferred and the slave device 22 to be transferred, the cloud phone service platform generates a data transfer instruction and sends it to the master device 21. The data transfer instruction includes the data to be transferred (data packet to be transferred) selected by the user and the identity information of the receiving slave device 22.
[0122] The data transmission instruction sent by the client 10 to the master device 21 includes the data to be transmitted (i.e., the data packet to be transmitted) selected by the user and the identity information of the receiving slave device 22 (which may be the ID of the slave device 22). The data packet may be a file-type data packet, an application-type data packet, or may include both file-type data and application-type data.
[0123] The above-mentioned process of the client 10 sending a data transmission instruction to the mother machine 21 is implemented based on the interaction between the control module 23 in the cloud phone service platform and the client 10. At this time, in the cloud phone service platform, the client 10 sends an interaction instruction (i.e., a data transmission instruction) containing a data transmission request to the control module 23.
[0124] In the data transmission method provided in the embodiment of the present application, the data packet is a data packet stored on the mother machine.
[0125] In the embodiment of the present application, since the user can control the sub-machine 22 through the main machine 21 on the client 10, when the user chooses to perform data transmission, the list of files and applications that can be selected are all the list of files and applications stored in the main machine 21. Therefore, the data packet transmitted in the data transmission is the data packet stored on the main machine 21, and the data packet is transmitted from the main machine 21 to the sub-machine 22.
[0126] It should be noted that the data transmission between the main machine 21 and the sub-machine 22 is not limited to one-way transmission. The data transmission method in the embodiment of the present application is a specific implementation method of the data transmission service provided on the cloud phone service platform. The cloud phone service platform also provides backup and recovery services. During the backup, the data stored in the sub-machine 22 needs to be transferred to the main machine 21 for storage and backup. At this time, the flow of the data packet is from the sub-machine 22 to the main machine 21.
[0127] Different from the prior art, the data packets in the cloud phone need to be downloaded to local storage or third-party cloud storage, and then the data packets are obtained from the local or third-party cloud storage and sent to another cloud phone device, which has a cumbersome operation process. In the embodiment of the present application, since the mother machine 21 and each sub-machine 22 are cloud phones deployed on the server side 20, the storage space in the mother machine 21 and the sub-machine 22 is also the cloud storage space of the server side 20. It can be understood that the data of the mother and sub-machines are all stored on the server side 20. Therefore, the data transmission method provided by the present application does not need to download the data of the mother machine 21 from the server side 20 to the client side 10 for local storage, nor does it need to use third-party cloud storage. Instead, the mother machine 21 can directly transmit the data packets stored on the mother machine 21 to the sub-machine 22. The transmitted data packets are only transferred within the server side 20, shortening the data transmission link, greatly simplifying the data transmission method, and making the transmission more convenient and quick.
[0128] In the above step S10, after receiving the data transmission instruction, the master device 21 sends a data transmission request to the corresponding slave device 22 (ie, the slave device 22 to be received) according to the identity information of the slave device 22 to be received in the data transmission instruction.
[0129] Among them, the data transmission request contains information such as the application package name (Package Name) or the file hash value (FileHash). The application package name is a unique identifier in the Android / iOS application (similar to an ID card number) and is used to distinguish different applications; the file hash value is a fixed-length string generated by calculating the file content through a hash algorithm (such as MD5, SHA-1 or SHA-256).
[0130] The above-mentioned process of the mother machine 21 sending a data transmission request to the corresponding sub-machine 22 in response to the data transmission instruction received by the mother machine 21 is implemented based on the interaction between the control module 23 and the sub-machine service module 24 in the cloud mobile phone service platform. At this time, in the cloud mobile phone service platform, the control module 23 converts the interactive instruction of the data transmission request into a sub-machine service drive instruction (including the data transmission request) that can be parsed by the sub-machine service module 24 after receiving the interactive instruction of the data transmission request, and then forwards the sub-machine service drive instruction to the sub-machine service module 24.
[0131] The data transmission method provided in the embodiment of the present application refers to Figure 14 , Figure 14 This is a flow chart of establishing a long connection between a parent and a child machine in the first embodiment of the data transmission method of the cloud phone service platform provided by the present application. Before the parent machine sends a data transmission request to the corresponding child machine, the data transmission method further includes:
[0132] S11: The master phone requests the cloud phone service platform for the slave phone configuration based on the identity information of the slave phone to be received.
[0133] S12: The cloud phone service platform verifies whether there is a pairing relationship between the main phone and the requested sub-phone based on historical subscription records, and returns the sub-phone configuration information to the main phone if there is a pairing relationship between the main phone and the sub-phone.
[0134] S13: In response to the cloud phone service platform returning the sub-machine configuration information to the master machine, the master machine establishes a long connection with the corresponding sub-machine.
[0135] In step S11, after the master device 21 confirms the identity information of the selected slave device 22, before sending a data transmission request to the corresponding slave device 22, it first requests the configuration of the slave device 22 from the cloud phone service platform on the server based on the identity information of the slave device 22 to facilitate the subsequent connection between the master device 21 and the slave device 22 for data transmission. The configuration of a cloud phone typically includes a combination of resources at multiple levels, such as the number of CPU cores, memory, storage, and network, including hardware, software, network, and service.
[0136] In step S12 above, after receiving the sub-device 22 configuration request sent by the parent device 21, the cloud phone service platform will verify the parent-subdevice relationship based on the historical subscription records of the parent and sub-devices in the cloud phone service platform. Since each time a user purchases a parent-subdevice package, the cloud phone service platform will allocate a parent device 21 and at least one sub-device 22 to the user, the allocated parent device 21 and all sub-devices 22 are associated with each other through the parent-subdevice IDs, forming a parent-subdevice pairing relationship. Therefore, the cloud phone service platform can check the historical subscription records to determine whether there is a pairing relationship between the parent device 21 and the sub-device 22 it requested. If there is a pairing relationship between the parent device 21 and the sub-device 22, the cloud phone service platform will return the configuration information of the sub-device 22 to the parent device 21; if there is no pairing relationship between the parent device 21 and the sub-device 22, the cloud phone service platform will return a prompt message to the parent device 21 indicating that the pairing relationship is not established.
[0137] In step S13, when the master device 21 and the slave device 22 are paired, the master device 21 receives the slave device 22 configuration information returned by the cloud phone service platform. Based on the slave device 22 configuration information, the master device 21 and the slave device 22 establish a persistent connection for data transmission. The persistent connection can be a WebSocket persistent connection, a TCP persistent connection, or a WebRTC persistent connection, which is not limited here.
[0138] After the long link is established, the connection between the master device 21 and the slave device 22 will not be disconnected during the validity period of the token, and will be connected again after the token expires.
[0139] Unlike the existing technology where each cloud phone operates independently, establishing a transmission connection between two cloud phones requires relying on third-party transmission tools, which is costly and cumbersome. In the embodiment of the present application, through the pairing relationship between the mother and child phones, a long connection can be directly established between the mother phone 21 and the corresponding child phone 22 for communication, realizing data transmission without relying on third-party tools, reducing transmission costs and simplifying the operation process.
[0140] S20: In response to the slave receiving the data transmission request, the slave receives the data packet when the storage space is sufficient.
[0141] The data transmission method provided in the present application responds to the slave receiving a data transmission request, and the slave receiving a data packet when there is sufficient storage space, including: the main machine encrypts and transmits the data packet to the slave, and the slave receives the data packet.
[0142] In the embodiment of the present application, after the parent machine 21 establishes a persistent connection with the child machine 22, and after confirming that the child machine 22 has sufficient storage space, the parent machine 21 encrypts the data packet and transmits it to the child machine 22. The encryption method can be symmetric encryption, asymmetric encryption, hybrid encryption, etc., which is not limited here.
[0143] Unlike the existing technology, where data transmission between two cloud phones is either transmitted through third-party storage or cloud storage as a transfer station, or transmitted through third-party transmission tools, which makes data security difficult to guarantee, in the embodiment of the present application, a long connection is directly established between the master device 21 and the slave device 22 to achieve encrypted data packet transmission, ensuring the security of data during transmission and preventing data from being stolen or tampered with.
[0144] In step S20, after the data transmission request sent by the master device 21 is transmitted to the slave device 22, the slave device 22 will determine whether the size of the free storage space in the slave device 22 is sufficient to receive the data packet to be transmitted in response to the received data transmission request.
[0145] If the conditions are met, that is, the storage space of the slave machine 22 is sufficient, the slave machine 22 receives the data packet to be transmitted; if the conditions are not met, that is, the storage space of the slave machine 22 is insufficient, the slave machine 22 does not receive the data packet to be transmitted and may return a prompt message indicating insufficient storage space to the client 10.
[0146] The process of the above-mentioned sub-machine 22 receiving data packets when the storage space is sufficient is realized based on the interaction between the sub-machine service module 24 and the service platform 25 in the cloud mobile phone service platform. At this time, in the cloud mobile phone service platform, the sub-machine service module 24 calls the data transmission function of the service platform module 25 based on the received sub-machine service drive instruction. At this time, the service platform module 25 is used to monitor the network status in the data transmission, plan the transmission protocol, and coordinate the data transmission to realize the transmission of the mother machine 21 data to the sub-machine 22.
[0147] Different from the existing technology, the present application discloses a data transmission method and system. In this data transmission method, based on a pre-built cloud phone service platform and a mother machine 21 and at least one child machine 22 associated through a mother-child architecture running on the service platform, after the user initiates a transmission instruction, the mother machine 21 directly sends a data transmission request containing a data packet to be transmitted to the child machine 22, and the corresponding child machine 22 directly receives the data packet sent by the mother machine 21 when there is sufficient storage space, so that the transmitted data packet is only transferred within the server end 20, without downloading to local storage, and without relying on third-party cloud storage or transmission tools for data transmission between cloud phones. The mother machine 21 and the child machine 22 directly communicate for data transmission, shortening the data transmission link, which can greatly simplify the data transmission method and make the transmission more convenient and quick; during the data transmission process, the user only needs to select the data to be transmitted, and the user does not need to download the data on the client 10, which reduces the user operation steps, saves operation time, and lowers the user usage threshold.
[0148] The data transmission method provided by this application refers to Figure 13 , Figure 13: is a flow chart of a first embodiment of a data transmission method for a cloud phone service platform provided by the present application. After the slave receives a data packet when the storage space is sufficient, the data transmission method further includes:
[0149] S30: The slave device processes the data packet based on the type of the data packet.
[0150] In the embodiment of the present application, data packets can be mainly divided into two data types, one is file data and the other is application data. After the user clicks and selects the file transfer operation through the above-mentioned "Console APP", the mother machine 21 will automatically scan the non-system applications and file directories, generate corresponding application lists and file lists and feed them back to the client 10 for the user to select the data to be transferred. Among them, the reading of file directories is the underlying capability of the cloud phone operating system, which can obtain the storage structure; non-system applications are applications installed and configured by users or operators on the mobile phone system. The identification of non-system applications is determined by whether they are system applications. Among them, the file list will display information such as the path, type and size of the file, and the application list will display information such as the path, type and size of the application.
[0151] In the above step S30, after receiving the data packet when the storage space is sufficient, the slave 22 determines the type of the data packet to determine whether the data packet is a file data packet or an application data packet, and then processes the data packet accordingly according to the data packet type.
[0152] Unlike the prior art, when two cloud phone devices are transmitting data, the user needs to download the data from one cloud phone device to local storage, then distinguish the data packet types, and then perform corresponding transmission operations on the other cloud phone device according to different data types. The operation process is cumbersome, the user has a high learning cost, and is difficult to operate. In the embodiment of the present application, after the main machine 21 directly transmits the data packet to the slave machine 22, the slave machine 22 will automatically identify the type of the data packet and process the data packet accordingly, reducing the user's operating workload, lowering the learning cost, and making the operation more convenient.
[0153] The data transmission method provided by this application refers to Figure 15 , Figure 15 This is a schematic diagram of the data packet processing flow of the first embodiment of the data transmission method of the cloud phone service platform provided by this application. The slave device processes the data packet based on the type of the data packet, specifically including:
[0154] S31: In response to the data packet being of file data type, the slave machine stores the file data in the same file directory structure as that of the master machine.
[0155] S32: In response to the data packet being of application data, the slave automatically installs the application data.
[0156] In the embodiment of the present application, after receiving a data packet when the storage space of the slave 22 is sufficient, the slave 22 determines the type of the data packet.
[0157] If the data packet is a file, the process proceeds to step S31. The slave 22 stores the file data in the data packet according to the file information, in the same directory structure on the slave 22 as on the master 21. Furthermore, the slave 22 automatically associates a method for opening the file data. For example, if the current file is a Word document, the user clicks on it and the system provides a tool for opening the file. For example, if WPS is available, WPS will be selected as the opening method.
[0158] If the data packet is application data, the operation of step S32 is performed as above, and the slave 22 reads the application data in the data packet and automatically installs the application. For example, if the slave 22 receives an installation package for a game application, the slave 22 will automatically install the game application using the installation package.
[0159] In the embodiment of the present application, the data packet received by the sub-machine 22 may contain only file data or application data, or both. Therefore, when actually executing the above steps S31 to S32, the execution order can be sequential or reverse order, or in parallel, or only any one step can be executed, depending on the specific application scenario. The execution order is not limited here.
[0160] Different from the prior art, when two cloud phone devices perform file transfer, the data in one cloud phone device needs to be downloaded to a third-party storage, and then manually uploaded to the new cloud phone; when two cloud phone devices perform application transfer, the old cloud phone non-system application needs to be downloaded locally first, and then manually uploaded to the new cloud phone for installation. The operation process is cumbersome and there are compatibility issues. The transmission between cloud phones of different architectures (such as x86 and ARM) causes the application to be unable to run normally. In the embodiment of the present application, the sub-machine 22 automatically identifies the type of data packet, classifies the file data and application data for processing, and automatically stores the file data in the sub-machine 22 under the same directory structure as the master machine 21. The application data is automatically installed on the sub-machine 22, reducing the operation steps in the intermediate links. Moreover, since the master machine 21 and the sub-machine 22 are deployed on the unified server end 20, there are no compatibility issues, and the ultimate goal of data transmission is achieved more conveniently and quickly.
[0161] In a specific embodiment, referring to Figure 16 , Figure 16This is a flow chart of data transmission interaction between the parent and child machines in the first embodiment of the data transmission method of the cloud phone service platform provided by this application. During the data transmission process, the interaction process between the client 10, the parent machine 21, the child machine 22 and the cloud phone service platform (server 20) is as follows:
[0162] After the user selects the data transmission service through the cloud phone service platform on the client 10, the mother machine 21 automatically scans the non-system applications and file directories, and generates a non-system application list and a file list and feeds it back to the client 10; after the user selects the files and / or applications to be transferred on the non-system application list and the file list, it sends a data transmission instruction containing the identity information of the child machine 22 to the mother machine 21; after receiving the data transmission instruction, the mother machine 21 requests the cloud phone service platform to configure the child machine 22 according to the identity information of the child machine 22; the cloud phone service platform returns the information to the mother machine 21 after confirming the association between the mother and child machines. The configuration information of the child machine 22 is returned, and a long connection is established between the main machine 21 and the child machine 22; after the main machine 21 sends a data transmission request to the child machine 22, the child machine 22 determines whether it can receive the data packet based on the size of the storage space in the child machine 22. If it can be received, the main machine 21 encrypts the data packet and transmits it to the child machine 22; after receiving the data packet, the child machine 22 determines the type of the data packet. If it is a file type, the file data is stored in the child machine 22 in the same directory structure as the main machine 21. If it is an application type, the application is automatically installed. After the storage or installation is completed, a completion notification is returned to the client 10.
[0163] The present application discloses a data transmission method and system. In the data transmission method, based on a pre-built cloud phone service platform and a master machine 21 and at least one slave machine 22 connected by a master-child architecture running on the service platform, after the user initiates a transmission instruction, the master machine 21 directly sends a data transmission request containing a data packet to be transmitted to the slave machine 22, and the corresponding slave machine 22 directly receives the data packet sent by the master machine 21 when there is sufficient storage space, so that the transmitted data packet is only transferred within the server end 20, without downloading to local storage, and without relying on third-party cloud storage or transmission tools for data transmission between cloud phones. The master machine 21 and the slave machine 22 directly communicate for data transmission, shortening the data transmission link, greatly simplifying the data transmission method, and making the transmission more convenient and quick; during the data transmission process, the user only needs to select the data to be transmitted, and the user does not need to download the data on the client 10, which reduces the user operation steps, saves operation time, and lowers the user usage threshold.
[0164] Example 2
[0165] Based on the same inventive concept, the present application embodiment also provides a data transmission system based on a cloud phone service platform, referring to Figure 17 , Figure 17This is a structural diagram of the second embodiment of the data transmission system of the cloud phone service platform provided by this application. The data transmission system includes a client 10 and a server 20 connected in communication. The server 20 is the carrier of the cloud phone service platform. The cloud phone service platform runs an associated master machine 21 and at least one slave machine 22. The master machine 21 runs on the client 10:
[0166] The master machine 21 is used to send a data transmission request to the corresponding slave machine 22 when receiving a data transmission instruction; the data transmission instruction includes the data packet to be transmitted and the identity information of the slave machine 22 to be received; the slave machine 22 is used to receive the data packet when it receives the data transmission request and has sufficient storage space.
[0167] In the second embodiment, the specific process of implementing data transmission through interaction between the client 10, the server 20, the master machine 21 and the slave machine 22 in the data transmission system based on the cloud phone service platform can refer to the detailed description of steps S10 to S30 in the data transmission method of the first embodiment above, and the repeated parts will not be repeated here.
[0168] Example 3
[0169] Based on the same inventive concept, an embodiment of the present application also provides a computer device / equipment / system, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the data transmission method described in the above embodiment 1.
[0170] Example 4
[0171] Based on the same inventive concept, an embodiment of the present application further provides a computer-readable storage medium on which a computer program / instruction is stored. When the computer program / instruction is executed by a processor, the data transmission method described in the above embodiment 1 is implemented.
[0172] Example 5
[0173] Based on the same inventive concept, an embodiment of the present application further provides a computer program product, including a computer program / instruction, characterized in that when the computer program / instruction is executed by a processor, the data transmission method described in the above embodiment 1 is implemented.
[0174] The above description is merely an embodiment of the present application and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.
Claims
1. A data transmission method, applied to a cloud phone service platform, characterized in that: The cloud phone service platform runs an associated master device and at least one slave device, and the data transmission method includes: In response to the data transmission instruction received by the master machine, the master machine sends a data transmission request to the corresponding slave machine; the data transmission instruction includes the data packet to be transmitted and the identity information of the slave machine to be received; In response to the slave receiving the data transmission request, the slave receives the data packet when storage space is sufficient.
2. The data transmission method according to claim 1, wherein: After the slave receives the data packet when the storage space is sufficient, the slave further includes: The slave machine processes the data packet based on the type of the data packet.
3. The data transmission method according to claim 2, wherein: The slave machine processes the data packet based on the type of the data packet, including: In response to the data packet being of file data type, the slave machine stores the file data in the same file directory structure as that of the master machine; In response to the data packet being of application data, the slave machine automatically installs the application data.
4. The data transmission method according to claim 1, wherein: Before the master device sends a data transmission request to the corresponding slave device, the data transmission method further includes: The master phone requests the cloud phone service platform for sub-phone configuration based on the identity information of the sub-phone to be received; The cloud phone service platform verifies whether there is a pairing relationship between the master phone and the requested slave phone based on historical subscription records, and returns the slave phone configuration information to the master phone if there is a pairing relationship between the master phone and the slave phone; In response to the cloud phone service platform returning the sub-machine configuration information to the master machine, the master machine establishes a long connection with the corresponding sub-machine.
5. The data transmission method according to claim 1, wherein: In response to the slave receiving the data transmission request, the slave receiving the data packet when storage space is sufficient, including: The master device encrypts and transmits the data packet to the slave device, and the slave device receives the data packet.
6. The data transmission method according to claim 1, wherein: The data packet is a data packet stored on the master machine.
7. A data transmission system based on a cloud phone service platform, characterized in that: It includes a client and a server connected in communication. The server is the carrier of the cloud phone service platform. The cloud phone service platform runs an associated master machine and at least one slave machine. The master machine runs on the client: The master machine is used to send a data transmission request to the corresponding slave machine when receiving a data transmission instruction; the data transmission instruction includes the data packet to be transmitted and the identity information of the slave machine to be received; the slave machine is used to receive the data packet when receiving the data transmission request and the storage space is sufficient.
8. A computer device comprising a memory, a processor, and a computer program stored in the memory, wherein: The processor executes the computer program to implement the steps of the data transmission method according to any one of claims 1 to 6.
9. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the data transmission method according to any one of claims 1 to 6 are implemented.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the data transmission method according to any one of claims 1 to 6 are implemented.