Cloud mobile phone scheduling method, device, equipment and storage medium based on user requests

By introducing a cloud mobile phone scheduling method based on user requests in cloud computing, using the scheduling center to communicate with the PaaS architecture, determining the target computer room and the target cloud mobile phone, and building a streaming service, the problems of cloud mobile phone scheduling security and stability when problems arise in the PaaS platform are solved, and more efficient and reliable cloud mobile phone scheduling is achieved.

CN118118556BActive Publication Date: 2025-05-30BEIJING BAIDU NETCOM SCI & TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410276519.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-11
Publication Date
2025-05-30
Estimated Expiration
2044-03-11

AI Technical Summary

Technical Problem

In cloud computing, when the PaaS platform manages cloud mobile phones in multiple computer rooms, if there is a problem with PaaS, it will cause the connection between the computer room and PaaS to be interrupted, affecting the security and stability of cloud mobile phone scheduling.

Method used

The cloud mobile phone scheduling method based on user requests is adopted, and the scheduling center communicates with the PaaS architecture to determine the target computer room and the target cloud mobile phone, and a streaming service between the target cloud mobile phone and the client is built to realize remote control of the cloud mobile phone.

Benefits of technology

It improves the security and stability of cloud mobile phone scheduling, avoids service avalanche caused by single-machine room failure, and reduces the impact of network jitter on services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118118556B_ABST
    Figure CN118118556B_ABST
Patent Text Reader

Abstract

The present disclosure provides a cloud phone scheduling method, device, equipment and storage medium based on user requests, which relates to the field of computer technology, especially the field of cloud computing. The method is applied to the PaaS architecture corresponding to the target computer room, and the target computer room is one of multiple computer rooms, and each PaaS architecture corresponds to each computer room, and multiple cloud phones are included in the computer room; the method includes: receiving a service request sent by a scheduling center; the scheduling center communicates with the PaaS architecture, the service request is sent by the scheduling center, and the service request is sent to the PaaS architecture corresponding to the target computer room after determining the target computer room from a preset multiple computer rooms in response to the service request sent by the user through the client; the service request is used to request remote control of the cloud phone; determining a target cloud phone from multiple cloud phones in the target computer room according to the service request; constructing a streaming service between the target cloud phone and the client; the streaming service is used to remotely control the target cloud phone.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of cloud computing in the field of computers, and particularly relates to a cloud phone scheduling method, device, equipment, and storage medium based on user requests. Background Art

[0002] PaaS (Platform as a Service) is applied in cloud computing technology and can manage multiple cloud phones in a computer room. A cloud phone is a device configured in the computer room. PaaS can provide services such as computer room management, device management, device status monitoring, task scheduling, and device connection.

[0003] When managing multiple cloud phones in multiple computer rooms through PaaS, if there is a problem with PaaS, the connection between PaaS and each computer room will be cut off, resulting in the inability to schedule the cloud phones in the computer room, making the security and stability of the scheduling poor. Summary of the Invention

[0004] The present disclosure provides a cloud phone scheduling method, device, equipment, and storage medium based on user requests.

[0005] According to a first aspect of the present disclosure, there is provided a cloud phone scheduling based on user requests. The method is applied to a Platform as a Service (PaaS) architecture corresponding to a target computer room. The target computer room is one of a preset plurality of computer rooms, and each PaaS architecture corresponds to each computer room. The computer room includes a plurality of cloud phones. The method includes:

[0006] Receiving a service request sent by a scheduling center; wherein, the scheduling center communicates with the PaaS architecture. The service request is sent by the scheduling center and is sent to the PaaS architecture corresponding to the target computer room after determining the target computer room from a preset plurality of computer rooms in response to a service request sent by a user through a client. The service request is used to request remote control of the cloud phone.

[0007] Determining a target cloud phone from the plurality of cloud phones in the target computer room according to the service request.

[0008] Constructing a push stream service between the target cloud phone and the client; wherein, the push stream service is used to remotely control the target cloud phone.

[0009] According to a second aspect of the present disclosure, there is provided a cloud phone scheduling method applied to a scheduling center. The scheduling center communicates with a Platform as a Service (PaaS) architecture. Each PaaS architecture corresponds to each computer room. The computer room includes a plurality of cloud phones. The method includes:

[0010] In response to a service request sent by a user through a client, determine a target computer room from a plurality of preset computer rooms; wherein, the service request is used to request remote control of a cloud phone.

[0011] Send the service request to the PaaS architecture corresponding to the target computer room; wherein, the service request is used to indicate determining a target cloud phone from a plurality of cloud phones in the target computer room and constructing a streaming service between the target cloud phone and the client, and the streaming service is used to remotely control the target cloud phone.

[0012] According to a third aspect of the present disclosure, there is provided a cloud phone scheduling device based on a user request. The device is applied to a platform as a service (PaaS) architecture corresponding to a target computer room. The target computer room is one of a plurality of preset computer rooms, and each PaaS architecture corresponds to each computer room. The computer room includes a plurality of cloud phones. The device includes:

[0013] A request receiving unit, configured to receive a service request sent by a scheduling center; wherein, the scheduling center communicates with the PaaS architecture, the service request is sent by the scheduling center, and the service request is sent to the PaaS architecture corresponding to the target computer room after determining the target computer room from a plurality of preset computer rooms in response to a service request sent by a user through a client; the service request is used to request remote control of a cloud phone.

[0014] A cloud phone determining unit, configured to determine a target cloud phone from a plurality of cloud phones in the target computer room according to the service request.

[0015] A streaming constructing unit, configured to construct a streaming service between the target cloud phone and the client; wherein, the streaming service is used to remotely control the target cloud phone.

[0016] According to a fourth aspect of the present disclosure, there is provided a cloud phone scheduling device based on a user request. The device is applied to a scheduling center. The scheduling center communicates with a platform as a service (PaaS) architecture. Each PaaS architecture corresponds to each computer room. The computer room includes a plurality of cloud phones. The device includes:

[0017] A computer room determining unit, configured to determine a target computer room from a plurality of preset computer rooms in response to a service request sent by a user through a client; wherein, the service request is used to request remote control of a cloud phone.

[0018] A request sending unit, configured to send the service request to the PaaS architecture corresponding to the target computer room; wherein, the service request is used to indicate determining a target cloud phone from multiple cloud phones in the target computer room, and constructing a streaming service between the target cloud phone and the client, and the streaming service is used to remotely control the target cloud phone.

[0019] According to a fifth aspect of the present disclosure, there is provided an electronic device, including:

[0020] At least one processor; and

[0021] A memory communicatively connected to the at least one processor;

[0022] The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the methods described in the first aspect and the second aspect.

[0023] According to a sixth aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions, and the computer instructions are used to cause the computer to execute the methods described in the first aspect and the second aspect.

[0024] According to a seventh aspect of the present disclosure, there is provided a computer program product, the computer program product including: a computer program, which when executed by a processor implements the methods described in the first aspect and the second aspect.

[0025] According to the technology of the present disclosure, the security and stability of cloud phone scheduling are improved.

[0026] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] The drawings are used to better understand the solution and do not constitute a limitation to the present disclosure. Among them:

[0028] Figure 1 is an architecture diagram between PaaS and a computer room in the related art;

[0029] Figure 2 is a flowchart of a cloud phone scheduling method based on a user request provided according to an embodiment of the present disclosure;

[0030] Figure 3 is an architecture diagram between a scheduling center and PaaS provided according to an embodiment of the present disclosure;

[0031] Figure 4It is a schematic flowchart of a cloud mobile phone scheduling method based on user requests provided according to an embodiment of the present disclosure;

[0032] Figure 5 It is a schematic flowchart of a cloud mobile phone scheduling method based on user requests provided according to an embodiment of the present disclosure;

[0033] Figure 6 It is a schematic flowchart of a cloud mobile phone scheduling method based on user requests provided according to an embodiment of the present disclosure;

[0034] Figure 7 It is a structural block diagram of a cloud mobile phone scheduling device based on user requests provided according to an embodiment of the present disclosure;

[0035] Figure 8 It is a structural block diagram of a cloud mobile phone scheduling device based on user requests provided according to an embodiment of the present disclosure;

[0036] Figure 9 It is a structural block diagram of a cloud mobile phone scheduling device based on user requests provided according to an embodiment of the present disclosure;

[0037] Figure 10 It is a block diagram of an electronic device for implementing the cloud mobile phone scheduling method based on user requests according to an embodiment of the present disclosure;

[0038] Figure 11 It is a block diagram of an electronic device for implementing the cloud mobile phone scheduling method based on user requests according to an embodiment of the present disclosure. Detailed implementation manners

[0039] The following describes exemplary embodiments of the present disclosure with reference to the accompanying drawings. Various details of the embodiments of the present disclosure are included to assist understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted below.

[0040] The PaaS platform can provide services in different business scenarios. For example, it can provide services in scenarios such as cloud gaming, web search, and marketing. PaaS can provide services such as computer room management, device management, virtualization configuration management, control node load balancing, device connection authentication, and device status monitoring for the computer room downward, and can provide basic capabilities such as unified instance management, instance operation, task scheduling, standardized services, and device connection for the business layer of the client upward.

[0041] Currently, when scheduling cloud mobile phones, the PaaS used is a centralized deployment architecture that centralizes all computer rooms. Figure 1It is an architecture diagram between PaaS and computer rooms in the related art. Figure 1 The centralized architecture is adopted in Figure 1 . PaaS is a centralized service as the center and is connected to each computer room. When a user sends a service request through the client, the service request is distributed to the cloud phones in one of the computer rooms through the central PaaS, and then the service request is processed through the cloud phones. However, this centralized architecture cannot solve the problem of traffic bursts caused by network jitter. The sudden increase in traffic due to a single computer room failure may cause the entire service to avalanche, and the security and stability of the architecture cannot be guaranteed. Even if the main and standby services are set for the central PaaS, it will also lead to low resource utilization. One set of services in the main and standby services will be idle, and the domain name resolution takes a long time to take effect during the main and standby switchover, and the scheduling efficiency of the cloud phones is low.

[0042] The present disclosure provides a cloud phone scheduling method, device, equipment, and storage medium based on user requests, which are applied to the field of cloud computing in the computer field to improve the security and stability of scheduling.

[0043] It should be noted that the data in this embodiment is not for a specific user and does not reflect the personal information of a specific user. It should be noted that the data in this embodiment comes from a public data set.

[0044] In the technical solution of the present disclosure, the processing of collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved all comply with the provisions of relevant laws and regulations and do not violate public order and good customs.

[0045] To enable readers to more deeply understand the implementation principle of the present disclosure, the following Figures 2 - 11 is used to further refine the embodiments.

[0046] Figure 2 It is a schematic flowchart of a cloud phone scheduling method based on user requests provided according to an embodiment of the present disclosure. This method is applied to the PaaS architecture corresponding to the target computer room. The target computer room is one of a preset plurality of computer rooms, and each PaaS architecture corresponds to each computer room. Each computer room includes a plurality of cloud phones. This method can be executed by a cloud phone scheduling device based on user requests. As Figure 2 shown, this method includes the following steps:

[0047] S201. Receive a service request sent by the scheduling center; wherein, the scheduling center communicates with the PaaS architecture, the service request is sent by the scheduling center, and the service request is sent to the PaaS architecture corresponding to the target computer room after determining the target computer room from a preset plurality of computer rooms in response to the service request sent by the user through the client; the service request is used to request remote control of the cloud phone.

[0048] Exemplarily, in the connection relationship between PaaS and the computer room, the centralized PaaS service in the center is removed, and a separate PaaS architecture is set up in each computer room. That is, each computer room can manage the cloud phones within its own internal network. A new scheduling center is added, and the scheduling center can communicate with each PaaS architecture.

[0049] When a user needs to use a cloud phone, a service request can be sent through the client. The service request indicates that the user requests to remotely control the cloud phone. For example, the user wants to access the cloud phone, turn off the cloud phone, etc. The scheduling center responds to the service request sent by the user through the client and determines the target computer room from a preset multiple computer rooms. For example, the user's IP (Internet Protocol) address can be obtained from the service request, and the geographical locations of each computer room are determined, and the computer room closest to the IP address is selected as the target computer room. The PaaS architecture corresponding to the target computer room is determined, and the service request is sent to the PaaS architecture corresponding to the target computer room, and the PaaS architecture corresponding to the target computer room performs the scheduling of the cloud phone. That is, the PaaS architecture corresponding to the target computer room receives the service request sent by the scheduling center, allocates a cloud phone from the target computer room for the client to use to process the user's service request.

[0050] In this embodiment, the scheduling center responds to the service request sent by the user through the client and determines the target computer room from a preset multiple computer rooms, which can be refined as: the scheduling center responds to the service request sent by the user through the client, determines the IP address corresponding to the service request, and determines the target computer room from a preset multiple computer rooms according to the IP address. For example, the service request may include the IP address, that is, the IP address can be obtained from the service request. The IP address can represent the current geographical location of the client.

[0051] Determining the target computer room from a preset multiple computer rooms according to the IP address can be refined as: the location information of each computer room is pre-stored. After obtaining the IP address, the location information of each computer room is obtained. The location information can characterize the geographical location where the computer room is located. According to the IP address and the location information of each computer room, the target computer room is determined from a preset multiple computer rooms. For example, the distance between the client and the computer room can be determined according to the IP address and the location information of the computer room. According to the size of the distance, the target computer room is determined from a preset multiple computer rooms. For example, the distances can be sorted by size, and the computer room with the smallest distance is determined as the target computer room.

[0052] When determining the target computer room from a preset multiple computer rooms according to the IP address, the current working status of each computer room can also be determined. The working status includes an available status and an unavailable status. The computer rooms currently in the available status are determined as candidate computer rooms, and the target computer room is determined from the candidate computer rooms according to the IP address. For example, the location information of the candidate computer rooms can be determined, and according to the IP address and the location information of the candidate computer rooms, the candidate computer room closest to the client is selected as the target computer room.

[0053] When sending a service request to the PaaS architecture corresponding to the target computer room, a short connection can be established between the scheduling center and the PaaS architecture corresponding to the target computer room, and through this short connection, the service request is sent to the PaaS architecture corresponding to the target computer room.

[0054] After receiving the service request, the PaaS architecture corresponding to the target computer room can send feedback information to the scheduling center, indicating that it has successfully received the service request. If the scheduling center does not receive the feedback information sent by the PaaS architecture corresponding to the target computer room within the preset time period, it is determined that the service request sent to the PaaS fails, and the number of times the scheduling center fails to send the service request to this PaaS architecture is recorded. A threshold number of times is preset in advance. If it is determined that the number of failures reaches the preset threshold number of times, the working status of the target computer room is updated to the unavailable status, that is, it is necessary to re-determine the target computer room. The new target computer room can be re-determined from multiple computer rooms according to the IP address. For example, the computer room second closest to the client can be determined as the target computer room.

[0055] S202. Determine the target cloud phone from multiple cloud phones in the target computer room according to the service request.

[0056] Exemplarily, multiple cloud phones are set under each computer room, and the client can remotely use one of the cloud phones, that is, it is necessary to determine one cloud phone from multiple cloud phones, and the determined cloud phone is used as the target cloud phone. The PaaS architecture corresponding to the target computer room determines the target cloud phone.

[0057] For example, the PaaS architecture corresponding to the target computer room can obtain the current working status of each cloud phone in the target computer room. The working status of the cloud phone can include an idle status and an occupied status. The occupied status means that the cloud phone is currently performing a streaming service and cannot be used by other clients anymore. The idle status means that the cloud phone can be used by the client. The cloud phones in the idle status are determined, and the target cloud phone is determined from the cloud phones in the idle status. For example, an idle cloud phone can be randomly selected as the target cloud phone, or the target cloud phone can be determined in sequence according to the number of the cloud phone.

[0058] In this embodiment, the PaaS architecture corresponding to the target computer room can determine the target cloud phone according to the service request. The service request may include information such as the model and identification of the client, and check whether one or more cloud phones in the target computer room have been used by the client, and determine the found cloud phone as the target cloud phone. It can be searched according to the historical usage logs of the cloud phone, and the historical usage logs record the usage of the cloud phone in the historical time period. For example, the historical usage logs may include the client model and identification that have ever established a streaming service with the cloud phone, etc.

[0059] S203. Build a streaming service between the target cloud phone and the client; wherein, the streaming service is used for remotely controlling the target cloud phone.

[0060] Exemplarily, after determining the target cloud phone, build a streaming service between the target cloud phone and the client, and the streaming service can be used for the client to remotely control the target cloud phone. That is, the client can control the target cloud phone through the streaming service and perform operations such as accessing the target cloud phone. In this embodiment, the construction and use of the streaming service are not specifically limited.

[0061] In this embodiment, for each computer room under the dispatching center, the version upgrade of the PaaS architecture corresponding to the computer room can be carried out in the gray-scale upgrade mode. Gray-scale upgrade means that when the PaaS version of the computer room needs to be updated, first determine whether the PaaS version corresponding to the computer room is an old version. If so, update the PaaS corresponding to one computer room. Run the updated PaaS for a period of time. If there is no problem during the trial operation period, then update the versions of the PaaS architectures corresponding to other computer rooms.

[0062] Figure 3 This is the architecture diagram between the dispatching center and PaaS provided by the embodiments of the present disclosure. The dispatching center can communicate with the PaaS of the computer room in Area A or the PaaS of the computer room in Area B. Figure 3 In, the target computer room is the computer room in Area A, that is, the short connection between the dispatching center and the PaaS of the computer room in Area B is disconnected. The PaaS can perform operations such as cloud phone allocation, streaming service, and request processing. Cloud phone allocation is to determine the target cloud phone, the streaming service is to realize the control of the target cloud phone by the client, and request processing is to process the instructions in the service request.

[0063] In this embodiment, the method further includes: obtaining all the identification information and operation information recorded in each cloud phone of the target computer room; and sending all the identification information and operation information recorded in each cloud phone of the target computer room to the dispatching center for storage according to the preset communication protocol.

[0064] Specifically, each cloud phone in the computer room can record its own usage situation in real time. For example, the cloud phone can record the identification information of the client connected to its push stream service and the operation information of the client on its own cloud phone, etc. These information recorded by the cloud phone can be determined as the historical usage log of the cloud phone.

[0065] The PaaS architecture corresponding to the target computer room can obtain the historical usage logs recorded in each cloud phone in the target computer room in real time or at regular intervals, that is, it can obtain all the identification information and operation information recorded by all cloud phones in the target computer room. A database can be set up in the PaaS architecture to store the historical usage logs. A communication protocol between the PaaS architecture and the scheduling center can also be preset. For example, the preset communication protocol is HTTP (Hypertext Transfer Protocol). According to the preset communication protocol, the PaaS architecture can send all the obtained identification information and operation information to the scheduling center for storage. That is, the service-related data in the cloud phone is written back to the scheduling center through HTTP, and a main database and a backup database, etc., can be set up in the scheduling center to store the information transmitted by the PaaS architecture.

[0066] The beneficial effect of such a setting is that by writing back the information in the cloud phone to the scheduling center through HTTP, the storage and backup of the information are realized, the loss of information caused by the failure of the cloud phone is avoided, and the reliability of the entire architecture is improved.

[0067] In the embodiment of the present disclosure, a new scheduling center is added, and each computer room corresponds to its own PaaS architecture. The scheduling center is responsible for receiving the service requests of users, determining the target computer room from multiple computer rooms, and sending the service requests of users to the PaaS architecture of the target computer room. After receiving the service request, the PaaS architecture determines the target cloud phone according to the service request, and the determined target cloud phone is the cloud phone in the target computer room, so that the user can implement the push stream service for the target cloud phone through the client. By removing the centralized PaaS service in the center, the problem of the entire service avalanche caused by the sudden increase in traffic due to the failure of a single computer room is solved, and the PaaS architecture is called within the intranet of the computer room, and the network jitter between different computer rooms is hardly felt. The PaaS architecture corresponding to the target computer room is used to process the relevant requests and services inside the target computer room, and the pressure is distributed to the PaaS of each computer room, improving the security and stability of cloud phone scheduling.

[0068] Figure 4 It is a schematic flowchart of a cloud phone scheduling method based on user requests provided by the embodiment of the present disclosure.

[0069] In this embodiment, determining the target cloud phone from multiple cloud phones in the target computer room according to the service request can be refined as follows: determining the identification information of the client from the service request; and determining the historical cloud phone from multiple cloud phones in the target computer room according to the identification information of the client. The identification information of the client and the operation information of the client within a preset historical time period are stored in the historical cloud phone, and the operation information represents the operation progress of the client remotely controlling the historical cloud phone within the preset historical time period. If the current working state of the historical cloud phone is the idle state, then determine the historical cloud phone as the target cloud phone.

[0070] As Figure 4 shown, the method includes the following steps:

[0071] S401. Receive the service request sent by the dispatching center. The dispatching center communicates with the PaaS architecture. The service request is sent by the dispatching center, and the service request is sent to the PaaS architecture corresponding to the target computer room after determining the target computer room from a preset multiple computer rooms in response to the service request sent by the user through the client. The service request is used to request remote control of the cloud phone.

[0072] Exemplarily, this step can refer to the above step S201 and will not be elaborated.

[0073] S402. Determine the identification information of the client from the service request.

[0074] Exemplarily, the client sends a service request, and the service request may include the identification information of the client. Each client corresponds to a unique identification information, and the identification information can be used to represent the client. After receiving the service request, the PaaS architecture corresponding to the target computer room can directly obtain the identification information of the client from the service request.

[0075] S403. Determine the historical cloud phone from multiple cloud phones in the target computer room according to the identification information of the client. The identification information of the client and the operation information of the client within a preset historical time period are stored in the historical cloud phone, and the operation information represents the operation progress of the client remotely controlling the historical cloud phone within the preset historical time period.

[0076] Exemplarily, the target computer room includes multiple cloud phones. After obtaining the identification information of the client, one or more cloud phones can be determined from multiple cloud phones in the target computer room according to the identification information of the client as the historical cloud phones. The identification information of the client and the operation information of the client within a preset historical time period are stored in the historical cloud phone, and the operation information represents the operation progress of the client remotely controlling the historical cloud phone within the preset historical time period. For example, when the client plays a game on a certain cloud phone, the progress of the game can be recorded on the cloud phone.

[0077] That is to say, when a push stream service is performed between a client and a cloud phone, the cloud phone can record the identification information of the client and the operations performed by the client on the cloud phone. When determining the historical cloud phone, it is judged whether the identification information of the client corresponding to the service request is recorded in each cloud phone in the target computer room. If so, the cloud phone is determined as the historical cloud phone, and the operation information performed by the client is also recorded in the historical cloud phone; if not, it is determined that there is no historical cloud phone in the target computer room.

[0078] If there is no historical cloud phone in the target computer room, a cloud phone in the idle state can be randomly selected from the target computer room as the target cloud phone; or the target cloud phone can be determined according to the preset number sequence of the cloud phones.

[0079] In this embodiment, the method further includes: performing an authentication process on the identification information of the client according to the preset authentication rule; if it is determined that the identification information of the client passes the authentication, the historical cloud phone is determined from multiple cloud phones in the target computer room according to the identification information of the client.

[0080] Specifically, an authentication rule is preset. The authentication rule is used to authenticate the client and determine whether the client has the permission to control the cloud phone. The authentication can be performed according to the identification information of the client to obtain an authentication result. For example, a standard format of the identification information is set in the authentication rule, and it is judged whether the format of the identification information of the client is the preset standard format. If so, it is determined that the client passes the authentication; if not, it is determined that the client fails the authentication.

[0081] If it is determined that the authentication passes, the historical cloud phone can be determined from multiple cloud phones in the target computer room according to the identification information of the client; if it is determined that the authentication fails, the subsequent steps do not need to be executed, and the information of the authentication failure can be fed back to the scheduling center, and the scheduling center feeds back the information of the authentication failure to the client.

[0082] The beneficial effect of such a setting is that by authenticating the client, the information security of the user is guaranteed, and the security of the cloud phone scheduling is improved.

[0083] In this embodiment, performing an authentication process on the identification information of the client according to the preset authentication rule includes: obtaining the preset white list of identification information; wherein, the preset white list of identification information includes the legally registered identification information; if the identification information of the client is in the preset white list of identification information, it is determined that the identification information of the client passes the authentication.

[0084] Specifically, a whitelist of identification information is preset, and the whitelist of identification information includes legally registered identification information. When performing authentication, obtain the preset whitelist of identification information, and determine whether the identification information of the client is in the preset whitelist of identification information. If so, determine that the identification information of the client is legal identification information, that is, the authentication passes; if not, determine that the authentication of the identification information of the client fails.

[0085] It is also possible to preset a blacklist of identification information, and the blacklist of identification information includes identification information that is not allowed to perform push stream services. Determine whether the identification information of the client is in the preset blacklist of identification information. If so, determine that the authentication of the identification information of the client fails; if not, determine that the authentication of the identification information of the client passes.

[0086] The beneficial effect of such a setting is that it is possible to determine whether the identification information of the client is legal according to the preset whitelist of identification information, avoid the random scheduling of cloud phones, and improve the security and reliability of scheduling.

[0087] In this embodiment, according to the preset authentication rule, the identification information of the client is authenticated, including: obtaining the client online time corresponding to the identification information of the client; where the client online time represents the time length from when the client sends a service request to the current moment; if the client online time is less than the preset duration threshold, determine that the authentication of the identification information of the client passes.

[0088] Specifically, the service request may include the time when the service request is sent. When performing authentication, the time when the service request is sent can be obtained from the service request, and the client online time is determined according to the time when the service request is sent and the current moment. That is, the client online time can represent the time length from when the client sends a service request to the current moment.

[0089] Preset a duration threshold, and compare the client online time with the preset duration threshold. If the client online time is less than the preset duration threshold, determine that the authentication of the identification information of the client passes, and the client has the right to continue operating; if the client online time is equal to or greater than the preset duration threshold, determine that the authentication of the identification information of the client fails, and no subsequent steps are performed.

[0090] The beneficial effect of such a setting is that it is possible to determine the online time of the client, determine whether the online time is overdue, and thus determine whether the client has the right to continue operating, effectively improving the security of cloud phone scheduling.

[0091] S404. If the current working state of the historical cloud phone is the idle state, determine that the historical cloud phone is the target cloud phone.

[0092] Exemplarily, if there is only one historical cloud phone, determine the current working state of the historical cloud phone. If the working state is the idle state, then the historical cloud phone is the target cloud phone; if the working state is the occupied state, then a cloud phone in the idle state can be determined from the cloud phones other than the historical cloud phone as the target cloud phone. For example, a cloud phone in the idle state can be randomly selected from the target computer room as the target cloud phone; or the next cloud phone in the idle state can be determined according to the preset numbering order of the cloud phones as the target cloud phone.

[0093] If there are multiple historical cloud phones, determine the working states of the multiple historical cloud phones, and select the historical cloud phones in the idle state from the multiple historical cloud phones as the target cloud phones. If the current working states of multiple historical cloud phones are in the idle state, then a historical cloud phone in the idle state can be randomly selected as the target cloud phone.

[0094] In this embodiment, the historical cloud phones are preferentially allocated to the client, that is, the cloud phones previously used by the client, which is convenient for the client to continue the operation according to the previous operation progress. And it is ensured that the allocated target cloud phone is in the idle state, improving the feasibility of the client for the live streaming service and enhancing the user experience.

[0095] In this embodiment, the method further includes: if the current working state of the historical cloud phone is the occupied state, then determine the cloud phones in the idle state from the cloud phones other than the historical cloud phone in the target computer room as the candidate cloud phones; determine the target cloud phone from the candidate cloud phones, and send the operation information of the client on the historical cloud phone within the preset historical time period to the target cloud phone.

[0096] Specifically, if it is determined that the current working states of all the historical cloud phones in the target computer room are the occupied state, then determine the working states of the cloud phones other than the historical cloud phone in the target computer room, and determine the cloud phones in the idle state among these cloud phones as the candidate cloud phones.

[0097] If there is only one candidate cloud phone, the candidate cloud phone is determined as the target cloud phone. If there are multiple candidate cloud phones, the target cloud phone can be determined from the candidate cloud phones. For example, a random candidate cloud phone can be determined as the target cloud phone. The historical cloud phone stores the operation information of the client during the historical time period. After determining the target cloud phone, the PaaS architecture can send the operation information of the client in the historical cloud phone to the target cloud phone, that is, the operation progress of the client can also be recorded in the target cloud phone. For example, if the client last used cloud phone No. 001 and cloud phone No. 002 is assigned to the client this time, the PaaS architecture can transfer the operation information on cloud phone No. 001 to cloud phone No. 002, so that the client can continue the previous progress through cloud phone No. 002 for operation.

[0098] The beneficial effect of such a setting is that an idle target cloud phone is selected from the target computer room and assigned to the client, and it is ensured that the operation information of the client is recorded in the target cloud phone, which is convenient for the client to continue the operation and improves the operation experience of the user.

[0099] In this embodiment, determining the target cloud phone from the candidate cloud phones includes: determining the current remaining resources of the candidate cloud phones; where the current remaining resources represent the currently available computing resources of the candidate cloud phones; and determining the target cloud phone from the candidate cloud phones according to the current remaining resources of the candidate cloud phones.

[0100] Specifically, when determining the target cloud phone from the candidate cloud phones, the current remaining resources of the candidate cloud phones can be determined. The current remaining resources can represent the currently available computing resources of the candidate cloud phones. For example, the computing resources can be the usage rate of the CPU, the occupancy of the memory, etc. According to the current remaining resources of the candidate cloud phones, the candidate cloud phone with the most current remaining resources is determined, and this candidate cloud phone is determined as the target cloud phone. For example, the candidate cloud phones can be sorted in descending order of the current remaining resources, and the candidate cloud phone ranked first is determined as the target cloud phone.

[0101] The beneficial effect of such a setting is that the candidate cloud phone with the most remaining available resources is selected as the target cloud phone, ensuring that the target cloud phone can support the operation of the client, improving the reliability of the client for push - stream services, and enhancing the user experience.

[0102] S405. Build a push - stream service between the target cloud phone and the client; where the push - stream service is used to remotely control the target cloud phone.

[0103] Exemplarily, this step can refer to step S203 above and will not be elaborated here.

[0104] In an embodiment of the present disclosure, a new scheduling center is added, and each computer room corresponds to its own PaaS architecture. The scheduling center is responsible for receiving business requests from users, determining a target computer room from multiple computer rooms, and sending the business requests of the users to the PaaS architecture of the target computer room. After receiving the business request, the PaaS architecture determines a target cloud phone according to the business request, and the determined target cloud phone is a cloud phone in the target computer room, enabling the user to implement a streaming service for the target cloud phone through a client. By removing the centralized PaaS service of the center, the problem that a sudden increase in traffic caused by a single computer room failure may lead to an avalanche of the entire service is solved, and the PaaS architecture is called within the intranet of the computer room, and the network jitter between different computer rooms is hardly felt. The PaaS architecture corresponding to the target computer room is used to process relevant requests and services within the target computer room, and the pressure is distributed to the PaaS of each computer room, improving the security and stability of cloud phone scheduling.

[0105] Figure 5 FIG. is a schematic flowchart of a cloud phone scheduling method based on user requests according to an embodiment of the present disclosure. The method is applied to a scheduling center, and the scheduling center communicates with a PaaS architecture. Each PaaS architecture corresponds to each computer room, and multiple cloud phones are included in the computer room. The method can be executed by a cloud phone scheduling device based on user requests. As Figure 5 shown, the method includes the following steps:

[0106] S501. In response to a business request sent by a user through a client, determine a target computer room from a preset multiple computer rooms; wherein, the business request is used to request remote control of a cloud phone.

[0107] Exemplarily, the user sends a business request through the client. For example, if the user wants to search for a certain problem, a search request can be sent. The client needs to complete the requested search instruction through the cloud phone. For example, the client needs to remotely control the cloud phone to perform the search. That is, the business request can be used to request remote control of the cloud phone.

[0108] The scheduling center receives the business request and determines one of the preset multiple computer rooms as the target computer room. For example, the scheduling center can randomly determine a computer room as the target computer room. It is also possible to determine the current working state of each computer room. The working state of the computer room can be an available state or a non-available state. The available state indicates that the computer room can be determined as the target computer room, and the non-available state indicates that the computer room cannot be determined as the target computer room. A target computer room can be randomly determined from the computer rooms in the available state.

[0109] S502. Send the service request to the PaaS architecture corresponding to the target computer room; wherein, the service request is used to indicate to determine a target cloud phone from multiple cloud phones in the target computer room, and construct a streaming service between the target cloud phone and the client, and the streaming service is used to remotely control the target cloud phone.

[0110] Exemplarily, each computer room corresponds to its own PaaS architecture. After determining the target computer room, send the service request to the PaaS architecture corresponding to the target computer room. The PaaS architecture corresponding to the target computer room determines the target cloud phone from multiple cloud phones in the target computer room, and constructs a streaming service between the target cloud phone and the client, so that the client can remotely control the target cloud phone.

[0111] By adding a scheduling center, the pressure on the PaaS architecture can be reduced, and the collapse of the entire service caused by the failure of the centralized PaaS can be avoided. Moreover, the work of the scheduling center is relatively simple. It mainly sends service requests to each computer room, supports the horizontal expansion of the computer room, meets the business scenarios of high concurrency and high availability, and improves the stability of scheduling.

[0112] In this embodiment, the PaaS architecture corresponding to the target computer room determines the target cloud phone from multiple cloud phones in the target computer room according to the service request, including: determining the identification information of the client from the service request; according to the identification information of the client, determining the historical cloud phone from multiple cloud phones in the target computer room; wherein, the historical cloud phone stores the identification information of the client and the operation information of the client in a preset historical time period, and the operation information represents the operation progress of the client remotely controlling the historical cloud phone in the preset historical time period; if the current working state of the historical cloud phone is the idle state, then determine the historical cloud phone as the target cloud phone.

[0113] Before determining the historical cloud phone, the identification information of the client can also be authenticated according to the preset authentication rules; if it is determined that the identification information of the client passes the authentication, then determine the historical cloud phone from multiple cloud phones in the target computer room according to the identification information of the client.

[0114] Authenticating the identification information of the client according to the preset authentication rules includes: obtaining the preset white list of identification information; wherein, the preset white list of identification information includes legally registered identification information; if the identification information of the client is in the preset white list of identification information, then determine that the identification information of the client passes the authentication.

[0115] According to the preset authentication rules, the client's identification information is authenticated, and it can also include: obtaining the client online time corresponding to the client's identification information; wherein the client online time represents the length of time from the client issuing a service request to the current moment; if the client online time is less than the preset time threshold, it is determined that the client's identification information authentication is passed.

[0116] In this embodiment, if the current working status of the historical cloud phone is occupied, a cloud phone in an idle state is determined from the cloud phones in the target computer room other than the historical cloud phone as a candidate cloud phone; the target cloud phone is determined from the candidate cloud phones, and the operation information of the client in the historical cloud phone within a preset historical time period is sent to the target cloud phone.

[0117] Determining a target cloud phone from candidate cloud phones includes: determining current remaining resources of the candidate cloud phones; wherein the current remaining resources represent computing resources currently available to the candidate cloud phones; and determining a target cloud phone from the candidate cloud phones based on the current remaining resources of the candidate cloud phones.

[0118] In this embodiment, all identification information and operation information recorded in each cloud phone in the target computer room can also be obtained; according to the preset communication protocol, all identification information and operation information recorded in each cloud phone in the target computer room are sent to the dispatching center for storage.

[0119] In the disclosed embodiment, a new dispatch center is added, and each computer room corresponds to its own PaaS architecture. The dispatch center is responsible for receiving the user's business request, determining the target computer room from multiple computer rooms, and sending the user's business request to the PaaS architecture of the target computer room. After receiving the business request, the PaaS architecture determines the target cloud phone according to the business request, and the determined target cloud phone is the cloud phone in the target computer room, so that the user can implement streaming services for the target cloud phone through the client. By removing the central PaaS centralized service, the problem that a sudden increase in traffic due to a single computer room failure may cause an avalanche of the entire service is solved, and the PaaS architecture is all called by the computer room intranet, and the network jitter in different computer rooms is almost imperceptible. The PaaS architecture corresponding to the target computer room is implemented to handle the relevant requests and services within the target computer room, and the pressure is distributed to the PaaS of each computer room, thereby improving the security and stability of cloud phone scheduling.

[0120] Figure 6 A flowchart of a cloud phone scheduling method based on user request provided in an embodiment of the present disclosure.

[0121] In this embodiment, in response to a service request sent by a user through a client, determining a target computer room from a plurality of preset computer rooms can be refined as: in response to a service request sent by a user through a client, determining an Internet protocol address corresponding to the service request; wherein, the Internet protocol address represents the geographical location of the client; and determining a target computer room from a plurality of preset computer rooms according to the Internet protocol address.

[0122] As Figure 6 shown, the method includes the following steps:

[0123] S601. In response to a service request sent by a user through a client, determining an Internet protocol address corresponding to the service request; wherein, the Internet protocol address represents the geographical location of the client.

[0124] Exemplarily, in response to a service request sent by a client, the scheduling center obtains the IP address of the client from the service request, and the IP address can represent the geographical location of the client.

[0125] S602. Determining a target computer room from a plurality of preset computer rooms according to the Internet protocol address.

[0126] Exemplarily, after obtaining the IP address, a computer room can be determined from a plurality of computer rooms according to the IP address as the target computer room. For example, according to the IP address, the area where the client is located is determined, and the computer room in this area is used as the target computer room. This realizes the allocation of the target computer room nearby, avoids excessive pressure on a certain computer room, and improves the control efficiency between the cloud phone and the client.

[0127] In this embodiment, determining a target computer room from a plurality of preset computer rooms according to the Internet protocol address includes: determining the location information of the computer room; wherein, the location information represents the geographical location where the computer room is located; and determining a target computer room from a plurality of preset computer rooms according to the Internet protocol address and the location information.

[0128] Specifically, different computer rooms can be set in different regions, and the scheduling center can pre-store the regions where each computer room is located. After receiving a service request, the location information of each computer room can be obtained, and the location information can represent the geographical location where the computer room is located, that is, the region where the computer room is located. According to the IP address of the client and the location information of the computer room, a target computer room can be determined from a plurality of computer rooms. For example, the location information consistent with the region represented by the IP address can be determined, and the computer room corresponding to this location information is determined as the target computer room.

[0129] The beneficial effect of such a setting is that according to the geographical locations of the client and the computer room, the computer room to be preferentially scheduled is selected, realizing targeted allocation of computer rooms for regions, sharing the scheduling pressure of the cloud phone to different computer rooms, and improving the stability of cloud phone scheduling.

[0130] In this embodiment, determining a target computer room from a plurality of preset computer rooms according to the Internet protocol address and location information includes: determining the distance between the client and the computer room according to the Internet protocol address and the location information of the computer room; and determining the target computer room from the plurality of preset computer rooms according to the magnitude of the distance.

[0131] Specifically, after determining the location information of each computer room, the distance between the client and the computer room can be determined according to the IP address of the client and the location information of the computer room. Each computer room can correspond to a distance. Sort the distances corresponding to each computer room from smallest to largest, and determine the computer room ranked first as the target computer room. That is, determine the computer room closest to the client as the target computer room.

[0132] The beneficial effect of such a setting is that the cloud phones in the computer room closest to the user are preferentially scheduled, improving the success rate of streaming between the cloud phone and the client and enhancing the user experience.

[0133] In this embodiment, determining a target computer room from a plurality of preset computer rooms according to the Internet protocol address includes: determining the current working state of the computer room; where the working state includes an available state and a non-available state; determining the computer rooms in the available state as candidate computer rooms; and determining the target computer room from the candidate computer rooms according to the Internet protocol address.

[0134] Specifically, determine the current working state of each computer room. The current working state of the computer room may be the available state or the non-available state. Determine the computer rooms in the available state as candidate computer rooms, that is, do not determine the target computer room from the computer rooms in the non-available state.

[0135] Determine the target computer room from the candidate computer rooms according to the IP address of the client. For example, the location information of the candidate computer room can be determined, the distance between the client and the candidate computer room can be determined according to the IP address and the location information of the candidate computer room, and the candidate computer room closest to the client can be determined as the target computer room according to the magnitude of the distance.

[0136] The beneficial effect of such a setting is that by determining the working state of the computer room, it is ensured that an available computer room is allocated to the client, improving the scheduling efficiency and accuracy of the cloud phone and enhancing the user experience.

[0137] S603. Send the service request to the PaaS architecture corresponding to the target computer room; where the service request is used to indicate determining a target cloud phone from multiple cloud phones in the target computer room and constructing a streaming service between the target cloud phone and the client, and the streaming service is used to remotely control the target cloud phone.

[0138] Exemplarily, the scheduling center sends the service request to the PaaS architecture corresponding to the target computer room. The PaaS architecture corresponding to the target computer room determines the target cloud phone from multiple cloud phones in the target computer room, and constructs a streaming service between the target cloud phone and the client to complete the scheduling process of the cloud phone this time.

[0139] In this embodiment, sending the service request to the PaaS architecture corresponding to the target computer room includes: determining the PaaS architecture corresponding to the target computer room; and sending the service request to the PaaS architecture corresponding to the target computer room through a short connection between the scheduling center and the PaaS architecture corresponding to the target computer room.

[0140] Specifically, each computer room corresponds to its own PaaS architecture. After determining the target computer room, the PaaS architecture corresponding to the target computer room can be determined. Each target computer room corresponds to multiple PaaS architectures. For example, it can correspond to a main architecture and a backup architecture. After determining the target computer room, the main architecture corresponding to the target computer room is preferably determined first. If the main architecture fails, the backup architecture corresponding to the target computer room can be determined.

[0141] A short connection can be adopted between the scheduling center and the PaaS architecture corresponding to the computer room. After determining the PaaS architecture corresponding to the target computer room, a short connection between the scheduling center and the PaaS architecture corresponding to the computer room is established. Through the established short connection, the service request is sent to the PaaS architecture corresponding to the target computer room. In this embodiment, the establishment method of the short connection is not specifically limited.

[0142] The beneficial effect of such a setting is that the PaaS architecture is called within the computer room intranet, and the short connection is used for calling between the scheduling center and the computer room. The scheduling center is almost insensitive to the network jitter of the computer room, reducing the network sensitivity and improving the stability of cloud phone calling.

[0143] In this embodiment, the method further includes: if the feedback information sent by the PaaS architecture corresponding to the target computer room is not received within a preset time period, it is determined that the service request sending fails, and the number of times of sending the service request to the PaaS architecture corresponding to the target computer room is recorded; wherein, the feedback information indicates that the PaaS architecture successfully receives the service request; if it is determined that the number of failures reaches the preset number threshold, the working state of the target computer room is updated to an unavailable state, and a new target computer room is determined from multiple computer rooms again according to the IP address.

[0144] Specifically, the PaaS architecture corresponding to the target computer room receives the service request sent by the scheduling center and can send feedback information to the scheduling center indicating that the service request has been successfully received. If the scheduling center does not receive the feedback information sent by the PaaS architecture corresponding to the target computer room within the preset time period, it can be determined that the service request sent to the PaaS architecture fails, and the number of times the service request sent to this PaaS architecture fails is recorded.

[0145] A number threshold is preset. After each update of the number of failures, the number of failures is compared with the preset number threshold. If it is determined that the number of failures reaches the preset number threshold, the working state of the target computer room is updated to an unavailable state, and a new target computer room is determined from multiple computer rooms according to the IP address. The new target computer room is other computer rooms in an available state; if the number of failures does not reach the preset number threshold, the scheduling center continues to send service requests to the PaaS architecture of the target computer room until the number of failures reaches the number threshold or receives the feedback information sent by the PaaS architecture corresponding to the target computer room.

[0146] The beneficial effect of such a setting is that a fusing mechanism is added for the scheduling center to send service requests to the computer room. If the number of times the service request sent to a certain computer room fails reaches the number threshold, the service request will no longer be sent to this computer room. For example, the computer room that is the second closest to the client can be found according to the IP address, and the service request is sent to the PaaS architecture corresponding to the second closest computer room, improving the stability of cloud mobile phone scheduling.

[0147] In the embodiment of the present disclosure, a new scheduling center is added, and each computer room corresponds to its own PaaS architecture. The scheduling center is responsible for receiving the service requests of users, determining the target computer room from multiple computer rooms, and sending the service requests of users to the PaaS architecture of the target computer room. After receiving the service request, the PaaS architecture determines the target cloud mobile phone according to the service request, and the determined target cloud mobile phone is the cloud mobile phone in the target computer room, enabling users to implement a streaming service for the target cloud mobile phone through the client. By removing the centralized PaaS service in the center, the problem that a sharp increase in traffic caused by a single computer room failure may lead to an avalanche of the entire service is solved, and the PaaS architecture is called within the intranet of the computer room, and the network jitter between different computer rooms is hardly felt. The relevant requests and services within the target computer room are processed by the PaaS architecture corresponding to the target computer room, and the pressure is distributed to the PaaS of each computer room, improving the security and stability of cloud mobile phone scheduling.

[0148] Figure 7The following is a block diagram of a cloud phone scheduling device provided by an embodiment of the present disclosure. The device is applied to a platform as a service (PaaS) architecture corresponding to a target computer room. The target computer room is one of a preset plurality of computer rooms, and each PaaS architecture corresponds to each computer room. Each computer room includes a plurality of cloud phones. For the sake of convenience of description, only the parts related to the embodiments of the present disclosure are shown. Referring to Figure 7 As shown in , the cloud phone scheduling device 700 based on user requests includes: a request receiving unit 701, a cloud phone determining unit 702, and a streaming construction unit 703.

[0149] The request receiving unit 701 is configured to receive a service request sent by a scheduling center. Among them, the scheduling center communicates with the PaaS architecture. The service request is sent by the scheduling center, and the service request is sent to the PaaS architecture corresponding to the target computer room after determining the target computer room from a preset plurality of computer rooms in response to a service request sent by a user through a client. The service request is used to request remote control of a cloud phone.

[0150] The cloud phone determining unit 702 is configured to determine a target cloud phone from the plurality of cloud phones in the target computer room according to the service request.

[0151] The streaming construction unit 703 is configured to construct a streaming service between the target cloud phone and the client. Among them, the streaming service is used to remotely control the target cloud phone.

[0152] Figure 8 The following is a block diagram of a cloud phone scheduling device provided by an embodiment of the present disclosure. As Figure 8 shown in , the cloud phone scheduling device 800 based on user requests includes a request receiving unit 801, a cloud phone determining unit 802, and a streaming construction unit 803. Among them, the cloud phone determining unit 802 includes an identification determining module 8021, a history determining module 8022, and a target determining module 8023.

[0153] The identification determining module 8021 is configured to determine the identification information of the client from the service request.

[0154] The history determining module 8022 is configured to determine a historical cloud phone from the plurality of cloud phones in the target computer room according to the identification information of the client. Among them, the historical cloud phone stores the identification information of the client and the operation information of the client within a preset historical time period. The operation information represents the operation progress of remotely controlling the historical cloud phone by the client within the preset historical time period.

[0155] A target determination module 8023, configured to determine the historical cloud phone as the target cloud phone if the current working state of the historical cloud phone is the idle state.

[0156] In one example, it further includes:

[0157] An authentication processing unit, configured to perform authentication processing on the identification information of the client according to a preset authentication rule;

[0158] An authentication passed unit, configured to determine a historical cloud phone from multiple cloud phones in the target computer room according to the identification information of the client if it is determined that the authentication of the identification information of the client passes.

[0159] In one example, the authentication processing unit includes:

[0160] A list acquisition module, configured to acquire a preset white list of identification information; wherein, the preset white list of identification information includes legally registered identification information;

[0161] A list judgment module, configured to determine that the authentication of the identification information of the client passes if the identification information of the client is in the preset white list of identification information.

[0162] In one example, the authentication processing unit includes:

[0163] A time acquisition module, configured to acquire the client online time corresponding to the identification information of the client; wherein, the client online time represents the time length from when the client sends a service request to the current moment;

[0164] A time judgment module, configured to determine that the authentication of the identification information of the client passes if the client online time is less than a preset duration threshold.

[0165] In one example, it further includes:

[0166] A status judgment unit, configured to determine a cloud phone in the idle state from the cloud phones in the target computer room other than the historical cloud phone as a candidate cloud phone if the current working state of the historical cloud phone is the occupied state;

[0167] An information sending unit, configured to determine a target cloud phone from the candidate cloud phones and send the operation information of the client in the historical cloud phone within a preset historical time period to the target cloud phone.

[0168] In one example, the information sending unit includes:

[0169] A resource determination module, configured to determine the current remaining resources of the candidate cloud phones; wherein the current remaining resources represent the currently available computing resources of the candidate cloud phones.

[0170] A resource judgment module, configured to determine a target cloud phone from the candidate cloud phones according to the current remaining resources of the candidate cloud phones.

[0171] In one example, it further includes:

[0172] An information acquisition unit, configured to acquire all the identification information and operation information recorded in each cloud phone of the target computer room.

[0173] An information storage unit, configured to send all the identification information and operation information recorded in each cloud phone of the target computer room to the scheduling center for storage according to a preset communication protocol.

[0174] Figure 9 The block diagram of a cloud phone scheduling device based on user requests provided by an embodiment of the present disclosure. This device is applied to a scheduling center, and the scheduling center communicates with a Platform as a Service (PaaS) architecture. Each PaaS architecture corresponds to each computer room, and each computer room includes multiple cloud phones. For the sake of convenience of description, only the parts related to the embodiments of the present disclosure are shown. Refer to Figure 9 , the cloud phone scheduling device 900 based on user requests includes: a computer room determination unit 901 and a request sending unit 902.

[0175] The computer room determination unit 901 is configured to determine a target computer room from a preset multiple computer rooms in response to a service request sent by a user through a client; wherein the service request is used to request remote control of a cloud phone.

[0176] The request sending unit 902 is configured to send the service request to the PaaS architecture corresponding to the target computer room; wherein the service request is used to indicate determining a target cloud phone from the multiple cloud phones in the target computer room and constructing a streaming service between the target cloud phone and the client, and the streaming service is used to remotely control the target cloud phone.

[0177] In one example, the computer room determination unit 901 includes:

[0178] An address determination module, configured to determine the Internet protocol address corresponding to the service request in response to a service request sent by a user through a client; wherein the Internet protocol address represents the geographical location of the client.

[0179] A computer room determination module, configured to determine a target computer room from a preset multiple computer rooms according to the Internet protocol address.

[0180] In one example, the computer room determination module includes:

[0181] A location determination sub-module for determining the location information of the computer room; wherein the location information represents the geographical location where the computer room is located;

[0182] A computer room determination sub-module for determining the target computer room from a plurality of preset computer rooms according to the Internet protocol address and the location information.

[0183] In one example, the computer room determination sub-module is specifically configured to:

[0184] Determine the distance between the client and the computer room according to the Internet protocol address and the location information of the computer room;

[0185] Determine the target computer room from the plurality of preset computer rooms according to the magnitude of the distance.

[0186] In one example, the computer room determination module includes:

[0187] A status determination sub-module for determining the current working status of the computer room; wherein the working status includes an available status and a non-available status;

[0188] A first determination sub-module for determining the computer rooms in the available status as candidate computer rooms;

[0189] A second determination sub-module for determining the target computer room from the candidate computer rooms according to the Internet protocol address.

[0190] In one example, the request sending unit 902 includes:

[0191] An architecture determination module for determining the PaaS architecture corresponding to the target computer room;

[0192] A short connection module for sending the service request to the PaaS architecture corresponding to the target computer room through a short connection between the scheduling center and the PaaS architecture corresponding to the target computer room.

[0193] In one example, it further includes:

[0194] A times recording unit for determining that the service request sending fails and recording the number of times of failure in sending the service request to the PaaS architecture corresponding to the target computer room if the feedback information sent by the PaaS architecture corresponding to the target computer room is not received within a preset time period; wherein the feedback information represents that the PaaS architecture successfully receives the service request.

[0195] A frequency determination unit, configured to update the working state of the target computer room to an unavailable state if it is determined that the number of failures reaches a preset number threshold, and re-determine a new target computer room from the multiple computer rooms according to the IP address.

[0196] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device.

[0197] Figure 10 As shown in the structure block diagram of an electronic device provided by an embodiment of the present disclosure, the electronic device may be a terminal device or a server, such as Figure 10 shown, the electronic device 1000 includes: at least one processor 1002; and a memory 1001 communicatively connected to the at least one processor 1002; wherein, the memory stores instructions executable by the at least one processor 1002, and the instructions are executed by the at least one processor 1002, so that the at least one processor 1002 can execute the cloud mobile phone scheduling method based on user requests of the present disclosure.

[0198] The electronic device 1000 further includes a receiver 1003 and a transmitter 1004. The receiver 1003 is configured to receive instructions and data sent by other devices, and the transmitter 1004 is configured to send instructions and data to external devices.

[0199] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0200] According to an embodiment of the present disclosure, the present disclosure also provides a computer program product, the computer program product includes: a computer program, the computer program is stored in a readable storage medium, and at least one processor of the electronic device can read the computer program from the readable storage medium, and the at least one processor executes the computer program to enable the electronic device to execute the solution provided by any of the above embodiments.

[0201] Figure 11 A schematic block diagram of an example electronic device 1100 that can be used to implement the embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, a personal digital processing, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0202] Such as Figure 11As shown, device 1100 includes a computing unit 1101, which can perform various appropriate actions and processes according to computer programs stored in a read-only memory (ROM) 1102 or computer programs loaded from a storage unit 1108 into a random access memory (RAM) 1103. In the RAM 1103, various programs and data required for the operation of device 1100 can also be stored. The computing unit 1101, the ROM 1102, and the RAM 1103 are connected to each other via a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.

[0203] Multiple components in device 1100 are connected to the I / O interface 1105, including: an input unit 1106, such as a keyboard, a mouse, etc.; an output unit 1107, such as various types of displays, speakers, etc.; a storage unit 1108, such as a magnetic disk, an optical disc, etc.; and a communication unit 1109, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 1109 allows device 1100 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0204] The computing unit 1101 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1101 include but are not limited to a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The computing unit 1101 executes the various methods and processes described above, such as the cloud phone scheduling method based on a user request. For example, in some embodiments, the cloud phone scheduling method based on a user request can be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as the storage unit 1108. In some embodiments, part or all of the computer program can be loaded and / or installed onto device 1100 via the ROM 1102 and / or the communication unit 1109. When the computer program is loaded into the RAM 1103 and executed by the computing unit 1101, one or more steps of the cloud phone scheduling method based on a user request described above can be executed. Alternatively, in other embodiments, the computing unit 1101 can be configured to execute the cloud phone scheduling method based on a user request in any other appropriate manner (e.g., by means of firmware).

[0205] The various embodiments of the systems and techniques described above in this specification can be implemented in digital electronic circuitry, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems-on-chip (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: being implemented in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be a special-purpose or a general-purpose programmable processor that receives data and instructions from, and transmits data and instructions to, a storage system, at least one input device, and at least one output device.

[0206] The program code for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general purpose computer, a special purpose computer, or other programmable data processing device, such that the program codes, when executed by the processor or controller, cause the functions / operations specified in the flowchart and / or block diagram to be implemented. The program code can be executed entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine, or entirely on the remote machine or server.

[0207] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0208] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and a pointing device (e.g., a mouse or a trackball) through which the user can provide input to the computer. Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0209] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by digital data communication in any form or medium (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.

[0210] A computer system can include a client and a server. The client and the server are generally far apart from each other and typically interact through a communication network. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system and solves the defects of difficult management and weak business scalability existing in traditional physical hosts and VPS services ("Virtual Private Server", or simply "VPS" for short). The server can also be a server of a distributed system, or a server combined with blockchain.

[0211] It should be understood that various forms of the processes shown above can be used, with steps reordered, added, or deleted. For example, the steps recited in this disclosure can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and no limitation is imposed herein.

[0212] The above specific embodiments do not constitute a limitation to the protection scope of the present disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principle of the present disclosure shall be included within the protection scope of the present disclosure.

Claims

1. A cloud phone scheduling method based on user requests, the method is applied to a platform as a service (PaaS) architecture corresponding to a target computer room, the target computer room is one of a plurality of preset computer rooms, each PaaS architecture corresponds to each computer room, and the computer room includes a plurality of cloud phones; the method comprises: Receive a service request forwarded by a dispatch center; wherein the dispatch center communicates with a PaaS architecture, wherein the service request is issued by a user through a client and is used to request remote control of a cloud phone, and the PaaS architecture is a PaaS architecture corresponding to a target computer room determined from a plurality of preset computer rooms in response to the service request issued by the user through a client by the dispatch center; determine a target cloud phone from a plurality of cloud phones in the target computer room according to the service request; A streaming service is established between the target cloud phone and the client; wherein the streaming service is used to remotely control the target cloud phone.

2. The method according to claim 1, wherein: The step of determining a target cloud phone from a plurality of cloud phones in the target computer room according to the service request includes: Determining identification information of the client from the service request; According to the identification information of the client, a historical cloud phone is determined from a plurality of cloud phones in the target computer room; wherein the historical cloud phone stores the identification information of the client and the operation information of the client in a preset historical time period, and the operation information represents the operation progress of the client in remotely controlling the historical cloud phone in the preset historical time period; If the current working state of the historical cloud phone is an idle state, the historical cloud phone is determined to be the target cloud phone.

3. The method according to claim 2, further comprising: According to a preset authentication rule, the identification information of the client is authenticated; If it is determined that the identification information of the client has been authenticated, a historical cloud phone is determined from a plurality of cloud phones in the target computer room according to the identification information of the client.

4. The method according to claim 3, wherein: The authentication process of the identification information of the client according to the preset authentication rule includes: Obtaining a preset identification information whitelist; wherein the preset identification information whitelist includes legally registered identification information; If the identification information of the client is in the preset identification information whitelist, it is determined that the identification information authentication of the client has passed.

5. The method according to claim 3, wherein: The authentication process of the identification information of the client according to the preset authentication rule includes: Obtaining the client online time corresponding to the identification information of the client; wherein the client online time represents the length of time from the client issuing a service request to the current moment; If the online time of the client is less than the preset time threshold, it is determined that the identification information authentication of the client has passed.

6. The method according to any one of claims 2 to 5, further comprising: If the current working state of the historical cloud phone is occupied, then from the cloud phones in the target computer room other than the historical cloud phone, determine a cloud phone in an idle state as a candidate cloud phone; A target cloud phone is determined from the candidate cloud phones, and the operation information of the client in the historical cloud phone within a preset historical time period is sent to the target cloud phone.

7. The method according to claim 6, wherein: The determining of the target cloud phone from the candidate cloud phones includes: Determine the current remaining resources of the candidate cloud phone; wherein the current remaining resources represent the computing resources currently available to the candidate cloud phone; According to the current remaining resources of the candidate cloud phones, a target cloud phone is determined from the candidate cloud phones.

8. The method according to any one of claims 1 to 5 and 7, further comprising: Obtain all identification information and operation information recorded in each cloud phone in the target computer room; According to a preset communication protocol, all identification information and operation information recorded in each cloud phone in the target computer room are sent to the dispatch center for storage.

9. A cloud phone scheduling method based on user requests, the method is applied to a scheduling center, the scheduling center communicates with a platform as a service PaaS architecture, each PaaS architecture corresponds to each computer room, and the computer room includes multiple cloud phones; the method includes: In response to a service request sent by a user through a client, a target computer room is determined from a plurality of preset computer rooms; wherein the service request is used to request remote control of a cloud phone; The business request is sent to the PaaS architecture corresponding to the target computer room; wherein the business request is used to instruct the PaaS architecture to determine the target cloud phone from multiple cloud phones in the target computer room, and to build a streaming service between the target cloud phone and the client, wherein the streaming service is used to remotely control the target cloud phone.

10. The method according to claim 9, wherein: The step of determining a target computer room from a plurality of preset computer rooms in response to a service request sent by a user through a client terminal comprises: In response to a service request sent by a user through a client, determining an Internet Protocol address corresponding to the service request; wherein the Internet Protocol address represents a geographical location of the client; According to the Internet Protocol address, a target computer room is determined from a plurality of preset computer rooms.

11. The method according to claim 10, wherein: Determining the target computer room from a plurality of preset computer rooms according to the Internet Protocol address includes: Determine the location information of the computer room; wherein the location information represents the geographical location of the computer room; The target computer room is determined from a plurality of preset computer rooms according to the Internet Protocol address and the location information.

12. The method according to claim 11, wherein: Determining the target computer room from a plurality of preset computer rooms according to the Internet Protocol address and the location information includes: Determining the distance between the client and the computer room according to the Internet Protocol address and the location information of the computer room; According to the size of the distance, the target computer room is determined from the plurality of preset computer rooms.

13. The method according to any one of claims 10 to 12, wherein: Determining the target computer room from a plurality of preset computer rooms according to the Internet Protocol address includes: Determine the current working state of the computer room; wherein the working state includes an available state and an unavailable state; Determine the computer rooms that are in an available state as candidate computer rooms; A target computer room is determined from the candidate computer rooms according to the Internet Protocol address.

14. The method according to claim 13, wherein: The step of sending the service request to the PaaS architecture corresponding to the target computer room includes: Determine the PaaS architecture corresponding to the target computer room; The service request is sent to the PaaS architecture corresponding to the target computer room through a short connection between the dispatch center and the PaaS architecture corresponding to the target computer room.

15. The method according to claim 14, further comprising: If no feedback information is received from the PaaS architecture corresponding to the target computer room within a preset time period, it is determined that the service request has failed to be sent, and the number of times the service request has failed to be sent to the PaaS architecture corresponding to the target computer room is recorded; wherein the feedback information indicates that the PaaS architecture has successfully received the service request; If the number of failures reaches a preset number threshold, the working state of the target computer room is updated to an unavailable state, and a new target computer room is determined from the multiple computer rooms based on the IP address.

16. A cloud phone scheduling device based on user request, the device is applied to a platform as a service (PaaS) architecture corresponding to a target computer room, the target computer room is one of a plurality of preset computer rooms, each PaaS architecture corresponds to each computer room, and the computer room includes a plurality of cloud phones; the device comprises: A request receiving unit, used for receiving a service request forwarded by a dispatch center; wherein the dispatch center communicates with a PaaS architecture, wherein the service request is issued by a user through a client and is used to request remote control of a cloud phone; wherein the PaaS architecture is a PaaS architecture corresponding to a target computer room determined from a plurality of preset computer rooms in response to a service request issued by a user through a client; and a cloud phone determining unit, used for determining a target cloud phone from a plurality of cloud phones in the target computer room according to the service request; A streaming construction unit is used to construct a streaming service between the target cloud phone and the client; wherein the streaming service is used to remotely control the target cloud phone.

17. The device according to claim 16, wherein: The cloud phone determination unit includes: An identification determination module, used to determine the identification information of the client from the service request; A history determination module, used to determine a historical cloud phone from multiple cloud phones in the target computer room according to the identification information of the client; wherein the historical cloud phone stores the identification information of the client and the operation information of the client in a preset historical time period, and the operation information represents the operation progress of the client in remotely controlling the historical cloud phone in the preset historical time period; The target determination module is used to determine that the historical cloud phone is the target cloud phone if the current working state of the historical cloud phone is an idle state.

18. The apparatus according to claim 17, further comprising: An authentication processing unit, used to perform authentication processing on the identification information of the client according to a preset authentication rule; The authentication passing unit is used to determine a historical cloud phone from multiple cloud phones in the target computer room according to the identification information of the client if it is determined that the identification information of the client has been authenticated.

19. The device according to claim 18, wherein: The authentication processing unit comprises: A list acquisition module, used to acquire a preset identification information white list; wherein the preset identification information white list includes legally registered identification information; The list judgment module is used to determine that the identification information of the client has been authenticated if the identification information of the client is in the preset identification information whitelist.

20. The device according to claim 18, wherein The authentication processing unit comprises: A time acquisition module, used to acquire the client online time corresponding to the identification information of the client; wherein the client online time represents the length of time from the client sending a service request to the current moment; The time judgment module is used to determine that the identification information authentication of the client has passed if the online time of the client is less than a preset time threshold.

21. The apparatus according to any one of claims 17 to 20, further comprising: a state judgment unit, configured to determine, if the current working state of the historical cloud phone is an occupied state, a cloud phone in an idle state from the cloud phones in the target computer room other than the historical cloud phone as a candidate cloud phone; The information sending unit is used to determine a target cloud phone from the candidate cloud phones, and send the operation information of the client in the historical cloud phone within a preset historical time period to the target cloud phone.

22. The device according to claim 21, wherein The information sending unit comprises: A resource determination module, used to determine the current remaining resources of the candidate cloud phone; wherein the current remaining resources represent the computing resources currently available to the candidate cloud phone; The resource judgment module is used to determine the target cloud phone from the candidate cloud phones according to the current remaining resources of the candidate cloud phones.

23. The device according to any one of claims 16 to 20 and 22, further comprising: An information acquisition unit, used to acquire all identification information and operation information recorded in each cloud phone in the target computer room; The information storage unit is used to send all identification information and operation information recorded in each cloud phone in the target computer room to the dispatch center for storage according to a preset communication protocol.

24. A cloud phone dispatching device based on user requests, the device is applied to a dispatching center, the dispatching center communicates with a platform as a service (PaaS) architecture, each PaaS architecture corresponds to each computer room, and the computer room includes multiple cloud phones; the device includes: A computer room determination unit, configured to determine a target computer room from a plurality of preset computer rooms in response to a service request sent by a user through a client; wherein the service request is used to request remote control of a cloud phone; A request sending unit, used to send the business request to the PaaS architecture corresponding to the target computer room; wherein the business request is used to instruct the PaaS architecture to determine the target cloud phone from multiple cloud phones in the target computer room, and to build a streaming service between the target cloud phone and the client, wherein the streaming service is used to remotely control the target cloud phone.

25. The device according to claim 24, wherein: The computer room determining unit includes: An address determination module, configured to determine, in response to a service request sent by a user through a client, an Internet Protocol address corresponding to the service request; wherein the Internet Protocol address represents a geographical location of the client; The computer room determination module is used to determine a target computer room from a plurality of preset computer rooms according to the Internet Protocol address.

26. The device according to claim 25, wherein The computer room determination module includes: A location determination submodule, used to determine the location information of the computer room; wherein the location information represents the geographical location of the computer room; The computer room determination submodule is used to determine the target computer room from a plurality of preset computer rooms according to the Internet Protocol address and the location information.

27. The device according to claim 26, wherein: The computer room determination submodule is specifically used for: Determining the distance between the client and the computer room according to the Internet Protocol address and the location information of the computer room; According to the size of the distance, the target computer room is determined from the plurality of preset computer rooms.

28. The device according to any one of claims 25 to 27, wherein: The computer room determination module includes: A state determination submodule, used to determine the current working state of the computer room; wherein the working state includes an available state and an unavailable state; A first determination submodule is used to determine a computer room in an available state as a candidate computer room; The second determination submodule is used to determine a target computer room from the candidate computer rooms according to the Internet Protocol address.

29. The device according to claim 28, wherein The request sending unit includes: An architecture determination module, used to determine the PaaS architecture corresponding to the target computer room; The short connection module is used to send the service request to the PaaS architecture corresponding to the target computer room through the short connection between the dispatch center and the PaaS architecture corresponding to the target computer room.

30. The apparatus of claim 29, further comprising: A times recording unit, for determining that the service request fails to be sent, and recording the times of failure to send the service request to the PaaS architecture corresponding to the target computer room if no feedback information sent by the PaaS architecture corresponding to the target computer room is received within a preset time period; wherein the feedback information indicates that the PaaS architecture successfully receives the service request; The number judgment unit is used to update the working state of the target computer room to an unavailable state if the number of failures reaches a preset number threshold, and re-determine a new target computer room from the multiple computer rooms based on the IP address.

31. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 15.

32. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-15.

33. A computer program product, wherein: The invention comprises a computer program, which implements the steps of the method according to any one of claims 1 to 15 when being executed by a processor.

Citation Information

Patent Citations

  • Platform-as-a-service PaaS platform management method and device

    CN107888399A

  • Routing service discovery device and method for PAAS platform

    CN113542373A