Electronic device remote control method, server, system, medium and device

By deploying the intranet penetration client and service proxy module on the edge node server and establishing a communication channel with the Internet data center, the problem that iOS devices cannot be remotely controlled by Android devices is solved, cross-platform remote control is realized, and universality and reliability are improved.

CN115514750BActive Publication Date: 2025-04-29DOUYIN VISION CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202110684560.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-06-21
Publication Date
2025-04-29
Estimated Expiration
2041-06-21

AI Technical Summary

Technical Problem

The existing technology is difficult to achieve remote control of cross-platform electronic devices, especially iOS devices cannot be directly remotely controlled by Android devices, and rely on local area networks and Apple accounts, resulting in poor universality and reliability.

Method used

By deploying the intranet penetrating client and service agent module on the edge node server, establishing a communication channel with the Internet data center, obtaining device information of electronic devices, and drawing interactive interfaces and generating device control information through the web server, remote control of electronic devices is realized.

Benefits of technology

There is no need to rely on the network of the electronic device itself to avoid remote control interruptions caused by unexpected network shutdown, support non-local area network access, and improve the universality and reliability of remote control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115514750B_ABST
    Figure CN115514750B_ABST
Patent Text Reader

Abstract

The present invention relates to a method, server, system, medium and computer equipment for remote control of electronic equipment. The method is applied to an edge node server, and an intranet penetration client deployed thereon establishes a communication connection with an intranet penetration server of an Internet data center; a service proxy module deployed on the edge node server obtains device information of an electronic equipment linked to the edge node server, and transmits the device information to the Internet data center, so that a Web server of the Internet data center draws an interactive interface of the electronic equipment based on the device information; the service proxy module receives device control information from a Web server, and the device control information is generated by the Web server based on input operations of the interactive interface; the service proxy module sends the device control information to the electronic equipment so that the electronic equipment performs corresponding operations. The scheme of the present invention improves the versatility and reliability of the remote control scheme of electronic equipment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present disclosure relate to the field of computer technology, and in particular to a method for remotely controlling an electronic device, an edge node server, an Internet data center, a remote control system for an electronic device, a computer-readable storage medium and a computer device for implementing the method for remotely controlling an electronic device. Background Art

[0002] With the rapid development of information technology, smart electronic devices have become increasingly popular. Users can remotely control other devices by installing remote control applications on electronic devices. At present, there are large differences between the operating systems running on different devices, such as the Android system and the iOS system. The iOS system (a mobile operating system developed by Apple) is a relatively closed operating system that cannot directly communicate with other non-iOS systems such as the Android system, so users cannot remotely control iOS devices through Android devices.

[0003] In the related art, when realizing remote control of iOS devices, it is necessary to connect the controlling device such as a Mac device and the controlled device such as an iOS device to the same WiFi network, and use the same account to log in to iCloud on both devices, and then you can operate the remote control of the iOS device on the Mac device.

[0004] However, in the above solution, the controlling device must be a Mac device, and both the controlling device and the controlled device need to log in to the same account and be in the same network environment. At the same time, in some cases, the controlled device may be unable to access the Internet due to some unexpected factors. That is, the current solution relies on the network of the controlled device itself and is limited by conditions such as Apple accounts and local area networks, resulting in poor versatility and reliability of electronic device remote control solutions. Summary of the invention

[0005] In order to solve the above technical problems or at least partially solve the above technical problems, the embodiments of the present disclosure provide a remote control method for an electronic device, an edge node server, an Internet data center, a remote control system for an electronic device, a computer-readable storage medium and a computer device for implementing the remote control method for an electronic device.

[0006] In a first aspect, an embodiment of the present disclosure provides a method for remotely controlling an electronic device, which is applied to an edge node server, wherein an intranet penetration client and a service proxy module are deployed on the edge node server, and the method includes:

[0007] The intranet penetration client establishes a communication connection with the intranet penetration server of the Internet data center to establish a communication channel between the edge node server and the Internet data center;

[0008] The service agent module obtains device information of the electronic device linked to the edge node server;

[0009] The service proxy module transmits the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information;

[0010] The service proxy module receives device control information from the Web server, where the device control information is generated by the Web server based on input operations on the interactive interface;

[0011] The service agent module sends the device control information to the electronic device, so that the electronic device performs corresponding operations based on the device control information.

[0012] In some embodiments of the present disclosure, the electronic device is an iOS device, and the step of the service agent module sending the device control information to the electronic device includes:

[0013] The service agent module sends the device control information to the electronic device through the interface of the UI automation test framework XCUITest.

[0014] In some embodiments of the present disclosure, the device information includes at least one or more of CPU information, memory information, battery power, and device screen size; and / or the input operation includes any one or more of clicking, sliding, and dragging.

[0015] In a second aspect, an embodiment of the present disclosure provides an edge node server, including an intranet penetration client and a service proxy module:

[0016] The intranet penetration client is used to establish a communication connection with the intranet penetration server of the Internet data center to establish a communication channel between the edge node server and the Internet data center;

[0017] The service proxy module is used to obtain device information of the electronic device linked to the edge node server; transmit the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information; receive device control information from the Web server, the device control information is generated by the Web server based on the input operation of the interactive interface; send the device control information to the electronic device, so that the electronic device performs corresponding operations based on the device control information.

[0018] In a third aspect, an embodiment of the present disclosure provides a method for remotely controlling an electronic device, which is applied to an Internet data center, wherein the Internet data center includes an intranet penetration server and a Web server, and the method includes:

[0019] The intranet penetration server establishes a communication connection with the intranet penetration client on the edge node server to establish a communication channel between the edge node server and the Internet data center;

[0020] The Web server receives device information transmitted by the service proxy module on the edge node server through the communication channel, wherein the device information is device information of an electronic device linked to the edge node server;

[0021] The Web server draws an interactive interface of the electronic device based on the device information, and generates device control information based on input operations on the interactive interface;

[0022] The Web server transmits the device control information to the service agent module, so that the service agent module sends the device control information to the electronic device, thereby causing the electronic device to perform corresponding operations based on the device control information.

[0023] In some embodiments of the present disclosure, the Internet data center is configured with a device information processing module, and the method further includes:

[0024] The device information processing module receives the device information transmitted by the service agent module through the communication channel, and stores the device information in a database;

[0025] The Web server obtains the device information from the database.

[0026] In some embodiments of the present disclosure, the Internet data center is configured with a message queue, and the method further includes:

[0027] The message queue receives the device information transmitted by the service agent module through the communication channel;

[0028] After the device information processing module obtains the device information from the message queue, the device information is stored in the database;

[0029] Alternatively, the Web server forwards the device control information to the device information processing module through the message queue;

[0030] The device information processing module forwards the device control information to the service agent module through the message queue.

[0031] In some embodiments of the present disclosure, the Web server is a virtual Web server deployed based on a container engine; and / or the device information processing module is deployed on the container engine.

[0032] In some embodiments of the present disclosure, there are multiple edge node servers, and the Internet data center is configured with multiple virtual machine nodes. The method further includes:

[0033] When the service proxy module on each edge node server first goes online, it registers its own service information on the intranet penetration server;

[0034] Selecting a master node from multiple virtual machine nodes based on a preset election strategy, and using the remaining virtual machine nodes as slave nodes, wherein the preset election strategy is related to the load of the virtual machine nodes;

[0035] The master node obtains the number of service information registered on the intranet penetration server, and allocates a preset number of device information processing modules to be started to each slave node according to the number of service information;

[0036] Each of the slave nodes starts the preset number of device information processing modules, and each of the device information processing modules is used to process the device information uploaded by the service agent module on an edge node server.

[0037] In some embodiments of the present disclosure, the step of electing a master node from a plurality of virtual machine nodes based on a preset election strategy includes:

[0038] Obtaining load information of each of the virtual machine nodes;

[0039] Based on the preset election strategy, the load information of each virtual machine node and the distributed lock mechanism, the virtual machine node that grabs the lock is elected as the master node from multiple virtual machine nodes; wherein the preset election strategy indicates that the frequency of grabbing the lock by the virtual machine node whose load is greater than the preset load threshold is lower than the preset frequency.

[0040] In some embodiments of the present disclosure, the electronic device is an iOS device, and the method further includes:

[0041] Convert the device control information into control instructions that can be recognized by XCUITest;

[0042] The device information processing module sends the control instruction to the service agent module through the message queue, so that the service agent module sends the control instruction to the electronic device based on the interface of XCUITest.

[0043] In some embodiments of the present disclosure, the method further includes:

[0044] Obtaining the coordinates of the input operation on the interactive interface;

[0045] Based on the proportional relationship between the size of the interactive interface and the size of the screen of the electronic device, converting the coordinates into actual coordinates;

[0046] The step of generating device control information based on the input operation of the interactive interface includes:

[0047] Device control information is generated based on the actual coordinates and the input operation.

[0048] In a fourth aspect, an embodiment of the present disclosure provides a network server, the network server comprising an intranet penetration server and a Web server, wherein:

[0049] The intranet penetration server is used to establish a communication connection with the intranet penetration client on the edge node server to establish a communication channel between the edge node server and the network server;

[0050] The Web server is used to receive device information transmitted by the service agent module on the edge node server through the communication channel, wherein the device information is device information of the electronic device linked to the edge node server;

[0051] The Web server is used to draw an interactive interface of the electronic device based on the device information, and generate device control information based on input operations of the interactive interface;

[0052] The Web server is further used to transmit the device control information to the service agent module, so that the service agent module sends the device control information to the electronic device, thereby enabling the electronic device to perform corresponding operations based on the device control information.

[0053] In a fifth aspect, an embodiment of the present disclosure provides an electronic device remote control system, including:

[0054] Edge node server, including intranet penetration client and service proxy module;

[0055] Network servers, including intranet penetration servers and Web servers;

[0056] Wherein, the intranet penetration client is used to establish a communication connection with the intranet penetration server to establish a communication channel between the edge node server and the network server;

[0057] The service proxy module is used to obtain device information of the electronic device linked to the edge node server, and transmit the device information to the Web server through the communication channel;

[0058] The Web server is used to draw an interactive interface of the electronic device based on the device information, and generate device control information based on input operations of the interactive interface;

[0059] The service proxy module is further used to receive the device control information sent by the Web server, and send the device control information to the electronic device, so that the electronic device performs corresponding operations based on the device control information.

[0060] In a sixth aspect, an embodiment of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method for remotely controlling an electronic device described in any of the above embodiments.

[0061] In a seventh aspect, an embodiment of the present disclosure provides a computer device, including:

[0062] Processor; and

[0063] Memory for storing computer programs;

[0064] The processor is configured to execute the steps of the electronic device remote control method described in any of the above embodiments by executing the computer program.

[0065] Compared with the prior art, the technical solution provided by the embodiments of the present disclosure has the following advantages:

[0066] In the solution provided by the embodiment of the present disclosure, the edge node server deploys an intranet penetration client and a service proxy module, the intranet penetration client establishes a communication connection with the intranet penetration server of the Internet data center to establish a communication channel between the edge node server and the Internet data center, the service proxy module obtains the device information of the electronic device linked to the edge node server, and transmits the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information; the service proxy module receives device control information from the Web server, and the device control information is generated by the Web server based on the input operation of the interactive interface; the service proxy module sends the device control information to the electronic device, so that the electronic device performs corresponding operations based on the device control information. In this way, the controlled electronic device is connected through the edge node server, and the remote control operation of the electronic device is realized through the system constructed by the edge node server and the Internet data center, without relying on the network of the electronic device itself, avoiding the problem of remote control interruption caused by the accidental shutdown of the electronic device's own network, and is not limited to conditions such as Apple account and local area network, supporting non-local area network access solutions, and improving the versatility and reliability of the electronic device remote control solution to a certain extent. BRIEF DESCRIPTION OF THE DRAWINGS

[0067] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0068] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0069] Figure 1 This is a flow chart of a remote control method for an electronic device according to an embodiment of the present disclosure;

[0070] Figure 2 This is a schematic diagram of the architecture of a remote control system for an electronic device according to an embodiment of the present disclosure;

[0071] Figure 3 This is a flow chart of a remote control method for an electronic device according to another embodiment of the present disclosure;

[0072] Figure 4 This is a flow chart of a remote control method for an electronic device according to another embodiment of the present disclosure;

[0073] Figure 5A schematic diagram of a computer device for implementing a remote control method for an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0074] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features in the embodiments can be combined with each other without conflict.

[0075] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.

[0076] It should be understood that, in the following, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0077] Figure 1 This is a flowchart of a remote control method for an electronic device shown in an embodiment of the present disclosure, which can be applied to, for example, Figure 2 The edge node server shown in the figure may be deployed with an intranet penetration client (Proxy Client) and a service proxy module (Agent). In this embodiment, the functions of the client and the service proxy module may be implemented in software program code. In other embodiments, the functions may also be implemented by one or more hardware. The method may include the following steps:

[0078] Step S101: The intranet penetration client establishes a communication connection with the intranet penetration server of the Internet data center to establish a communication channel between the edge node server and the Internet data center.

[0079] Exemplarily, the Internet Data Center (IDC) can be the computer room of any cloud service provider, or various self-built computer rooms, without limitation. Remote control services can be provided on the IDC, and an intranet penetration server (Proxy Server) can be deployed at the same time. The edge node server can be a hardware facility independent of the IDC deployment, including but not limited to a Mac computer, etc., which can be deployed in an area as needed. The edge node server can be connected to one or more controlled electronic devices such as iOS devices via a data cable. The intranet penetration client (Proxy Client) deployed on the edge node server serves as a bridge between the service proxy module Agent and the remote control service provided online in the IDC. The intranet penetration client can actively establish a communication connection with the intranet penetration server Proxy Server on the IDC through, for example, the Internet, thereby establishing contact with the remote control service provided online.

[0080] Step S102: the service agent module obtains device information of the electronic device linked to the edge node server.

[0081] Exemplarily, the service agent module Agent deployed on the edge node server is used as the core service for electronic device management / control, so as to achieve the purpose of out-of-the-box use. The service agent module Agent is responsible for discovering electronic devices such as iOS devices connected to the edge node server on the edge node server and obtaining device information of the electronic device. The device information may be one or more of, for example, CPU information, memory information, battery power, and device screen size, but is not limited thereto.

[0082] Step S103: the service proxy module transmits the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information.

[0083] Specifically, after the service agent module Agent obtains the device information of the electronic device, it transmits the device information to the IDC through the above communication channel. A Web server can be deployed in the IDC to provide remote control services. When the Web server receives device information such as CPU information, memory information, battery power, device screen size, etc., it can draw the interactive interface of the electronic device based on the device information, for example, drawing a screen area on the Web page to present the screen of the electronic device.

[0084] Step S104: the service proxy module receives device control information from the Web server, where the device control information is generated by the Web server based on input operations of the interactive interface.

[0085] Specifically, as an example, a user can access a web page of a web server based on a browser, and generate device control information by inputting operations in the screen area drawn on the web page, wherein the input operations may include, but are not limited to, any one or more operations such as clicking, sliding, and dragging of a mouse. The device control information may be, for example, shutdown or startup control information, or uninstall application control information, etc., which is not limited thereto. After the web server generates the device control information, it sends it to the service agent module Agent.

[0086] Step S105: the service agent module sends the device control information to the electronic device, so that the electronic device performs corresponding operations based on the device control information.

[0087] Specifically, the service agent module Agent sends the received device control information to an electronic device such as an iOS device, so that the electronic device performs corresponding operations based on the device control information, such as powering on, powering off, uninstalling applications, etc.

[0088] In the above-mentioned embodiments of the present disclosure, the controlled electronic device is connected through the edge node server, and the remote control operation of the electronic device is realized through the system constructed by the edge node server and the Internet data center. There is no need to rely on the network of the electronic device itself, thereby avoiding problems such as remote control interruption caused by accidental shutdown of the electronic device's own network. It is not restricted by conditions such as Apple accounts and local area networks, and supports non-local area network access solutions, which improves the versatility and reliability of electronic device remote control solutions to a certain extent.

[0089] Optionally, in some embodiments of the present disclosure, the electronic device is an iOS device, and accordingly, the step in which the service agent module sends the device control information to the electronic device in step S105 includes: the service agent module sends the device control information to the electronic device through the interface of the UI automation testing framework XCUITest.

[0090] Specifically, XCUITest is a UI automation testing framework provided by Apple. Since the iOS system is a relatively closed operating system, in order to simply and conveniently remotely control iOS devices, the service agent module Agent on the edge node server can send device control information to the iOS device through the XCUITest interface.

[0091] Figure 3 A flowchart of a remote control method for an electronic device according to another embodiment of the present disclosure is shown, which can be applied to, for example, Figure 2The Internet data center IDC shown in the figure may include an intranet penetration server ProxyServer and a Web server. The Web server deployed in the IDC may be used to provide remote control services. For example, a total of M Web servers Server1 to ServerM may be deployed. The number of deployed Web servers M is positively correlated with the number of users. The specific deployment may be based on needs, and this is not limited in this embodiment. The method may include the following steps:

[0092] Step S301: The intranet penetration server establishes a communication connection with the intranet penetration client on the edge node server to establish a communication channel between the edge node server and the Internet data center.

[0093] Exemplarily, the intranet penetration server Proxy Server in the IDC can establish a communication connection with the intranet penetration client Proxy Client on the edge node server, thereby establishing a connection between the service proxy module Agent on the edge node server and the remote control service provided online in the IDC.

[0094] Step S302: the Web server receives device information transmitted by the service proxy module on the edge node server through the communication channel, where the device information is device information of the electronic device linked to the edge node server.

[0095] Specifically, the service agent module Agent deployed on the edge node server serves as a core service for electronic device management / control, and is ready for use out of the box. The service agent module Agent is responsible for discovering electronic devices such as iOS devices that are linked to the edge node server on the edge node server, and obtaining device information of the electronic device. The device information may be, for example, one or more of the CPU, memory, battery power, and device screen size, but is not limited thereto. After the service agent module Agent obtains the device information of the electronic device, it transmits the device information to the Web server in the IDC through the above-mentioned communication channel, that is, the Web server receives the device information transmitted by the service agent module Agent on the edge node server through the communication channel.

[0096] Step S303: the Web server draws an interactive interface of the electronic device based on the device information, and generates device control information based on input operations of the interactive interface.

[0097] Specifically, when the Web server receives device information such as CPU information, memory information, battery power, device screen size, etc., it can present the screen of the electronic device in the screen area drawn on the Web page based on the device information. The user can access the Web page of the Web server based on the browser, and generate device control information through input operations in the screen area drawn on the Web page, where the input operations may include but are not limited to any one or more operations such as clicking, sliding, and dragging of the mouse. The device control information may be, for example, shutdown or startup control information, or uninstall application control information, etc., which is not limited thereto.

[0098] Step S304: the Web server transmits the device control information to the service agent module, so that the service agent module sends the device control information to the electronic device, thereby enabling the electronic device to perform corresponding operations based on the device control information.

[0099] Specifically, the Web server generates device control information and sends it to the service agent module Agent. The service agent module Agent sends the received device control information to the electronic device such as iOS device, so that the electronic device performs corresponding operations based on the device control information, such as powering on, powering off, uninstalling applications, etc.

[0100] In the above-mentioned embodiments of the present disclosure, the controlled electronic device is connected through the edge node server, and the remote control operation of the electronic device is realized through the system constructed by the edge node server and the Internet data center. There is no need to rely on the network of the electronic device itself, thereby avoiding problems such as remote control interruption caused by accidental shutdown of the electronic device's own network. It is not restricted by conditions such as Apple accounts and local area networks, and supports non-local area network access solutions, which improves the versatility and reliability of electronic device remote control solutions to a certain extent.

[0101] Optionally, in some embodiments of the present disclosure, the Internet data center may be configured with a device information processing module Provider, one Provider corresponds to one edge node server, that is, one service agent module Agent, and when there are multiple edge node servers such as Edge1 to Edge1N, that is, there are multiple Agents, multiple corresponding device information processing modules Provider1 to ProviderN may be configured. The method further includes the following steps: the device information processing module Provider receives the device information transmitted by the service agent module Agent through the communication channel, stores the device information in a database, and the Web server obtains the device information from the database. Afterwards, jump to step S303.

[0102] Exemplarily, the database may be a MySQL database, but is not limited thereto. In this embodiment, the device information uploaded by the service agent module Agent is received by the device information processing module Provider, and then stored in the database for use by the upstream service. After that, the Web server obtains the device information from the database and executes subsequent steps. Through the setting of the database, the services on the Provider side and the Web server side can be decoupled, so as to facilitate the deployment and expansion of the Provider or Web server in the IDC, so that the implementation scheme has good horizontal scalability, supports rapid access to edge node servers and electronic devices, and has a wide range of applications.

[0103] Optionally, in some embodiments of the present disclosure, a message queue MQ (Message Queue) may be configured in the Internet data center IDC, and accordingly, the method further includes the following steps:

[0104] Step i): the message queue MQ receives the device information transmitted by the service agent module Agent through the communication channel.

[0105] Specifically, the device information uploaded by the service agent module Agent reaches MQ first.

[0106] Step ii): After the device information processing module obtains the device information from the message queue, it stores the device information in the database.

[0107] Specifically, the device information processing module Provider obtains the device information from the MQ and stores it in the database. After that, the Web server obtains the device information from the database and executes the subsequent steps.

[0108] In this embodiment, by further setting up a message queue, using the message queue as a communication channel between the edge node server and the online remote control service, the device information is collected by the Agent on the edge node server and notified to the online remote control service through the message queue. In this way, it can play a buffering role. The device information collected by the Agent first reaches the MQ, and then the device information processing module Provider obtains the device information from the MQ. In this process, if a new edge node server is added, it is also convenient to expand the capacity of the device information processing module Provider in a timely manner. After the expansion, the new Provider can obtain the device information uploaded by the Agent on the new edge node server from MQ.

[0109] Further optionally, in some embodiments of the present disclosure, the method may further include the following steps:

[0110] Step a): the Web server forwards the device control information to the device information processing module through the message queue.

[0111] Specifically, after generating the device control information, the Web server sends the device control information to the message queue MQ, and the device information processing module Provider obtains the device control information from the MQ.

[0112] Step b): the device information processing module forwards the device control information to the service agent module through the message queue.

[0113] Specifically, the device information processing module Provider sends the acquired device control information to the message queue MQ, and the message queue MQ sends the device control information to the service agent module Agent.

[0114] In this embodiment, the device control information generated by all the user's control operations is sent to the Agent on the edge node server through the message queue, and the Agent sends it to control electronic devices such as iOS devices. The edge node server discovers and uses the MQ service in the IDC through the Proxy Client, and communicates with other services in the IDC through MQ. Through the above implementation scheme, the services on the Provider side and the Web server side are further decoupled, which facilitates the deployment and expansion of the Provider or Web server in the IDC, so that the implementation scheme has good horizontal scalability and supports rapid access to edge node servers and electronic devices.

[0115] Optionally, in order to facilitate capacity expansion deployment, in some embodiments of the present disclosure, the Web server can be a virtual Web server deployed based on a container engine such as Docker. In some embodiments, the device information processing module Provider can be deployed on a container engine such as Docker. The container engine can be understood by referring to the prior art and will not be described here. Based on container technology, the deployment of capacity expansion Provider or Web server can be quickly and easily implemented, so that the horizontal scalability of this implementation scheme is further improved, and faster access to edge node servers and electronic devices is supported.

[0116] Optionally, in some embodiments of the present disclosure, there are multiple edge node servers, and the Internet data center IDC may be configured with multiple virtual machine nodes (not shown), and the method may further include the following steps:

[0117] Step S401: When the service proxy module on each edge node server goes online for the first time, it registers its own service information on the intranet penetration server.

[0118] For example, when edge node servers Edge1 to Edge1N are first online, they register their service information on the intranet penetration server Proxy Server, so that the Proxy Server knows that there are N service proxy modules running, so that the device information processing module Provider can actively discover the edge node servers.

[0119] Step S402: electing a master node from a plurality of virtual machine nodes based on a preset election strategy, and the remaining virtual machine nodes serve as slave nodes, wherein the preset election strategy is related to the load of the virtual machine nodes.

[0120] Exemplarily, the virtual machine node can be deployed on a container engine such as Docker on the IDC, the device information processing module Provider can be a process, each virtual machine node can start one or more Providers, and each Provider corresponds to an edge node server. When the Provider is started for the first time, a master node for starting the Provider will be elected, such as a virtual machine node as the master node based on the load of the virtual machine node such as CPU and / or memory resources, such as a virtual machine node with a small load as the master node, and the remaining virtual machine nodes as slave nodes, and the total number of slave nodes is, for example, P.

[0121] Step S403: the master node obtains the number of service information registered on the intranet penetration server, and allocates a preset number of device information processing modules to be started to each slave node according to the number of service information.

[0122] Exemplarily, the master node may periodically obtain the number N of service information newly registered on the intranet penetration server ProxyServer, such as every 30 seconds, and then allocate a preset number of device information processing modules Provider to be started to P slave nodes based on the number N of service information.

[0123] In one embodiment, the master node performs simple task allocation. For example, the first (P-1) slave nodes are evenly divided into T Provider services, T=floor(P / N), floor() is a floor function, and the Pth slave node obtains T+mod(P / N) Provider services, mod() represents a remainder function. This is only an example and is not limited to this.

[0124] Step S404: Each of the slave nodes starts the preset number of device information processing modules, each of which is used to process device information uploaded by a service agent module on an edge node server.

[0125] Exemplarily, each slave node starts a corresponding number of Provider processes according to the preset number obtained, and establishes a communication channel with MQ. For example, the first (P-1) slave nodes all start T Provider processes, and the T Provider processes establish a communication channel with MQ, and the Pth slave node starts T+mod(P / N) Provider processes and establishes a communication channel with MQ.

[0126] After the Provider process is started, the device information uploaded by the Agent can be obtained from MQ. The device information can carry the device ID and the ID of the edge node server. Based on the node ID of the edge node server, each slave node can specify a Provider process to process the device information uploaded by the Agent on an edge node server corresponding to the specified node ID when starting the Provider process.

[0127] In the solution of this embodiment, by electing a master node, the master node assigns tasks to each slave node, and then each slave node starts a corresponding number of device information processing modules Provider, so that the load of each slave node is as balanced as possible, thereby improving the efficiency and stability of the implementation plan.

[0128] Optionally, in some embodiments of the present disclosure, in step S402, selecting a master node from multiple virtual machine nodes based on a preset election strategy may specifically include the following steps:

[0129] Step 1): Obtain the load information of each virtual machine node.

[0130] Exemplarily, the load information may include but is not limited to CPU information and / or memory information.

[0131] Step 2): Based on the preset election strategy, the load information of each virtual machine node and the distributed lock mechanism, the virtual machine node that grabs the lock is selected from multiple virtual machine nodes as the master node. The preset election strategy indicates that the frequency of grabbing the lock by the virtual machine node with a load greater than a preset load threshold is lower than the preset frequency.

[0132] Exemplarily, the Provider code will deploy multiple virtual machines. In this embodiment, the mechanism of distributed locks can be used to determine the only master node. The node that grabs the lock will become the master node. The preset election strategy indicates that the frequency of lock grabbing of virtual machine nodes with a load greater than the preset load threshold among the virtual machine nodes is lower than the preset frequency, wherein the preset load threshold and the preset frequency can be set according to specific needs and are not limited. When the load of a virtual machine node is greater than the preset load threshold, that is, the load is too large, the frequency of lock grabbing is configured to be lower than the preset frequency, that is, the frequency of lock grabbing becomes lower, so the probability of grabbing the lock is reduced, so that to a certain extent, the virtual machine node with a small load grabs the lock as much as possible, and the load of the master node finally determined is the smallest or relatively small, and then the master node assigns tasks to each slave node.

[0133] In the above implementation scheme of this embodiment, the load of the determined master node is the smallest or relatively small, which can improve the overall processing efficiency when deploying and starting the Provider.

[0134] Optionally, in some embodiments of the present disclosure, when the electronic device is an iOS device, the method may further include the following steps:

[0135] Step c): converting the device control information into control instructions that can be recognized by XCUITest.

[0136] Exemplarily, the Web server will draw the real-time screen of the electronic device, such as the iOS device, on the Web page based on the device information, such as the actual information of the device screen, for example, by using the Canvas tool for drawing. The user can access the Web server to observe the changes of the iOS device screen on the Web page. Then the user can click, slide, drag and other operations on the real-time screen area drawn on the Web page by, for example, using a mouse, just like operating an iOS device, and these operations can generate device control information, such as uninstall application control information.

[0137] In order to realize remote control of iOS devices simply and conveniently, all user operations, i.e. device control information, will be uniformly converted into control instructions that can be recognized by XCUITest.

[0138] Step d): the device information processing module sends the control instruction to the service agent module through the message queue, so that the service agent module sends the control instruction to the electronic device based on the interface of XCUITest.

[0139] Specifically, the control command is first sent to the Web server through Websocket, and the Web server forwards the control command to the Provider through MQ, and the Provider then forwards the control command to the Agent through MQ. After receiving the control command, the Agent selects the corresponding iOS device to execute the control command, thereby achieving the purpose of remotely controlling the iOS device.

[0140] In some cases, the size of the real-time screen area of ​​the iOS device drawn on the Web page may be different from the size of the actual screen area of ​​the iOS device, which may cause the device control information generated by the user's operation of the real-time screen area drawn on the Web page to be inaccurate, thereby reducing the accuracy of the remote control operation device. Therefore, in some embodiments of the present disclosure, the method may also include the following steps:

[0141] Step f): obtaining the coordinates of the input operation on the interactive interface.

[0142] Specifically, the Web server may obtain coordinate information of input operations such as clicks and slides in the real-time screen area of ​​the iOS device drawn by the user on the Web page.

[0143] Step g): based on the proportional relationship between the size of the interactive interface and the size of the screen of the electronic device, converting the coordinates into actual coordinates.

[0144] Exemplarily, the proportional relationship can be pre-configured, or it can be determined by, for example, a web server drawing the real-time screen area of ​​the iOS device on a web page, and then calculating based on the size of the drawn real-time screen area (such as width and length) and the size of the actual screen of the iOS device (such as width and length).

[0145] Specifically, the Web server may convert the coordinate information of the above-mentioned preset operations such as click and slide operations into actual coordinate information based on the above-mentioned proportional relationship.

[0146] Correspondingly, the step of generating device control information based on the input operation of the interactive interface in step S303 may specifically include: generating device control information based on the actual coordinates and the input operation.

[0147] Exemplarily, the Web server generates device control information based on the converted actual coordinate information and preset operations such as click operations. In an example scenario, for example, to uninstall an application A, when a user clicks the virtual button "Uninstall" of application A, the coordinate information (X, Y) of the click operation is obtained, and the coordinate information (X, Y) is converted into actual coordinate information (X', Y') based on the above-mentioned proportional relationship, and then the device control information such as the control information for uninstalling application A in the iOS device is generated based on the actual coordinate information (X', Y') and the click operation of clicking the virtual button "Uninstall", and then the control information for uninstalling application A in the iOS device can be sent to the Agent on the corresponding edge node server, and then sent by the Agent to the corresponding iOS device to perform the operation of uninstalling application A in the iOS device.

[0148] The above scheme of this embodiment makes the device control information generated by the interactive interface operation more accurate, thereby improving the accuracy of the remote control operation device and avoiding erroneous or invalid operations to a certain extent.

[0149] It should be noted that, although the steps of the method in the present disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step for execution, and / or one step may be decomposed into multiple steps for execution, etc. In addition, it is also easy to understand that these steps may be, for example, executed synchronously or asynchronously in multiple modules / processes / threads.

[0150] The present disclosure provides an edge node server, referring to Figure 2 The edge node server Edge1 shown in the figure may include an intranet penetration client Proxy Client and a service proxy module Agent, wherein the intranet penetration client is used to establish a communication connection with the intranet penetration server Proxy Server of the Internet data center IDC, so as to establish a communication channel between the edge node server and the Internet data center. The service proxy module is used to obtain the device information of the electronic device linked to the edge node server; transmit the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information; receive device control information from the Web server, the device control information is generated by the Web server based on the input operation of the interactive interface; send the device control information to the electronic device, so that the electronic device performs corresponding operations based on the device control information.

[0151] In the above-mentioned embodiments of the present disclosure, the controlled electronic device is connected through the edge node server, and the remote control operation of the electronic device is realized through the system constructed by the edge node server and the Internet data center. There is no need to rely on the network of the electronic device itself, thereby avoiding problems such as remote control interruption caused by accidental shutdown of the electronic device's own network. It is not restricted by conditions such as Apple accounts and local area networks, and supports non-local area network access solutions, which improves the versatility and reliability of electronic device remote control solutions to a certain extent.

[0152] In some embodiments of the present disclosure, the electronic device is an iOS device, and the service agent module sends the device control information to the electronic device through an interface of a UI automation test framework XCUITest.

[0153] Optionally, in some embodiments of the present disclosure, the device information may include at least one or more of CPU information, memory information, battery power, and device screen size. In some embodiments, the input operation may include but is not limited to any one or more of click, slide, and drag.

[0154] The present disclosure also provides a network server, referring to Figure 2 As shown in , the network server can specifically be but not limited to an Internet data center IDC, and the network server may include an intranet penetration server Proxy Server and a Web server. Among them, the intranet penetration server is used to establish a communication connection with the intranet penetration client Proxy Client on the edge node server to establish a communication channel between the edge node server and the network server such as the Internet data center IDC. The Web server is used to receive the device information transmitted by the service agent module Agent on the edge node server through the communication channel, and the device information is the device information of the electronic device linked to the edge node server. The Web server is used to draw the interactive interface of the electronic device based on the device information, and generate device control information based on the input operation of the interactive interface. The Web server is also used to transmit the device control information to the service agent module, so that the service agent module sends the device control information to the electronic device, and then the electronic device performs corresponding operations based on the device control information.

[0155] In the above-mentioned embodiments of the present disclosure, the controlled electronic device is connected through the edge node server, and the remote control operation of the electronic device is realized through the system constructed by the edge node server and the Internet data center. There is no need to rely on the network of the electronic device itself, thereby avoiding problems such as remote control interruption caused by accidental shutdown of the electronic device's own network. It is not restricted by conditions such as Apple accounts and local area networks, and supports non-local area network access solutions, which improves the versatility and reliability of electronic device remote control solutions to a certain extent.

[0156] In some embodiments of the present disclosure, the IDC may further include a device information processing module Provider, which is used to receive the device information transmitted by the service proxy module through the communication channel and store the device information in a database. The Web server is also used to obtain the device information from the database.

[0157] In some embodiments of the present disclosure, the Internet data center is configured with a message queue MQ, and the message queue is used to receive the device information transmitted by the service agent module through the communication channel. The device information processing module is also used to store the device information in the database after obtaining the device information from the message queue.

[0158] Alternatively, in some other embodiments of the present disclosure, the Web server is further used to forward the device control information to the device information processing module through the message queue; the device information processing module is further used to forward the device control information to the service agent module through the message queue.

[0159] In some embodiments of the present disclosure, the Web server is a virtual Web server deployed based on a container engine; and / or the device information processing module is deployed on the container engine.

[0160] In some embodiments of the present disclosure, there are multiple edge node servers, and the Internet data center is configured with multiple virtual machine nodes and node selection modules. The intranet penetration server is used to receive the service information of the service agent module on each edge node server when it first goes online. The node selection module is used to elect a master node from multiple virtual machine nodes based on a preset election strategy, and the remaining virtual machine nodes serve as slave nodes. The preset election strategy is related to the load of the virtual machine node. The master node is used to obtain the number of service information registered on the intranet penetration server, and allocate a preset number of device information processing modules to be started to each slave node according to the number of service information. The slave node is used to start a preset number of device information processing modules, each of which is used to process the device information uploaded by the service agent module on an edge node server.

[0161] In some embodiments of the present disclosure, the node selection module is specifically used to: obtain the load information of each of the virtual machine nodes; based on the preset election strategy, the load information of each of the virtual machine nodes and the distributed lock mechanism, elect the virtual machine node that grabs the lock as the master node from multiple virtual machine nodes; wherein the preset election strategy indicates that the frequency of lock grabbing by the virtual machine node whose load is greater than the preset load threshold is lower than the preset frequency.

[0162] Optionally, in some embodiments of the present disclosure, the electronic device is an iOS device, and the center further includes: an information conversion module, used to convert the device control information into control instructions that can be recognized by XCUITest; the device information processing module is also used to send the control instructions to the service agent module through the message queue, so that the service agent module sends the control instructions to the electronic device based on the interface of XCUITest.

[0163] Optionally, in some embodiments of the present disclosure, it also includes: a coordinate acquisition module, used to acquire the coordinates of the input operation on the interactive interface; a coordinate conversion module, used to convert the coordinates into actual coordinates based on the proportional relationship between the size of the interactive interface and the size of the screen of the electronic device; the Web server is also used to generate device control information based on the actual coordinates and the preset operation.

[0164] The specific manner in which each module performs operations in the above-mentioned embodiments and the corresponding technical effects brought about have been described in detail in the embodiments of the method, and will not be elaborated in detail here.

[0165] It should be noted that although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiment of the present disclosure, the features and functions of two or more modules or units described above can be concretized in one module or unit. Conversely, the features and functions of a module or unit described above can be further divided into multiple modules or units for concretization. The components displayed as modules or units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the disclosed scheme. Those of ordinary skill in the art can understand and implement it without paying creative work.

[0166] In a fifth aspect, the present disclosure provides an electronic device remote control system, referring to Figure 2The electronic device remote control system shown in the figure may include an edge node server and a network server, the network server may be used as but not limited to an Internet data center IDC, the edge node server may include an intranet penetration client Proxy Client and a service proxy module Agent, and the network server such as IDC may include an intranet penetration server Proxy Server and a Web server. Wherein, the intranet penetration client is used to establish a communication connection with the intranet penetration server to establish a communication channel between the edge node server and the network server such as an Internet data center. The service proxy module is used to obtain the device information of the electronic device linked to the edge node server, and transmit the device information to the Web server through the communication channel. The Web server is used to draw the interactive interface of the electronic device based on the device information, and generate device control information based on the input operation of the interactive interface. The service proxy module is also used to receive the device control information sent by the Web server, and send the device control information to the electronic device so that the electronic device performs corresponding operations based on the device control information.

[0167] In the above-mentioned embodiments of the present disclosure, the controlled electronic device is connected through the edge node server, and the remote control operation of the electronic device is realized through the system constructed by the edge node server and the Internet data center. There is no need to rely on the network of the electronic device itself, thereby avoiding problems such as remote control interruption caused by accidental shutdown of the electronic device's own network. It is not restricted by conditions such as Apple accounts and local area networks, and supports non-local area network access solutions, which improves the versatility and reliability of electronic device remote control solutions to a certain extent.

[0168] In some embodiments of the present disclosure, a network server such as an Internet data center may further include a device information processing module Provider, which is used to receive device information transmitted by the service proxy module through the communication channel and store the device information in a database. The Web server is also used to obtain the device information from the database.

[0169] In some embodiments of the present disclosure, the Internet data center is configured with a message queue MQ, and the message queue is used to receive the device information transmitted by the service agent module through the communication channel. The device information processing module is also used to store the device information in the database after obtaining the device information from the message queue.

[0170] Alternatively, in some other embodiments of the present disclosure, the Web server is further used to forward the device control information to the device information processing module through the message queue; the device information processing module is further used to forward the device control information to the service agent module through the message queue.

[0171] In some embodiments of the present disclosure, the Web server is a virtual Web server deployed based on a container engine; and / or the device information processing module is deployed on the container engine.

[0172] In some embodiments of the present disclosure, there are multiple edge node servers, and the Internet data center is configured with multiple virtual machine nodes and node selection modules. The intranet penetration server is used to receive the service information of the service agent module on each edge node server when it first goes online. The node selection module is used to elect a master node from multiple virtual machine nodes based on a preset election strategy, and the remaining virtual machine nodes serve as slave nodes. The preset election strategy is related to the load of the virtual machine node. The master node is used to obtain the number of service information registered on the intranet penetration server, and allocate a preset number of device information processing modules to be started to each slave node according to the number of service information. The slave node is used to start a preset number of device information processing modules, each of which is used to process the device information uploaded by the service agent module on an edge node server.

[0173] In some embodiments of the present disclosure, the node selection module is specifically used to: obtain the load information of each of the virtual machine nodes; based on the preset election strategy, the load information of each of the virtual machine nodes and the distributed lock mechanism, elect the virtual machine node that grabs the lock as the master node from multiple virtual machine nodes; wherein the preset election strategy indicates that the frequency of lock grabbing by the virtual machine node whose load is greater than the preset load threshold is lower than the preset frequency.

[0174] Optionally, in some embodiments of the present disclosure, the electronic device is an iOS device, and the Internet data center further includes: an information conversion module, used to convert the device control information into control instructions that can be recognized by XCUITest; the device information processing module is also used to send the control instructions to the service agent module through the message queue, so that the service agent module sends the control instructions to the electronic device based on the interface of XCUITest.

[0175] Optionally, in some embodiments of the present disclosure, the system further includes: a coordinate acquisition module, used to acquire the coordinates of the input operation on the interactive interface; a coordinate conversion module, used to convert the coordinates into actual coordinates based on the proportional relationship between the size of the interactive interface and the size of the screen of the electronic device; the Web server is also used to generate device control information based on the actual coordinates and the preset operation.

[0176] The specific manner in which each module performs operations in the above-mentioned embodiments and the corresponding technical effects brought about have been described in detail in the embodiments of the method, and will not be elaborated in detail here.

[0177] The embodiments of the present disclosure further provide a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the steps of the electronic device remote control method described in any one of the above embodiments are implemented.

[0178] Exemplarily, the readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.

[0179] The computer readable storage medium may include a data signal propagated in a baseband or as part of a carrier wave, wherein a readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. The readable storage medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by an instruction execution system, an apparatus, or a device or used in combination with it. The program code contained on the readable storage medium may be transmitted with any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the above.

[0180] like Figure 5 As shown in , the embodiment of the present disclosure further provides a computer device 50, including a processor 501 and a memory 502, the memory 502 is used to store a computer program. The processor 501 is configured to execute the steps of the electronic device remote control method described in any of the above embodiments by executing the computer program.

[0181] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0182] The above description is only a specific embodiment of the present disclosure, so that those skilled in the art can understand or implement the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to the embodiments described herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A remote control method for an electronic device, characterized in that: Applied to an edge node server, on which an intranet penetration client and service proxy module are deployed, the method includes: The intranet penetration client establishes a communication connection with the intranet penetration server of the Internet data center to establish a communication channel between the edge node server and the Internet data center; The service agent module obtains device information of an electronic device linked to the edge node server, wherein the electronic device is an iOS device; The service proxy module transmits the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information; The service proxy module receives device control information from the Web server, where the device control information is generated by the Web server based on input operations on the interactive interface; The service agent module sends the device control information to the electronic device through the interface of the UI automation test framework XCUITest, so that the electronic device performs corresponding operations based on the device control information.

2. The remote control method according to claim 1, characterized in that: The device information includes one or more of CPU information, memory information, battery power, and device screen size; and / or the input operation includes one or more of clicking, sliding, and dragging.

3. An edge node server, characterized in that: Including intranet penetration client and service proxy module: The intranet penetration client is used to establish a communication connection with the intranet penetration server of the Internet data center to establish a communication channel between the edge node server and the Internet data center; The service proxy module is used to obtain device information of the electronic device linked to the edge node server; transmit the device information to the Internet data center through the communication channel, so that the Web server of the Internet data center draws the interactive interface of the electronic device based on the device information; receive device control information from the Web server, the device control information is generated by the Web server based on the input operation of the interactive interface; The device control information is sent to the electronic device through the interface of the UI automation test framework XCUITest, so that the electronic device performs corresponding operations based on the device control information, and the electronic device is an iOS device.

4. A remote control method for an electronic device, characterized in that: Applied to an Internet data center, the Internet data center includes an intranet penetration server and a Web server, and the method includes: The intranet penetration server establishes a communication connection with the intranet penetration client on the edge node server to establish a communication channel between the edge node server and the Internet data center; The Web server receives device information transmitted by the service proxy module on the edge node server through the communication channel, wherein the device information is device information of an electronic device linked to the edge node server, and the electronic device is an iOS device; The Web server draws an interactive interface of the electronic device based on the device information, and generates device control information based on input operations on the interactive interface; The Web server transmits the device control information to the service agent module, so that the service agent module sends the device control information to the electronic device through the interface of the UI automation test framework XCUITest, thereby enabling the electronic device to perform corresponding operations based on the device control information.

5. The remote control method according to claim 4, characterized in that: The Internet data center is equipped with a device information processing module, and the method further includes: The device information processing module receives the device information transmitted by the service agent module through the communication channel, and stores the device information in a database; The Web server obtains the device information from the database.

6. The remote control method according to claim 5, characterized in that: The Internet data center is configured with a message queue, and the method further includes: The message queue receives the device information transmitted by the service agent module through the communication channel; After the device information processing module obtains the device information from the message queue, the device information is stored in the database; Alternatively, the Web server forwards the device control information to the device information processing module through the message queue; The device information processing module forwards the device control information to the service agent module through the message queue.

7. The remote control method according to claim 5, characterized in that: The Web server is a virtual Web server deployed based on a container engine; and / or the device information processing module is deployed on the container engine.

8. The remote control method according to claim 7, characterized in that: There are multiple edge node servers, and the Internet data center is configured with multiple virtual machine nodes. The method further includes: When the service proxy module on each edge node server first goes online, it registers its own service information on the intranet penetration server; Selecting a master node from multiple virtual machine nodes based on a preset election strategy, and using the remaining virtual machine nodes as slave nodes, wherein the preset election strategy is related to the load of the virtual machine nodes; The master node obtains the number of service information registered on the intranet penetration server, and allocates a preset number of device information processing modules to be started to each slave node according to the number of service information; Each of the slave nodes starts the preset number of device information processing modules, and each of the device information processing modules is used to process the device information uploaded by the service agent module on an edge node server.

9. The remote control method according to claim 8, characterized in that: The step of selecting a master node from multiple virtual machine nodes based on a preset election strategy includes: Obtaining load information of each of the virtual machine nodes; Based on the preset election strategy, the load information of each virtual machine node and the distributed lock mechanism, the virtual machine node that grabs the lock is elected as the master node from multiple virtual machine nodes; wherein the preset election strategy indicates that the frequency of grabbing the lock by the virtual machine node whose load is greater than the preset load threshold is lower than the preset frequency.

10. The remote control method according to claim 6, characterized in that: The method further comprises: Convert the device control information into control instructions that can be recognized by XCUITest; The device information processing module sends the control instruction to the service agent module through the message queue, so that the service agent module sends the control instruction to the electronic device based on the interface of XCUITest.

11. The remote control method according to any one of claims 4 to 6, characterized in that: The method further comprises: Obtaining the coordinates of the input operation on the interactive interface; Based on the proportional relationship between the size of the interactive interface and the size of the screen of the electronic device, converting the coordinates into actual coordinates; The step of generating device control information based on the input operation of the interactive interface includes: Device control information is generated based on the actual coordinates and the input operation.

12. A network server, characterized in that: The network server includes an intranet penetration server and a Web server, wherein: The intranet penetration server is used to establish a communication connection with the intranet penetration client on the edge node server to establish a communication channel between the edge node server and the network server; The Web server is used to receive device information transmitted by the service proxy module on the edge node server through the communication channel, wherein the device information is device information of an electronic device linked to the edge node server, and the electronic device is an iOS device; The Web server is used to draw an interactive interface of the electronic device based on the device information, and generate device control information based on input operations of the interactive interface; The Web server is also used to transmit the device control information to the service agent module, so that the service agent module sends the device control information to the electronic device through the interface of the UI automation test framework XCUITest, thereby enabling the electronic device to perform corresponding operations based on the device control information.

13. An electronic equipment remote control system, characterized in that: include: Edge node server, including intranet penetration client and service proxy module; Network servers, including intranet penetration servers and Web servers; Wherein, the intranet penetration client is used to establish a communication connection with the intranet penetration server to establish a communication channel between the edge node server and the network server; The service proxy module is used to obtain device information of an electronic device linked to the edge node server; transmit the device information to the Web server through the communication channel, and the electronic device is an iOS device; The Web server is used to draw an interactive interface of the electronic device based on the device information, and generate device control information based on input operations of the interactive interface; The service agent module is also used to receive the device control information sent by the Web server, and send the device control information to the electronic device through the interface of the UI automation test framework XCUITest, so that the electronic device performs corresponding operations based on the device control information.

14. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the computer program implements the steps of the electronic device remote control method according to any one of claims 1 to 2, or implements the steps of the electronic device remote control method according to any one of claims 4 to 11.

15. A computer device, characterized in that: include: processor; as well as Memory for storing computer programs; The processor is configured to implement the steps of the electronic device remote control method according to any one of claims 1 to 2, or implement the steps of the electronic device remote control method according to any one of claims 4 to 11, by executing the computer program.

Citation Information

Patent Citations

  • IOS intelligent terminal remote real machine debugging system and method based on cloud service

    CN109634856A

  • Control method, device and system

    CN111629016A

  • Remote control system and method, medium and computing device

    CN111756855A

  • IOS equipment testing method, device and system, storage medium and computer equipment

    CN112799891A