Call method and device in virtual desktop environment, call equipment and storage medium

By displaying the call interface in a virtual machine and generating call commands based on user actions, the problem of call interruption during virtual desktop access is solved, enabling convenient call management and improving user experience and office efficiency.

CN115484427BActive Publication Date: 2025-12-26SANGFOR TECH INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110661506.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-06-15
Publication Date
2025-12-26
Estimated Expiration
2041-06-15

AI Technical Summary

Technical Problem

When a user accesses the virtual desktop using a terminal, the virtual desktop will be interrupted when a phone call comes in or goes out, making it impossible to conveniently conduct the call.

Method used

The call interface is displayed through a virtual machine, and the virtual desktop access program obtains user operations to generate call commands, controlling whether the call is connected or disconnected, thus achieving convenient call management.

Benefits of technology

When accessing the virtual desktop application, users can flexibly and conveniently connect or disconnect calls, improving their call experience and work continuity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115484427B_ABST
    Figure CN115484427B_ABST
Patent Text Reader

Abstract

Embodiments of the application disclose a call method and device in a virtual desktop environment, a call equipment and a storage medium. The method comprises the following steps: obtaining a call request sent by a call module of a first terminal; the call request is used for requesting to establish a call connection between the first terminal and a second terminal; sending the call request to a virtual machine associated with a virtual desktop access program to obtain a first response result of the virtual machine to the call request; receiving a user operation and sending the user operation to the virtual machine, wherein the user operation is obtained according to the first response result; obtaining a first call instruction for connecting or hanging up generated by the virtual machine according to the user operation; and sending the first call instruction to the call module to connect or hang up a call through the call module.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer information, and relates to but is not limited to a call method and device in a virtual desktop environment, a call device and a storage medium. BACKGROUND

[0002] In the related art, a user is inevitably disturbed by a phone when using a terminal (for example, a smart phone) to access a virtual desktop; when the terminal has a phone call incoming or the user needs to make a phone call, the use of the virtual desktop is interrupted by the phone call incoming or the user needs to exit the virtual desktop to make the phone call. SUMMARY

[0003] Therefore, the present application provides a call method and device in a virtual desktop environment, a call device and a storage medium.

[0004] In a first aspect, the present application provides a call method in a virtual desktop environment, the method comprising: obtaining a call request sent by a call module of a first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal; sending the call request to a virtual machine associated with a virtual desktop access program to obtain a first response result of the virtual machine to the call request; receiving a user operation and sending the user operation to the virtual machine, wherein the user operation is obtained according to the first response result; obtaining a first call instruction generated by the virtual machine according to the user operation to connect or hang up; and sending the first call instruction to the call module to connect or hang up the phone through the call module.

[0005] In one embodiment, the obtaining the first response result of the virtual machine to the call request comprises: obtaining a first call interface generated by the virtual machine in response to the call request.

[0006] The receiving the user operation and sending the user operation to the virtual machine comprises: in response to the user operation obtained in the first call interface, sending the user operation to the virtual machine.

[0007] In the present application, the first call interface is displayed by the virtual machine, and the user operation obtained in the first call interface is sent to the virtual machine by the virtual desktop access program; the first call instruction generated by the virtual machine according to the user operation is obtained by the virtual desktop access program to control the phone to connect or hang up, so that the call module can more conveniently and flexibly connect or hang up the call connection when the virtual desktop access program accesses the virtual desktop.

[0008] In one embodiment, the call request is a call incoming request.

[0009] Correspondingly, the sending, in response to the user operation acquired at the first call interface, of the user operation to the virtual machine comprises: sending, in response to a click operation on a connection control or a hang-up control acquired at the first call interface, the click operation to the virtual machine.

[0010] The acquiring of the first call instruction for connection or hang-up generated by the virtual machine according to the user operation comprises: acquiring the first call instruction for connection generated by the virtual machine according to the click operation on the connection control; or acquiring the first call instruction for hang-up generated by the virtual machine according to the click operation on the hang-up control.

[0011] In the embodiments of the present application, in the case that the call request is a call incoming request, the virtual desktop access program can generate a first call instruction for connection or hang-up in response to a click operation of a user on a connection control or a hang-up control acquired at the first call interface, so that the user can more conveniently connect or hang up the phone when the virtual desktop access program accesses the virtual desktop.

[0012] In one embodiment, the call request is a call outgoing request.

[0013] Correspondingly, the sending, in response to the user operation acquired at the first call interface, of the user operation to the virtual machine comprises: sending, in response to a click operation on a cancel control acquired at the first call interface, the click operation to the virtual machine.

[0014] The acquiring of the first call instruction for connection or hang-up generated by the virtual machine according to the user operation comprises: acquiring the first call instruction for hang-up generated by the virtual machine according to the click operation on the cancel control.

[0015] In the embodiments of the present application, in the case that the call request is a call outgoing request, the virtual desktop access program can generate a first call instruction for hang-up in response to a click operation of a user on a cancel control acquired at the first call interface, so that the user can more conveniently cancel the call when the virtual desktop access program accesses the virtual desktop.

[0016] In one embodiment, the method further comprises: receiving a hang-up instruction sent by the call module; sending the hang-up instruction to the virtual machine; and receiving a second response result returned by the virtual machine.

[0017] In the embodiment of the present application, in the case that the call request is a call-out request, the virtual desktop access program can send the received hang-up instruction to the virtual machine and accept the second response result returned by the virtual machine, so as to remind the user that the other party has hung up the call and improve the user's call experience.

[0018] In one embodiment, in the case that the call connection is connected, the method further comprises: obtaining a data stream generated in the process of the call connection; sending the data stream to the virtual machine; and receiving the data stream returned by the virtual machine.

[0019] In the embodiment of the present application, the virtual desktop access program sends the data stream to the virtual machine for outputting the data stream by the virtual machine, so as to improve the experience of voice call or video call.

[0020] In one embodiment, in the process of the call connection, the method further comprises: in response to a click operation on a hang-up control obtained on a second call interface, sending the click operation to the virtual machine, wherein the second call interface is an image displayed in the process of the call connection.

[0021] receiving a second call instruction returned by the virtual machine according to the click operation, and sending the second call instruction to the call module to hang up the call connection by the call module.

[0022] In the embodiment of the present application, the virtual desktop access program sends the click operation on the hang-up control obtained on the second call interface to the virtual machine, and the virtual machine generates a second call instruction and sends it to the call module, so as to end the call in time.

[0023] In one embodiment, in the case that the call connection is a voice call connection, the data stream returned by the virtual machine comprises a voice data stream.

[0024] In the case that the call connection is a video call connection, the data stream returned by the virtual machine comprises a video data stream and a voice data stream.

[0025] In the embodiment of the present application, the call connection can be a voice call connection or a video call connection, so that when the virtual desktop access program of the first terminal accesses the virtual desktop, the call module of the first terminal can normally receive or call out voice call or video call.

[0026] In a second aspect, an embodiment of the present application provides a call device in a virtual desktop environment, the device comprising: a first obtaining module configured to obtain a call request sent by a call module of a first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal; a second obtaining module configured to send the call request to a virtual machine associated with a virtual desktop access program to obtain a first response result of the virtual machine to the call request; a first forwarding module configured to receive a user operation and send the user operation to the virtual machine, wherein the user operation is obtained according to the first response result; and a second forwarding module configured to obtain a first call instruction for call connection or hang-up generated by the virtual machine according to the user operation, and send the first call instruction to the call module to connect or hang up a call through the call module.

[0027] In a third aspect, an embodiment of the present application provides a call device, comprising a memory and a processor, the memory stores a computer program capable of running on the processor, and the processor implements the steps in the call method in a virtual desktop environment according to the first aspect of the present application when executing the program.

[0028] In a fourth aspect, an embodiment of the present application provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the steps in the call method in a virtual desktop environment according to the first aspect of the present application.

[0029] In the embodiment of the present application, the virtual desktop access program sends the obtained call request of the call module to the associated virtual machine, obtains the response result of the virtual machine to the call request, sends the user operation obtained according to the response result to the virtual machine, and sends the call instruction generated by the virtual machine according to the user operation to the call module, so that the call module can connect or hang up the call connection when the virtual desktop access program accesses the virtual desktop. BRIEF DESCRIPTION OF DRAWINGS

[0030] Figure 1 FIG. 1 is a flowchart of a call method in a virtual desktop environment according to an embodiment of the present application;

[0031] Figure 2 FIG. 2 is a schematic diagram of the composition structure of a call device in a virtual desktop environment according to an embodiment of the present application;

[0032] Figure 3 FIG. 3 is a flowchart of another call method in a virtual desktop environment according to an embodiment of the present application;

[0033] Figure 4 FIG. 4 is a flowchart of still another call method in a virtual desktop environment according to an embodiment of the present application;

[0034] Figure 5 Fig. 1 is a schematic diagram of a composition structure of a call device in a virtual desktop environment according to an embodiment of the present application;

[0035] Figure 6 Fig. 2 is a schematic diagram of a hardware entity of a call device according to an embodiment of the present application. DETAILED DESCRIPTION

[0036] The technical solutions of the present application are further described in detail below in combination with the drawings and embodiments.

[0037] Figure 1 Fig. 3 is a schematic diagram of a flow of a call method in a virtual desktop environment according to an embodiment of the present application, the method being applied to a virtual desktop access program on a first terminal, as shown in the figure, the method comprising: Figure 1

[0038] Step 102: obtaining a call request sent by a call module of the first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal;

[0039] Wherein, the first terminal and the second terminal can be a mobile phone (for example, can be a smart phone), a tablet computer, a notebook computer and the like; the call request can be a call incoming request, and can also be a call outgoing request; in the case that the call request is a call incoming request, the first terminal is a called terminal, and the second terminal is a calling terminal; in the case that the call request is a call outgoing request, the first terminal is a calling terminal, and the second terminal is a called terminal.

[0040] A virtual machine (VM) can refer to a complete computer system running in a completely isolated environment by software simulation, which has complete hardware system functions. The work that can be completed in an entity computer can be realized in a virtual machine; the virtual machine can be operated like an entity computer; the virtual machine is a software implementation of a computer that can run programs like a real machine through virtualization technology.

[0041] A virtual desktop infrastructure (VDI) can make users use a desktop system and perform desktop operations through a network without the limitation of physical space by centrally arranging servers and running virtual machines of the desktop system. Meanwhile, only the image of the desktop system is transmitted in the desktop operation process, and the user cannot access the actual data of the desktop system, thereby realizing high security.

[0042] ​The VDI access is usually initiated by a terminal user from an access client (also referred to as a virtual desktop access program) of a virtual desktop, is uniformly verified by a virtual desktop management access control device on a virtual desktop management platform (also referred to as a virtualization platform device), and after terminal user verification, the virtual desktop management platform authorizes the virtual desktop for the terminal user to use, so that the terminal is in a virtual desktop environment, the virtual desktop management platform can control the virtual desktop, and the terminal user can directly perform relevant operations on the virtual desktop; in this process, an operation and maintenance personnel can set various management and control functions for the virtual desktop according to actual conditions and needs, for example, the management and control function can be management and control of whether a U disk can be plugged in or not.

[0043] Step 104: sending the call request to a virtual machine associated with the virtual desktop access program to obtain a first response result of the virtual machine to the call request;

[0044] Step 106: receiving a user operation and sending the user operation to the virtual machine, wherein the user operation is obtained according to the first response result;

[0045] Step 108: obtaining a first call instruction for call connection or hang-up generated by the virtual machine according to the user operation; and sending the first call instruction to the call module to connect or hang up the call through the call module.

[0046] The first call instruction can carry a call connection signal for call connection or a hang-up signal for hang-up; the call module is also referred to as a mobile phone program, in the case that the first call instruction carries the call connection signal, the call module can determine the call connection to be connected, that is, establish the call connection between the first terminal and the second terminal; in the case that the first call instruction carries the hang-up signal, the call module can determine the call connection to be hung up, that is, refuse to establish the call connection between the first terminal and the second terminal.

[0047] In the embodiment of the application, the virtual desktop access program sends the obtained call request of the call module to the associated virtual machine, obtains the response result of the virtual machine to the call request, sends the user operation obtained according to the response result to the virtual machine, and sends the call instruction generated by the virtual machine according to the user operation to the call module, so that the call module can connect or hang up the call connection when the virtual desktop access program accesses the virtual desktop.

[0048] The embodiment of the application also provides a call method in a virtual desktop environment, and the method comprises:

[0049] Step S202: obtaining a call request sent by a call module of the first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal;

[0050] Step S204: sending the call request to a virtual machine associated with the virtual desktop access program to obtain a first call interface generated by the virtual machine in response to the call request;

[0051] The first response result can be a first call interface generated by the virtual machine based on the call request.

[0052] Step S206: sending a user operation obtained in the first call interface to the virtual machine in response to the user operation, wherein the user operation is obtained according to the first response result;

[0053] Step S208: obtaining a first call instruction for connecting or hanging up generated by the virtual machine according to the user operation; and sending the first call instruction to the call module to connect or hang up a call through the call module.

[0054] In the embodiment, the first call interface is displayed by the virtual machine, the virtual desktop access program sends a user operation obtained in the first call interface to the virtual machine, the virtual desktop access program obtains a first call instruction generated by the virtual machine according to the user operation to control a call to be connected or hung up, so that the call module can more conveniently and flexibly connect or hang up the call connection when the virtual desktop access program accesses the virtual desktop.

[0055] The embodiment of the present application further provides a call method in a virtual desktop environment, and the method comprises:

[0056] Step S302: obtaining a call incoming request sent by a call module of the first terminal; the call incoming request is used to request to establish a call connection between the first terminal and a second terminal;

[0057] Step S304: sending the call incoming request to a virtual machine associated with the virtual desktop access program to obtain a first call interface generated by the virtual machine in response to the call incoming request;

[0058] The first call interface can include a plurality of controls.

[0059] Step S306: sending a click operation on a connection control or a hang-up control obtained in the first call interface to the virtual machine;

[0060] Step S308: obtaining a first call instruction for connecting generated by the virtual machine according to the click operation on the connecting control, or obtaining a first call instruction for hanging up generated by the virtual machine according to the click operation on the hanging up control; and sending the first call instruction to the call module to connect or hang up the call through the call module.

[0061] In the case that the call request is a call incoming request, the first terminal is a called terminal, and the first call interface can include a connecting control and a hanging up control.

[0062] In the case that the call request is a call incoming request, the virtual desktop access program can generate a first call instruction for connecting or hanging up in response to the click operation of the user on the connecting control or the hanging up control obtained on the first call interface, so that the user can more conveniently connect or hang up the call when the virtual desktop access program accesses the virtual desktop.

[0063] The embodiment of the present application also provides a call method in a virtual desktop environment, and the method comprises the following steps:

[0064] Step S402: obtaining a call outgoing request sent by a call module of the first terminal; the call outgoing request is used to request to establish a call connection between the first terminal and a second terminal;

[0065] Step S404: sending the call outgoing request to a virtual machine associated with the virtual desktop access program to obtain a first call interface generated by the virtual machine in response to the call outgoing request;

[0066] Step S406: in response to a click operation on a cancel control obtained on the first call interface, sending the click operation to the virtual machine;

[0067] In the case that the call request is a call outgoing request, the first terminal is a calling terminal, and the second terminal is a called terminal; and the first call interface can include a cancel control.

[0068] Step S408: obtaining a first call instruction for hanging up generated by the virtual machine according to the click operation on the cancel control; and sending the first call instruction to the call module to hang up the call through the call module.

[0069] In the case that the call request is a call outgoing request, the virtual desktop access program can generate a first call instruction for hanging up in response to the click operation of the user on the cancel control obtained on the first call interface, so that the user can more conveniently cancel the call when the virtual desktop access program accesses the virtual desktop.

[0070] The embodiment of the present application further provides a call method in a virtual desktop environment, and the method comprises the following steps:

[0071] In step S502, a call request sent by a call module of the first terminal is acquired; the call request is used for requesting to establish a call connection between the first terminal and a second terminal;

[0072] In step S504, the call request is sent to a virtual machine associated with the virtual desktop access program, so as to acquire a first response result of the virtual machine to the call request;

[0073] In step S506, a user operation is received and sent to the virtual machine, wherein the user operation is obtained according to the first response result;

[0074] In step S508, a first call instruction for call connection or hang-up generated by the virtual machine according to the user operation is acquired; and the first call instruction is sent to the call module, so as to connect or hang up a call through the call module;

[0075] In step S510, a hang-up instruction sent by the call module is received;

[0076] The hang-up instruction can be an instruction generated according to a click operation of a user corresponding to a second terminal on a cancel control or a hang-up control displayed on a call interface of the second terminal; the hang-up instruction can be sent by a call module of the second terminal to a call module of the first terminal; when the second terminal is a calling party, the cancel control can be displayed on the call interface of the second terminal; when the second terminal is a called party, the hang-up control can be displayed on the call interface of the second terminal.

[0077] In step S512, the hang-up instruction is sent to the virtual machine;

[0078] In step S514, a second response result returned by the virtual machine is received.

[0079] The second response result can be generated according to the hang-up instruction; the second response result can be a display interface, and the display interface displays “the other party has cancelled” or “the other party has hung up”.

[0080] In the embodiment of the present application, when the call request is a call-out request, the virtual desktop access program can send the received hang-up instruction to the virtual machine and accept the second response result returned by the virtual machine, so as to remind the user that the other party has hung up the call and improve the call experience of the user.

[0081] The embodiment of the present application further provides a call method in a virtual desktop environment, and the method comprises the following steps:

[0082] Step S602: obtaining a call request sent by a call module of the first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal;

[0083] Step S604: sending the call request to a virtual machine associated with the virtual desktop access program to obtain a first response result of the virtual machine to the call request;

[0084] Step S606: receiving a user operation and sending the user operation to the virtual machine, wherein the user operation is obtained according to the first response result;

[0085] Step S608: obtaining a first call instruction for connecting or hanging up generated by the virtual machine according to the user operation; and sending the first call instruction to the call module to connect or hang up a call through the call module;

[0086] Step S610: obtaining a data stream generated in a process of the call connection in a case that the call connection is connected;

[0087] Step S612: sending the data stream to the virtual machine;

[0088] Step S614: receiving a data stream returned by the virtual machine;

[0089] The data stream returned by the virtual machine is voice or video; the virtual machine can output the data stream in the form of voice and / or video.

[0090] In a case that the call connection is a voice call connection, the data stream returned by the virtual machine includes a voice data stream;

[0091] In a case that the call connection is a video call connection, the data stream returned by the virtual machine includes a video data stream and a voice data stream.

[0092] Step S616: in response to a click operation on a hang-up control obtained on a second call interface, sending the click operation to the virtual machine, wherein the second call interface is an image displayed in the process of the call connection;

[0093] Step S618: receiving a second call instruction returned by the virtual machine according to the click operation, and sending the second call instruction to the call module to hang up the call connection through the call module.

[0094] In the embodiment of the present application, the virtual desktop access program sends a data stream to the virtual machine, so that the virtual machine outputs the data stream, thereby improving the experience of voice call or video call.

[0095] In addition, the call connection can be a voice call connection or a video call connection, so that when the virtual desktop access program of the first terminal accesses the virtual desktop, the call module of the first terminal can normally receive or make a voice call or a video call.

[0096] Furthermore, the virtual desktop access program sends the click operation on the hang-up control obtained on the second call interface to the virtual machine, and the virtual machine generates a second call instruction and sends it to the call module, thereby ending the call in time.

[0097] Figure 2 For the composition structure of a call device in a virtual desktop environment according to an embodiment of the present application, refer to Figure 2 The call device mainly includes a virtual desktop access program 2011 (also referred to as an access client) on a first terminal 201 (for example, a smart phone), a phone program 2012 (also referred to as a phone dialing program or a call module) on the smart phone, a data transmission unit 2021 in a virtualization management platform 202 (also referred to as a virtual desktop management platform), and a phone agent unit 20221 in a virtual machine 2022; the virtual machine 2022 can have multiple virtual machines, which can be used to simultaneously access multiple smart phones 201; the virtual machine 2022 can include a first virtual machine VM1 and a second virtual machine VM2; the virtual desktop access program 2011 is an application program that needs to be installed on the smart phone 201 by a user; the smart phone system is not limited to an Android system, an IOS system, or a HongMeng system; the virtualization management platform 202 is a carrier for running the virtual machine 2022; and the three are common deployment implementations of VDI.

[0098] Figure 3 For a flowchart of another call method in a virtual desktop environment according to an embodiment of the present application, the method is applied to Figure 2 The method includes the following steps.

[0099] In step S702, a call module 3012 on a first terminal 301 obtains a call incoming request sent by a second terminal 302, and the call module 3012 sends the call incoming request to a virtual desktop access program 3011; the call incoming request is used to request to establish a call connection between the first terminal 301 and the second terminal 302.

[0100] In step S704, the virtual desktop access program 3011 sends the call incoming request to a data transmission unit 3031 of a virtual desktop management platform 303.

[0101] Step S706: The data transmission unit 3031 sends the call-in request to a phone agent unit 3032 on the virtual machine on the virtual desktop management platform 303;

[0102] Step S708: The phone agent unit 3032 controls the virtual desktop associated with the virtual desktop access program 3011 to present a first call interface in response to the call-in request; the first call interface includes a connect control.

[0103] The connect control can also be referred to as an answer button.

[0104] Step S710: The user clicks the connect control.

[0105] Step S712: The phone agent unit 3032 generates a first call instruction for connection according to the click operation on the connect control obtained in the first call interface.

[0106] Step S714: The phone agent unit 3032 sends the first call instruction to the data transmission unit 3031.

[0107] Step S716: The data transmission unit 3031 sends the first call instruction to the virtual desktop access program 3011.

[0108] Step S718: The virtual desktop access program 3011 sends the first call instruction to the call module 3012 on the first terminal 301.

[0109] Step S720: The call module 3012 connects the phone according to the first call instruction.

[0110] Step S722: The virtual desktop access program 3011 obtains voice data stream and video data stream generated in the process of call connection.

[0111] Step S724: The virtual desktop access program 3011 sends the voice data stream and the video data stream to the data transmission unit 3031.

[0112] Step S726: The data transmission unit 3031 sends the voice data stream and the video data stream to the phone agent unit 3032.

[0113] Step S728: The phone agent unit 3032 controls the virtual desktop associated with the virtual desktop access program 3011 to present a second call interface in response to the obtained data stream; the second call interface includes a hang-up control.

[0114] Step S730: the user clicks the hang-up control;

[0115] Step S732: the phone agent unit 3032 generates a second call instruction for hanging up in response to the click operation on the hang-up control in the second call interface;

[0116] Step S734: the phone agent unit 3032 sends the second call instruction to the data transmission unit 3031;

[0117] Step S736: the data transmission unit 3031 sends the second call instruction to the virtual desktop access program 3011;

[0118] Step S738: the virtual desktop access program 3011 sends the second call instruction to the call module 3012;

[0119] Step S740: the call module 3012 hangs up the phone according to the second call instruction.

[0120] In the embodiment of the application, in the case where the call request is a call incoming request, the virtual desktop management platform can generate a first call instruction for answering in response to the click operation on the answer control in the first call interface, so that the call module can more accurately determine the connection of the call according to the first call instruction.

[0121] The embodiment of the application also provides a call method in a virtual desktop environment, applied to Figure 2 The call device shown in the figure, the method comprises:

[0122] Step S802: the user performs a dialing operation on the call module on the first terminal;

[0123] Step S804: the call module generates a call outgoing request according to the dialing operation and sends the call outgoing request to the virtual desktop access program; the call outgoing request is used to request to establish a call connection between the first terminal and the second terminal;

[0124] It should be noted that a dialing key can also be set in the virtual desktop access program, and the user can perform a dialing operation on the virtual desktop access program; the virtual desktop access program can generate a call outgoing request according to the dialing operation.

[0125] Step S806: the virtual desktop access program sends the call outgoing request to the data transmission unit of the virtual desktop management platform;

[0126] Step S808: The data transmission unit sends the call-out request to a phone agent unit on the virtual machine on the virtual desktop management platform;

[0127] Step S810: The phone agent unit controls the virtual desktop associated with the access client to present a first call interface in response to the call-out request; the first call interface includes a cancel control;

[0128] Step S812: The user clicks the cancel control;

[0129] Step S814: The phone agent unit generates a first call instruction for canceling according to the obtained click operation of the user on the cancel control;

[0130] Step S816: The phone agent unit sends the cancel signal to the data transmission unit;

[0131] Step S818: The data transmission unit sends the first call instruction to the virtual desktop access program;

[0132] Step S820: The virtual desktop access program sends the first call instruction to the call module on the first terminal;

[0133] Step S822: The call module hangs up the phone according to the first call instruction.

[0134] In the embodiments of the present application, in the case where the call request is a call-out request, the virtual desktop management platform can generate a first call instruction for hanging up in response to the click operation on the cancel control obtained in the first call interface, so that the call module can more accurately determine the hanging up of the call connection according to the first call instruction.

[0135] Currently, virtual desktops are gradually replacing traditional personal computers to provide services for users, so that scattered physical machines can be concentrated in data centers to achieve the purpose of centralized management and centralized operation.

[0136] With the continuous development of mobile office, users expect to be able to access the office environment with their smartphones at any time and anywhere to work, and the demand for using smartphones to access virtual desktops increases. In related technologies, desktop cloud products can already support access to virtual desktops through smartphones, but users will inevitably be disturbed by phone calls during the process of using smartphones to access virtual desktops. In related technologies, when there is an incoming call on the smartphone or the user needs to make a call, the use of the virtual desktop will be interrupted by the call or the user needs to exit the virtual desktop to make a call.

[0137] The embodiment of the present application provides a method for answering and making a call in a virtual desktop environment by using a smart phone, which realizes the requirement that a user can normally answer and make a call when accessing the virtual desktop by using the smart phone through the transmission and control of the computer dialing and voice of the smart phone.

[0138] Figure 4 The embodiment of the present application provides another flowchart of the calling method in the virtual desktop environment, referring to Figure 4 When a user accesses the virtual desktop by using the smart phone and a call is incoming, the method can include the following steps.

[0139] Step 402: The second terminal makes a call incoming;

[0140] The second terminal sends a calling incoming request to the first terminal;

[0141] Step 404: The phone program on the first terminal acquires a call incoming signal and sends the call incoming signal to the virtual desktop access program on the first terminal;

[0142] The phone program is a calling module, and the call incoming signal is a signal carried in the calling incoming request.

[0143] Step 406: The virtual desktop access program transmits the call incoming signal to the data transmission unit of the virtualization management platform;

[0144] The virtualization management platform is a virtual desktop management platform.

[0145] Step 408: The data transmission unit of the virtualization management platform transmits the call incoming signal to the phone agent unit of the virtual machine;

[0146] Step 410: The phone agent unit of the virtual machine pops up an answering button in the virtual desktop of the virtual machine;

[0147] Step 412: The user clicks the answering button in the virtual desktop;

[0148] Step 414: The phone agent unit of the virtual machine generates a connection signal for connecting in response to the clicking operation of the user on the answering button in the virtual desktop;

[0149] Step 416: The phone agent unit of the virtual machine transmits the connection signal to the virtual desktop access program through the data transmission unit;

[0150] Step 418: The virtual desktop access program transmits the connection signal to the phone program;

[0151] Step 420: the mobile phone program establishes a call connection between the first terminal and the second terminal;

[0152] Step 422: the virtual desktop access program acquires a data stream generated in the process of the call connection;

[0153] In the case of voice call, the data stream is call voice data, i.e., the data stream is a voice data stream; in the case of video call, the data stream is call voice data and call video data, i.e., the data stream is a voice data stream and a video data stream;

[0154] Step 424: the virtual desktop access program delivers the data stream to a data transmission unit of the virtualization management platform;

[0155] Step 426: the data transmission unit of the virtualization management platform delivers the data stream to a phone agent unit of the virtual machine;

[0156] Step 428: the phone agent unit of the virtual machine outputs the data stream in the virtual desktop of the virtual machine;

[0157] The phone agent unit can output phone voice and video in the virtual desktop; the phone agent unit of the virtual machine displays a hang-up button in the virtual desktop of the virtual machine;

[0158] Step 430: a user clicks the hang-up button in the virtual desktop of the virtual machine;

[0159] Step 432: the phone agent unit of the virtual machine generates a hang-up signal for hanging up in response to the user's clicking operation on the hang-up button in the virtual desktop;

[0160] Step 434: the phone agent unit transmits the hang-up signal to the virtual desktop access program through the data transmission unit;

[0161] Step 436: the virtual desktop access program delivers the hang-up signal to the mobile phone program;

[0162] Step 438: the mobile phone program hangs up the call connection between the first terminal and the second terminal.

[0163] The embodiment of the application proposes a proxy method for smart phone call (incoming / outgoing signal, call voice, call video), which proxies phone related events and data of the smart phone to the virtual desktop, so that the user can also make phone call in the virtual desktop.

[0164] The embodiment of the present application can provide a flexible and convenient phone communication capability in a virtual desktop for a client accessing the virtual desktop through a smart phone, and the use of the virtual desktop is not interrupted; and the office continuity and efficiency of the user using the smart phone to access the virtual desktop for mobile office are greatly improved.

[0165] Based on the foregoing embodiment, the embodiment of the present application provides a call device, which comprises the modules included therein and can be implemented by a processor in a call device (for example, a virtual desktop access program); of course, the device can also be implemented by a specific logic circuit; in the implementation process, the processor can be a central processing unit (CPU), a microprocessor unit (MPU), a digital signal processor (DSP), or a field programmable gate array (FPGA).

[0166] Figure 5 Another component structure diagram of the call device in the virtual desktop environment of the embodiment of the present application is shown in FIG. 5, which comprises a first acquisition module 501, a second acquisition module 502, a first forwarding module 503, and a second forwarding module 504, wherein: Figure 5

[0167] The first acquisition module 501 is configured to acquire a call request sent by a call module of a first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal.

[0168] The second acquisition module 502 is configured to send the call request to a virtual machine associated with the virtual desktop access program to acquire a first response result of the virtual machine to the call request.

[0169] The first forwarding module 503 is configured to receive a user operation and send the user operation to the virtual machine, wherein the user operation is obtained according to the first response result.

[0170] The second forwarding module 504 is configured to acquire a first call instruction for call connection or hang-up generated by the virtual machine according to the user operation; and send the first call instruction to the call module to call or hang up the phone through the call module.

[0171] ​In one embodiment, the second obtaining module 502 is configured to send the call request to a virtual machine associated with the virtual desktop access program, to obtain a first call interface generated by the virtual machine in response to the call request; and the first forwarding module 503 includes a first forwarding submodule configured to send a user operation obtained in the first call interface to the virtual machine.

[0172] In one embodiment, the call request is a call incoming request; accordingly, the first forwarding submodule includes a first forwarding unit configured to send a click operation on a connection control or a hang-up control obtained in the first call interface to the virtual machine; the second forwarding module 504 includes a second forwarding submodule configured to obtain a first call instruction for connection generated by the virtual machine according to the click operation on the connection control, and send the first call instruction to the call module, to connect or hang up a phone through the call module. The second forwarding module 504 includes a third forwarding submodule configured to obtain a first call instruction for hang-up generated by the virtual machine according to the click operation on the hang-up control.

[0173] In one embodiment, the call request is a call outgoing request; accordingly, the first forwarding submodule includes a second forwarding submodule configured to send a click operation on a cancel control obtained in the first call interface to the virtual machine.

[0174] In one embodiment, the second forwarding module 504 includes a fourth forwarding submodule configured to obtain a first call instruction for hang-up generated by the virtual machine according to the click operation on the cancel control.

[0175] In one embodiment, the apparatus further includes a third obtaining module configured to receive a hang-up instruction sent by the call module; a first sending module configured to send the hang-up instruction to the virtual machine; and a first receiving module configured to receive a second response result returned by the virtual machine.

[0176] In one embodiment, in the case that the call connection is connected, the apparatus further includes a fourth obtaining module configured to obtain a data stream generated in the process of the call connection; a second sending module configured to send the data stream to the virtual machine; and a second receiving module configured to receive a data stream returned by the virtual machine.

[0177] In one embodiment, during the process of the call connection, further comprising: a third sending module, configured to send a click operation on a hang-up control obtained on a second call interface to the virtual machine, wherein the second call interface is an image displayed during the process of the call connection; and a third receiving module, configured to receive a second call instruction returned by the virtual machine according to the click operation, and send the second call instruction to the call module, so as to hang up the call connection by the call module.

[0178] In one embodiment, when the call connection is a voice call connection, the data stream returned by the virtual machine comprises a voice data stream; and when the call connection is a video call connection, the data stream returned by the virtual machine comprises a video data stream and a voice data stream.

[0179] It should be noted that, in the embodiments of the present application, if the call method in the virtual desktop environment is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present application can be embodied in the form of a software product, which is stored in a storage medium and includes a plurality of instructions for causing a call device (which can be a mobile phone, a tablet computer, a desktop computer, a personal digital assistant, a navigation instrument, a digital telephone, a video telephone, a television, a sensing device, etc.) to execute all or part of the methods described in the embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a magnetic disk or an optical disk, and various storage media that can store program codes. Thus, the embodiments of the present application are not limited to any specific hardware and software combination.

[0180] The above device embodiments are similar to the descriptions of the above method embodiments, and have similar beneficial effects to the method embodiments. For technical details not disclosed in the device embodiments of the present application, please refer to the descriptions of the method embodiments of the present application.

[0181] Correspondingly, the embodiments of the present application provide a call device, Figure 6 A hardware entity diagram of the call device of the embodiments of the present application is shown in FIG. 6, which comprises a memory 601 and a processor 602, the memory 601 stores a computer program executable on the processor 602, and the processor 602 implements the steps in the call method in the virtual desktop environment of the above embodiments when executing the program. Figure 6

[0182] ​The memory 601 is configured to store instructions and applications executable by the processor 602, and can also cache data (for example, image data, audio data, voice communication data, and video communication data) to be processed by the processor 602 and modules in the communication device 600, and can be implemented by a FLASH or a Random Access Memory (RAM).

[0183] Correspondingly, the embodiment of the present application provides a computer readable storage medium, which stores a computer program. The computer program is executed by a processor to implement the steps in the communication method in the virtual desktop environment provided by the above embodiment.

[0184] It should be noted that the description of the above storage medium and device embodiments is similar to the description of the above method embodiments, and has similar beneficial effects to the device embodiments. For technical details not disclosed in the storage medium and method embodiments of the present application, please refer to the description of the device embodiments of the present application for understanding.

[0185] It should be understood that the "one embodiment" or "an embodiment" mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, "in one embodiment" or "in an embodiment" appearing throughout the specification does not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It should be understood that in various embodiments of the present application, the size of the sequence number of each process does not mean the order of execution, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application. The sequence number of the above embodiments of the present application is only for description, not representing the advantages and disadvantages of the embodiments.

[0186] It should be noted that in this paper, the term "include", "contain" or any other variant thereof is intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or includes elements inherent to such process, method, article or device. Without more limitations, the element defined by the sentence "including a…" does not exclude the presence of other identical elements in the process, method, article or device including the element.

[0187] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other manners. The described device embodiments are merely illustrative, for example, the division of the units is only a logical function division, and there can be another division manner for actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed coupling, or direct coupling or communication connection between the components can be indirect coupling or communication connection through some interfaces, devices or units, and can be electrical, mechanical or other forms.

[0188] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units; they can be located in one place, or distributed on multiple network units; and some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment. In addition, each functional unit in each embodiment of the present application can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be realized in the form of hardware or in the form of hardware plus software functional unit.

[0189] Those of ordinary skill in the art can understand that all or part of the steps of the above-mentioned method embodiments can be completed by program instruction-related hardware, and the aforementioned program can be stored in a computer-readable storage medium, and the program executes the steps including the above-mentioned method embodiments when executed; and the aforementioned storage medium includes mobile storage devices, read-only memories (ROM), magnetic discs or optical discs, and various storage media that can store program codes. Alternatively, when the integrated units of the present application are implemented in the form of software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present application can be embodied in the form of a software product, which is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a mobile phone, a tablet computer, a desktop computer, a personal digital assistant, a navigator, a digital telephone, a video telephone, a television, a sensing device, etc.) to execute all or part of the methods described in the embodiments of the present application. The aforementioned storage medium includes mobile storage devices, ROM, magnetic discs or optical discs, and various storage media that can store program codes.

[0190] The methods disclosed in the several method embodiments of the present application can be combined arbitrarily without conflict to obtain new method embodiments. The features disclosed in the several product embodiments of the present application can be combined arbitrarily without conflict to obtain new product embodiments. The features disclosed in the several method or device embodiments of the present application can be combined arbitrarily without conflict to obtain new method embodiments or device embodiments.

[0191] The above merely illustrates the embodiments of the present application, but the protection scope of the present application is not limited thereto, any person skilled in the art can easily think of changes or replacements within the technical range disclosed by the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A call method in a virtual desktop environment, characterized by, A virtual desktop access program applied to a first terminal, the method comprising: obtaining a call request sent by a call module of the first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal; sending the call request to a virtual machine associated with the virtual desktop access program to obtain a first response result of the virtual machine to the call request; the first response result comprises a first call interface generated by the virtual machine based on the call request; receiving a user operation and sending the user operation to the virtual machine, wherein the user operation is obtained according to the first response result; obtaining a first call instruction for connecting or hanging up generated by the virtual machine according to the user operation; and sending the first call instruction to the call module to connect or hang up the call through the call module; the method further comprises: receiving a hang-up instruction sent by the call module of the second terminal; sending the hang-up instruction to the virtual machine; receiving a second response result returned by the virtual machine; the second response result comprises a display interface generated according to the hang-up instruction.

2. The method of claim 1, wherein, The receiving a user operation and sending the user operation to the virtual machine comprises: in response to the user operation obtained in the first call interface, sending the user operation to the virtual machine.

3. The method of claim 2, wherein, The call request is a call incoming request; Correspondingly, the sending the user operation to the virtual machine in response to the user operation obtained in the first call interface comprises: in response to a click operation on a connect control or a hang-up control obtained in the first call interface, sending the click operation to the virtual machine; The obtaining the first call instruction for connecting or hanging up generated by the virtual machine according to the user operation comprises: obtaining the first call instruction for connecting generated by the virtual machine according to the click operation on the connect control; or, obtaining the first call instruction for hanging up generated by the virtual machine according to the click operation on the hang-up control.

4. The method of claim 2, wherein, The call request is a call outgoing request; Correspondingly, the sending the user operation to the virtual machine in response to the user operation obtained in the first call interface comprises: in response to a click operation on a cancel control obtained in the first call interface, sending the click operation to the virtual machine; The obtaining the first call instruction for connecting or hanging up generated by the virtual machine according to the user operation comprises: obtaining the first call instruction for hanging up generated by the virtual machine according to the click operation on the cancel control.

5. The method according to any one of claims 1 to 4, characterized in that, In the case that the call connection is connected, the method further comprises: obtaining a data stream generated in the process of the call connection; sending the data stream to the virtual machine; receiving the data stream returned by the virtual machine.

6. The method of claim 5, wherein, In the process of the call connection, further comprising: in response to a click operation on a hang-up control obtained on a second call interface, sending the click operation to the virtual machine, wherein the second call interface is an image displayed in the process of the call connection; receive a second call instruction returned by the virtual machine according to the click operation, and send the second call instruction to the call module to hang up the call connection through the call module.

7. The method of claim 5, wherein, In a case where the call connection is a voice call connection, the data stream returned by the virtual machine comprises a voice data stream. In a case where the call connection is a video call connection, the data stream returned by the virtual machine comprises a video data stream and a voice data stream.

8. A call device in a virtual desktop environment, characterized by The apparatus comprises: a first obtaining module configured to obtain a call request sent by a call module of a first terminal; the call request is used to request to establish a call connection between the first terminal and a second terminal; a second obtaining module configured to send the call request to a virtual machine associated with a virtual desktop access program to obtain a first response result of the virtual machine to the call request; the first response result comprises a first call interface generated by the virtual machine based on the call request; a first forwarding module configured to receive a user operation and send the user operation to the virtual machine, wherein the user operation is obtained according to the first response result; a second forwarding module configured to obtain a first call instruction for connecting or hanging up generated by the virtual machine according to the user operation, and send the first call instruction to the call module to connect or hang up a call through the call module; a third obtaining module configured to receive a hang-up instruction sent by the call module of the second terminal; a first sending module configured to send the hang-up instruction to the virtual machine; a first receiving module configured to receive a second response result returned by the virtual machine; the second response result comprises a display interface generated according to the hang-up instruction; The modules comprised in the apparatus are implemented by a processor running the virtual desktop access program.

9. A communication device, comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, characterized in that, The processor implements the steps in the call method in the virtual desktop environment according to any one of claims 1 to 7 when executing the program.

10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program implements the steps in the call method in the virtual desktop environment according to any one of claims 1 to 7 when executed by the processor.

Citation Information

Patent Citations

  • Implementation method and implementation system for communication service in managed terminal operating system

    CN103108010A