Call processing method and device, equipment, storage medium and program product
通过在机器人与用户通话过程中使用状态机来管理坐席工作状态的流转,解决了不当通话处理导致用户结束通话的问题,提高了外呼任务的执行效果和业务质量。
Patent Information
- Application Number
- CN202410818555.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-21
- Publication Date
- 2024-12-17
AI Technical Summary
During the robot's call with the user, improper call processing operations cause the user to end the call, affecting the execution effect of outgoing call tasks. The prior art is difficult to effectively solve this problem.
By forming a state machine in a flow relationship by placing multiple seats of the seats during the target call, the state machine can cover all possible call scenarios. After the call event occurs, the state machine flows from the current state to the appropriate downstream according to the event. In a state, the corresponding call processing operation is performed.
It realizes accurate traffic of call processing and adapts to the current call scenario, avoids users ending calls due to improper call processing, and improves the execution effect of outbound call tasks and service processing quality.
Smart Images

Figure CN119155388A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a call processing method, device, equipment, storage medium and program product. Background Art
[0002] In the process of business processing, robots are often needed to perform outbound call tasks. During the process of the robot talking to the user, improper call processing operations will cause the user to end the call, thereby affecting the execution effect of the outbound call task. Therefore, there is an urgent need for a better call processing solution to improve the execution effect of the outbound call task. Summary of the invention
[0003] The purpose of the embodiments of the present application is to provide a call processing method, device, equipment, storage medium and program product for improving the execution effect of outbound call tasks, thereby improving the quality of business processing.
[0004] In order to achieve the above objectives, the present application embodiment adopts the following technical solutions:
[0005] In a first aspect, an embodiment of the present application provides a call processing method, including:
[0006] Determine a first agent working state to which a first state machine currently flows, wherein the first state machine is used to execute the flow between different agent working states;
[0007] In response to a first call event received during a target call, transferring the first state machine from the first agent working state to the second agent working state based on the first call event;
[0008] Execute the first call processing operation corresponding to the second agent working state.
[0009] In a second aspect, an embodiment of the present application provides a call processing device, including:
[0010] A determination module, used to determine a first agent working state to which a first state machine currently flows, wherein the first state machine is used to execute the flow between different agent working states;
[0011] a transfer module, configured to respond to a first call event received during a target call and transfer the first state machine from the first agent working state to a second agent working state based on the first call event;
[0012] The processing module is used to execute the first call processing operation corresponding to the second agent working state.
[0013] In a third aspect, an embodiment of the present application provides an electronic device, including:
[0014] processor;
[0015] a memory for storing instructions executable by the processor;
[0016] The processor is configured to execute the instructions to implement the call processing method provided in the first aspect.
[0017] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium. When instructions in the storage medium are executed by a processor of an electronic device, the electronic device can execute the call processing method provided in the first aspect.
[0018] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute the call processing method provided in the first aspect.
[0019] At least one of the above technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects:
[0020] By forming multiple agent working states of the agents during the target call into a first state machine according to a first flow relationship, the first state machine can cover all possible call scenarios during the target call; on this basis, after the first call event occurs, the first state machine is transferred from the current first agent working state to the second agent working state based on the first call event, so as to realize accurate transfer between different agent working states of the agents, and this state flow can reflect the current call scenario; further, the first call processing operation corresponding to the second agent working state is executed, so that the call processing performed during the target call can adapt to the current call scenario, avoid the user ending the call due to improper call processing, and help to improve the execution effect of the outbound call task, thereby improving the service processing quality. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0022] Figure 1 A schematic diagram of an implementation environment applicable to the call processing method provided in an embodiment of the present application;
[0023] Figure 2 A flowchart of a call processing method provided for one embodiment of the present application;
[0024] Figure 3 A schematic diagram of a first state machine provided for an embodiment of the present application;
[0025] Figure 4 A flowchart of a call processing method provided for another embodiment of the present application;
[0026] Figure 5 A schematic diagram of a second state machine provided for one embodiment of the present application;
[0027] Figure 6 A schematic diagram of the structure of a call processing device provided by an embodiment of the present application;
[0028] Figure 7 A schematic diagram of the structure of an electronic device provided for one embodiment of the present application. DETAILED DESCRIPTION
[0029] In order to make the purpose, technical solution and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described below in combination with the specific embodiments of the present application and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.
[0030] The terms "first", "second", etc. in this specification and claims are used to distinguish similar objects, and are not used to describe a particular order or precedence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present application can be implemented in an order other than those illustrated or described herein. In addition, "and / or" in this specification and claims means at least one of the connected objects, and the character " / " generally means that the objects associated with each other are in an "or" relationship.
[0031] Some concept descriptions:
[0032] Finite-State Machine (FSM): abbreviated as state machine, is a mathematical model that represents a finite number of states and the flow and actions between these states.
[0033] FreeSWITCH (FS): is an open source telephone soft switch platform that supports real-time audio and video communications and conferencing, and supports multiple communication protocols such as Session Initiation Protocol (SIP) and Web Real-Time Communication (WebRTC) protocol.
[0034] In the process of business processing, it is often necessary to use robots to perform outbound call tasks. For example, in the service recommendation scenario, it is necessary to use robots to recommend a service to users through outbound call tasks. During the process of the robot talking to the user, improper call handling operations will cause the user to end the call, which will affect the execution effect of the outbound call task.
[0035] In order to improve the execution effect of outbound call tasks, an embodiment of the present application proposes a call processing method, which forms a first state machine according to a first flow relationship for multiple agent working states of the agents during a target call, and the first state machine can cover all possible call scenarios during the target call; on this basis, after the first call event occurs, the first state machine is transferred from the current first agent working state to the second agent working state based on the first call event, so as to realize accurate transfer between different agent working states of the agents, and this state flow can reflect the current call scenario; further, the first call processing operation corresponding to the second agent working state is executed, so that the call processing performed during the target call can adapt to the current call scenario, avoid the user ending the call due to improper call processing, and help improve the execution effect of the outbound call task, thereby improving the service processing quality.
[0036] It should be understood that the call processing method provided in the embodiment of the present application can be executed by an electronic device. The so-called electronic device here can include terminal devices, such as smart phones, tablet computers, laptops, desktop computers, intelligent voice interaction devices, smart home appliances, smart watches, vehicle terminals, aircraft, etc.; or, the electronic device can also include a server, such as an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services.
[0037] The technical solutions provided by various embodiments of the present application are described in detail below in conjunction with the accompanying drawings.
[0038] In order to facilitate the understanding of the technical solution provided in the embodiments of the present application, firstly Figure 1 , the implementation environment applicable to the technical solution provided in the embodiment of the present application is described. It should be understood that the technical solution provided in the embodiment of the present application is applicable to Figure 1 The implementation environment shown is only an exemplary description and should not be understood as a limitation on the implementation environment to which the technical solution is applicable.
[0039] like Figure 1 As shown, an implementation environment applicable to the technical solution provided in the embodiment of the present application includes a user terminal and an outbound call server.
[0040] The user end may include electronic devices with call functions, such as smart phones, tablet computers, intelligent voice interaction devices, smart watches, car terminals and other terminal devices.
[0041] The outbound call server can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services. The outbound call server establishes a call connection with the user end through the robot deployed (such as an AI call robot), and communicates with the user end through the robot to perform outbound call tasks, such as recommending a service or product to the user, answering the user's questions, etc.
[0042] During the target call between the user and the robot, the outbound call server can obtain the call content data between the user and the robot and display it to the agent, so that the agent can choose the appropriate time to intervene, such as choosing to monitor the call audio between the user and the robot, or choosing to talk directly to the user.
[0043] In order to control the working status of the agent so as to take appropriate call operations, the outbound call server forms a first state machine according to a first flow relationship between multiple agent working states of the agent during the target call. The first state machine can cover all possible call scenarios during the target call. On this basis, the agent is controlled to flow between multiple agent working states based on the first state machine, and the call processing operation corresponding to the flowed working state is executed.
[0044] Based on the above implementation environment, the present application embodiment provides a call processing method. Figure 2 , is a flowchart of a call processing method provided by an embodiment of the present application, the method comprising the following steps:
[0045] S202: Determine the first agent working state to which the first state machine currently flows.
[0046] The first state machine is used to execute the flow between different seat working states. Specifically, the first state machine includes a first flow relationship between multiple seat working states and a first flow triggering event. The first flow triggering event refers to an event that triggers the flow from one seat working state to another seat working state. The first state machine can be set according to actual needs, and the embodiment of the present application is not limited to this.
[0047] Optionally, during the target call process, the first agent working state to which the first state machine currently flows can be determined, wherein the target call process is a call process between a user and a robot. Determining the first agent working state of the agent during the target call process is conducive to the subsequent timely introduction of the agent to monitor the target call process or intervene in the interaction, thereby ensuring the quality and effect of the target call process.
[0048] As an example, Figure 3As shown, the above-mentioned multiple agent working states include: interactive preparation state, listening preparation state, takeover preparation state, listening state, and takeover state. Among them, the interactive preparation state is used to indicate that the agent chooses to listen to or take over the call between the robot and the user, the listening preparation state is used to indicate that the agent is ready to listen to the call between the robot and the user, the takeover preparation state indicates that the agent is ready to take over the call between the robot and the user, the listening state is used to indicate that the agent listens to the call between the robot and the user, and the takeover state indicates that the agent is talking to the user.
[0049] The first flow relationship and the first flow triggering event between the above-mentioned multiple seat working states specifically include:
[0050] In the interactive preparation state, if a monitoring event is received, the state can be transferred to the monitoring preparation state; if a supervision event is received, the state can be transferred to the takeover preparation state;
[0051] In the monitoring preparation state, if a monitoring success event is received, the flow can be transferred to the monitoring state; if any of the waiting timeout event, call hang-up event and transfer to manual event is received, the flow can be transferred to the interaction preparation state;
[0052] In the monitoring state, if a transfer event is received, the state can be switched to the takeover state; if a transfer event or a call hang-up event is received, the state can be switched to the interaction preparation state;
[0053] In the takeover preparation state, if a takeover success event is received, the flow can be transferred to the takeover state; if a waiting timeout event or a call hang-up event is received, the flow can be transferred to the interaction preparation state;
[0054] In the takeover state, if a call hang-up event is received, the state may be switched to the interaction preparation state.
[0055] As another example, Figure 3 As shown, the above-mentioned multiple agent working states may also include: a pause preparation state, a pause state, and a release pause state. The pause preparation state is used to indicate that the agent is ready to pause the call with the user, the pause state is used to indicate that the call between the agent and the user has been paused, and the release pause state indicates that the call between the agent and the user has been resumed.
[0056] The first flow relationship and the first flow trigger event between these seat working states also include: in the takeover state, if a pause initiation event is received, the flow is transferred to the pause preparation state; in the takeover state, if a pause release event is received, the flow is transferred to the pause release state; in the pause preparation state, if a pause success event is received, the flow is transferred to the pause state; in the pause state, if a release success event is received, the flow is transferred to the pause release state.
[0057] It can be seen that the first state machine mentioned above covers all the working states of the agents in the call life cycle between the robot and the user, and the first flow relationship between these agent working states covers all the interactive scenarios in the call life cycle. The first flow triggering events between these agent working states ensure that all working states, events, actions, etc. in the call are uniformly coordinated and correctly processed, thereby realizing call control in all interactive scenarios and improving the execution effect of outbound call tasks. For example, the interactive scenarios covered by the first flow relationship include at least:
[0058] Scenario 1: The agent ends the call after completing monitoring, that is, initiate monitoring -> hang up monitoring -> end monitoring.
[0059] Scenario 2: The user ends the call while the agent is monitoring, i.e. monitoring is initiated -> user hangs up -> monitoring ends;
[0060] Scenario 3: The user is transferred to manual operation during monitoring. Initiate monitoring -> transfer to manual operation -> end monitoring.
[0061] Scenario 4: The agent transfers the monitoring during monitoring. Initiate monitoring -> transfer -> end monitoring.
[0062] Scenario 5: The call is ended after the takeover is completed. Initiate takeover -> hang up -> end takeover.
[0063] In the above S202, the first agent working state refers to the working state determined from a plurality of agent working states and to which the first state machine currently flows.
[0064] In one embodiment, the first state machine may start to flow from the interactive ready state. Specifically, before the above S202, the call control method provided in the embodiment of the present application may also include: when the first call connection between the user and the robot is established, driving the first state machine to flow to the interactive ready state; in response to successfully flowing to the interactive ready state, performing voice recognition on the real-time call voice between the user and the robot to obtain call content data; and displaying the call content data to the agent.
[0065] For example, the automatic speech recognition (ASR) technology can be used to convert the acquired real-time call voice into text-based call content data and then display it to the agent. This helps the agent intervene in the target call process at the appropriate time and in an appropriate manner, avoiding the user ending the call due to inappropriate timing or method of agent intervention, ensuring that the communication with the user is as complete as possible, thereby improving the execution effect of the outbound call task.
[0066] S204: In response to a first call event received during a target call, transfer the first state machine from a first agent working state to a second agent working state based on the first call event.
[0067] The first call event refers to an event that occurs during the target call process. The target call process is the call process between the user and the robot. The first call event can be triggered by the user, such as the user ending the call; the first call event can also be triggered by the robot, such as the robot inputting a pause call command; the first call event can also be triggered by the agent, such as the agent choosing to take over the robot and talk directly to the user, etc.
[0068] In one embodiment, the above S204 includes the following steps: S241, based on the first flow relationship, determining the next seat working state of the first seat working state from multiple seat working states; S242, based on the first call event and the first flow trigger event between the first seat working state and the next seat working state, determining the second seat working state from the next seat working state; S243, transferring the first state machine from the first seat working state to the second seat working state.
[0069] The next seat working state refers to a seat working state that can be directly transferred from the first seat working state. If the first transfer triggering event between the first seat working state and the next seat working state includes a first call event, the next seat working state can be determined as the second seat working state.
[0070] Through the above implementation method, the next seat working state of the first seat working state is first determined, and then based on the first flow trigger event and the first call event between the two, the state flow of the first state machine can be quickly and accurately realized, thereby realizing the control of the seat working state during the target call between the robot and the user.
[0071] As an example, Figure 3 As shown, if the first agent working state is the interactive ready state, the next agent working state includes: the listening ready state and the takeover ready state. In this case, the first flow triggering event between the interactive ready state and the listening ready state includes: the agent requests to access the call between the user and the robot (i.e., initiates a listening event). The first flow triggering event between the interactive ready state and the takeover state includes: the agent requests to talk to the user (i.e., initiates a takeover event).
[0072] The flow from the interaction preparation state to the monitoring preparation state or the takeover preparation state covers the call scenarios in which the agent chooses to join the call between the user and the robot or the agent replaces the robot to talk to the user during the target call between the user and the robot.
[0073] As another example, Figure 3 As shown, if the first agent working state is the listening ready state, the next agent working state includes: the listening state and the interactive ready state. In this case, the first flow triggering event between the listening ready state and the listening state includes: the second call connection between the agent, the user and the robot is successfully established within the first preset time (i.e., the listening success event). The first flow triggering event between the listening ready state and the interactive ready state includes: the second call connection is not successfully established within the first preset time (i.e., the waiting timeout event), the user ends the call (i.e., the call hang-up event), and the user requests to transfer to the agent (i.e., the transfer to manual event).
[0074] Flowing from the listening ready state to the listening ready state covers the call scenario in which the agent successfully connects to the call between the user and the robot during the target call; flowing from the listening ready state to the interactive ready state covers the call scenario in which abnormalities occur in the listening preparation stage during the target call between the user and the robot. By flowing to the interactive ready state, unified processing of such abnormalities can be achieved, ensuring that the first state machine is restored to the initial working state, and further ensuring that the first state machine can continue to execute according to the correct state flow process.
[0075] As another example, Figure 3 As shown, if the first agent working state is the takeover preparation state or the listening state, the next agent working state includes: the takeover state and the interaction preparation state.
[0076] Among them, the first flow trigger event between the takeover preparation state and the takeover state includes: successfully establishing a third call connection between the seat and the user within the second preset time period; the first flow trigger event between the monitoring state and the takeover state includes: the seat requests to talk with the user.
[0077] The first flow triggering event between the takeover preparation state and the interaction preparation state includes: the third call connection is not successfully established within the second preset time length, and the user ends the call; the first flow triggering event between the monitoring state and the interaction preparation state includes: the seat requests to talk to the user, and the user ends the call.
[0078] The flow from the takeover preparation state to the takeover state covers the call scenario in which the agent successfully takes over the call between the robot and the user during the target call between the user and the robot; the flow from the monitoring state to the takeover state covers the scenario in which the agent promptly takes over the call between the robot and the user according to the monitored call voice during the target call between the user and the robot; the flow from the takeover preparation state or the monitoring state to the interaction preparation state covers the call scenario in which an exception occurs in the takeover preparation stage or the monitoring process during the target call between the user and the robot. Through this flow method, unified processing of such exceptions can be achieved to ensure that the first state machine is restored to the initial working state, and then ensure that the first state machine can continue to execute according to the correct state flow process.
[0079] As another example, Figure 3 As shown, if the first agent working state is the takeover state, the next agent working state includes: the interactive preparation state. The first flow triggering event between the takeover state and the interactive preparation state includes: the user ends the call; the first call processing operation corresponding to the interactive preparation state is: displaying the call content data between the user and the robot to the agent.
[0080] The transition from the takeover state to the interaction preparation state covers the call scenario in which the agent takes over abnormally during the call between the user and the robot target. By transferring to the interaction preparation state, unified processing of such exceptions can be achieved, ensuring that the first state machine is restored to the interaction preparation state, unified processing of such exceptions can be achieved, ensuring that the first state machine is restored to the initial working state, and further ensuring that the first state machine can continue to execute according to the correct state flow process.
[0081] As another example, Figure 3 As shown, if the first agent working state is the takeover state, the next agent working state includes the pause preparation state. The first flow triggering event between the takeover state and the pause preparation state includes: the agent requests to suspend the call with the user (ie initiates a pause event).
[0082] The flow from the takeover state to the pause preparation state covers the call scenario in which the agent pauses the call during the call with the user target, thereby realizing automatic state control in this call scenario.
[0083] As another example, Figure 3 As shown, if the first agent working state is the pause preparation state, the next agent working state includes the pause state. The first flow triggering event between the pause preparation state and the pause state includes: successfully pausing the call between the agent and the user within the third preset time length.
[0084] The flow from the pause preparation state to the pause state covers the call scenario from the agent initiating a pause to the successful pause of the call during the call between the agent and the user target, thereby realizing automatic state control in this call scenario.
[0085] As another example, Figure 3 As shown, if the first agent working state is the pause state, the next agent working state includes the release pause state. The first flow triggering event between the pause state and the release pause state includes: the agent requests to resume the call with the user.
[0086] The flow from the pause state to the unpause state covers the call scenario from the successful suspension of the call between the agent and the user target to the agent's request to resume the call, thereby realizing automatic state control in this call scenario.
[0087] As another example, Figure 3 As shown, if the first agent working state is the unpause state, the next agent working state includes the takeover state. The first flow triggering event between the unpause state and the takeover state includes: successfully resuming the call with the user within the fourth preset time length.
[0088] From releasing the pause state to taking over the state, it covers the call scenarios from the agent requesting to resume the call to the successful resumption of the call during the call between the agent and the user target, thereby realizing automatic state control in this call scenario.
[0089] The embodiment of the present application shows some specific implementation methods of the above S204. Of course, it should be understood that the above S204 can also be implemented in other ways, and the embodiment of the present application is not limited to this. For example, in another implementation, the above S204 includes the following steps: from the first flow trigger event between different seat working states, determine the first flow trigger event including the first call event and the two seat working states connected by the first flow trigger event; if the working state located upstream of the two seat working states is the first seat working state, then the seat working state located downstream of the two seat working states is used as the second seat working state.
[0090] In another embodiment of the present application, before the above S204, the method further includes: performing a locking operation on the first seat working state. Correspondingly, after the above S204, the method further includes: performing a lock releasing operation on the first seat working state.
[0091] For example, if the first agent working state to which the first state machine currently flows is the interactive ready state, if it is to flow to the listening ready state, the interactive ready state is first locked, and then the first state machine is transferred from the interactive ready state to the listening ready state; after the state transfer is completed, the interactive ready state is locked and released.
[0092] The locking operation and the releasing operation of the first seat working state can be implemented by various technical means in the art. Among them, the lock here can be a pessimistic lock. In this way, the first seat working state is only transferred once, and the state idempotent control of the first state machine is realized.
[0093] In addition, the process of executing the state transfer of the first state machine and the target call process are executed asynchronously, so that the operation of the user and the agent will not be blocked. In addition, after the state transfer is completed, the next operation can be performed by means of event notification.
[0094] S206, executing a first call processing operation corresponding to the second agent working state.
[0095] In the embodiment of the present application, different agent working states in the first state machine have corresponding first call processing operations. Different agent working states correspond to different first call processing operations, which is beneficial to avoid the user ending the call due to improper call processing during the target call between the robot and the user, thereby improving the execution effect of the outbound call task and further improving the service processing quality.
[0096] After the first state machine is transferred from the first agent working state to the second agent working state, that is, each time the first state machine completes a state transfer, the first call processing operation corresponding to the transferred second agent working state is executed.
[0097] As an example, take the above Figure 3 Taking the first state machine shown as an example, if the second agent working state is the interactive ready state, the first call processing operation includes: displaying the call content data between the user and the robot to the agent. If the first agent working state is any one of the listening ready state, the takeover ready state, the listening state, and the takeover state, and the second agent working state is the interactive ready state, the first call processing operation may also include: if a destruction event is received, destroying the first state machine.
[0098] If the working state of the second agent is the monitoring preparation state, the first call processing operation includes: establishing a second call connection between the agent, the user and the robot. For example, if the call between the user and the robot is realized through FreeSWITCH, a monitoring call command is sent to FreeSWITCH to request that the agent be connected to the call between the user and the robot. The monitoring call command is: originate{originateion_uuid=agent call ID}&eavesdrop(user call ID).
[0099] If the working state of the second agent is the takeover preparation state, the first call processing operation includes: establishing a third call connection between the agent and the user. For example, if the call between the user and the robot is implemented through FreeSWITCH, a takeover call command is sent to FreeSWITCH to request to establish a third call connection between the agent and the user. The command for monitoring the call is: originate{originateion_uuid=agent call ID}&uuid_bridge agent call ID user call ID.
[0100] If the working state of the second agent is the monitoring state, the first call processing operation includes: transmitting the user voice input by the user to the agent through the second call connection.
[0101] If the working state of the second agent is the takeover state, the first call processing operation includes: prompting the agent to have a call with the user.
[0102] If the working state of the second agent is a pause preparation state, the first call processing operation includes: prompting the user that the call is about to be paused.
[0103] If the working state of the second agent is a pause state, the first call processing operation includes: playing a preset pause speech tone for the user.
[0104] If the working state of the second agent is to release the pause state, the first call processing operation includes: prompting the user that the call is about to be resumed.
[0105] In another embodiment of the present application, based on the pre-established second state machine, the user's multiple user call states are transferred, thereby achieving accurate and unified control of the user's call state in various call scenarios. Figure 4 , is a flowchart of a call processing method provided by an embodiment of the present application, the method comprising the following steps:
[0106] S402: Determine the first agent working state to which the first state machine currently flows.
[0107] Among them, the specific implementation of S402 is the same as above Figure 1 The specific implementation of S202 in the illustrated embodiment is similar and will not be described in detail.
[0108] S404: Determine the first user call state to which the second state machine currently flows.
[0109] The second state machine is used to execute the flow between different user call states. Specifically, the second state machine includes a second flow relationship between multiple user call states and a second flow trigger event. The second flow trigger event refers to an event that flows from one user call state to another user call state. The second state machine can be set according to actual needs, and the embodiment of the present application does not limit this.
[0110] S406: In response to a first call event received during a target call, transfer the first state machine from a first agent working state to a second agent working state based on the first call event.
[0111] Among them, the specific implementation of S406 is the same as above Figure 1 The specific implementation of S204 in the illustrated embodiment is similar and will not be described in detail.
[0112] S408, executing the first call processing operation corresponding to the second agent working state.
[0113] Among them, the specific implementation of S408 is the same as above Figure 1 The specific implementation of S206 in the illustrated embodiment is similar and will not be described in detail.
[0114] S410: Based on the first call event, transfer the second state machine from the first user call state to the second user call state.
[0115] In one embodiment, the above S410 includes the following steps: based on the second flow relationship, determining the next user call state of the first user call state from multiple user call states; based on the first call event and the second flow trigger event between the first user call state and the next user call state, determining the second user call state from the next user call state; and transferring the second state machine from the first user call state to the second user call state.
[0116] The next user call state refers to a working state that can be directly transferred from the first user call state. If the second transfer triggering event between the first user call state and the next user call state includes the first call event, the next user call state can be determined as the second user call state.
[0117] Through the above implementation, the next user call state of the first user call state is first determined, and then based on the second flow trigger event and the first call event between the two, the state flow of the second state machine can be quickly and accurately realized, thereby realizing the control of the user's call state during the target call between the robot and the user.
[0118] As an example, Figure 5As shown, the above-mentioned multiple user call states include: robot call state, monitored state, taken over state and manual answering state. Among them, the robot call state is used to indicate that the user is talking to the robot. The monitored state is used to indicate that the user's current call is being monitored by the agent. The taken over state is used to indicate that the user is currently talking to the agent. The manual answering state is used to indicate that the call is currently being transferred to the agent.
[0119] If the first user call state is the robot call state, the next user call state includes: monitored state and taken over state. The second flow triggering event between the robot call state and the monitored state includes: the second call connection between the agent, the user and the robot is successfully established within the first preset time (i.e., the monitoring success event); the second flow triggering event between the robot call state and the taken over state includes: the third call connection between the agent and the user is successfully established within the second preset time (i.e., the takeover success event).
[0120] The flow from the robot call state to the monitored state or the supervised state covers the call scenarios in which the agent chooses to connect the call between the user and the robot target or chooses to replace the call between the robot and the user during the call, thereby realizing automatic control of the user's call state in such call scenarios.
[0121] If the first user's call status is the monitored state, the next user's call status includes: the manual pick-up state and the taken-over state. The second flow triggering event between the monitored state and the manual pick-up state includes: the user requests to transfer to the agent (i.e., the transfer event). The second flow triggering event between the monitored state and the taken-over state includes: the agent requests to talk to the user (i.e., the transfer event).
[0122] The flow from the monitored state to the manually answered state covers the call scenario where the user is transferring to an agent during a call with the robot target; the flow from the monitored state to the taken over state covers the call scenario where the user is successfully transferring to an agent during a call with the robot target. In this way, the user's call status can be automatically controlled in these call scenarios.
[0123] The embodiment of the present application shows some specific implementation methods of the above S410. Of course, it should be understood that the above S410 can also be implemented in other ways, and the embodiment of the present application is not limited to this. For example, in another implementation, the above S410 includes the following steps: from the second flow triggering event between different user call states, determine the second flow triggering event including the first call event and the two user call states connected to the second flow triggering event; if the user call state located upstream of the two user call states is the first user call state, then the user call state located downstream of the two user call states is used as the second user call state.
[0124] In another embodiment of the present application, before the above S410, the method further includes: performing a lock operation on the first user's call status. Correspondingly, after the above S410, the method further includes: performing a lock release operation on the first user's call status.
[0125] For example, if the first user call state that the second state machine currently flows to is the monitored state, if it wants to flow to the taken over state, first perform a locking operation on the monitored state, and then transfer the second state machine from the monitored state to the taken over state; after the state flow is completed, perform a lock release operation on the monitored state.
[0126] The locking operation and the releasing operation on the first user's call state can be implemented by various technical means in the art. Among them, the lock here can be a pessimistic lock. In this way, the first user's call state is only transferred once, and the state idempotent control of the second state machine is realized.
[0127] In addition, the process of executing the state transfer of the second state machine and the target call process are executed asynchronously, so that the operation of the user and the agent will not be blocked. In addition, after the state transfer is completed, the next operation can be performed by means of event notification.
[0128] S412: Execute a second call processing operation corresponding to the second user's call status.
[0129] In the embodiment of the present application, different user call states in the second state machine have corresponding second call processing operations. Different second call processing operations corresponding to different user call states are different, which is conducive to avoiding the user from ending the call due to improper call processing during the target call between the robot and the user, thereby improving the execution effect of the outbound call task and further improving the service processing quality.
[0130] After the second state machine is transferred from the first user call state to the second user call state, that is, each time the second state machine completes a state transfer, the second call processing operation corresponding to the transferred second user call state is executed.
[0131] As an example, take the above Figure 5 Taking the second state machine shown as an example, if the second user's call state is the robot call state, the second call processing operation includes: pushing a connection prompt message to the user. The connection prompt message is used to prompt the user that he is currently talking to the robot.
[0132] If the second user's call state is monitored, the second call processing operation includes at least one of the following operations: pushing a monitoring prompt message to the user, and destroying the second state machine when the user ends the call (i.e., receiving a call hang-up event). The monitoring prompt message is used to remind the user that the current call is being monitored by the agent.
[0133] If the second user's call state is in the taken-over state, the second call processing operation includes at least one of the following operations: pushing a take-over prompt message to the user, and destroying the second state machine when the user ends the call (i.e., receives a call hang-up event). The take-over prompt message is used to remind the user that he is currently talking to an agent.
[0134] If the second user's call state is a manual answering state, the second call processing operation includes at least one of the following operations: playing a preset speech voice to the user, and destroying the second state machine after successfully transferring the seat. The preset speech voice is used to ease the user's mood of waiting for the transfer seat and reduce the possibility of the user ending the call during the waiting process.
[0135] One or more embodiments of the present application provide a call processing method, which forms a first state machine according to a first flow relationship of multiple agent working states of the agents during a target call, and the first state machine can cover all possible call scenarios during the target call; on this basis, after the first call event occurs, the first state machine is transferred from the current first agent working state to the second agent working state based on the first call event, so as to achieve accurate transfer between different agent working states, and this state transfer can reflect the current call scenario; further, the first call processing operation corresponding to the second agent working state is executed, so that the call processing performed during the target call can adapt to the current call scenario, avoid the user ending the call due to improper call processing, and help to improve the execution effect of the outbound call task, thereby improving the service processing quality.
[0136] The above is a description of a specific embodiment of the specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0137] Based on the same inventive concept, the present application also provides a call processing device. Figure 6 , is a structural diagram of a call processing device 600 provided in an embodiment of the present application. The device 600 includes: a determination module 610, a flow module 620 and a processing module 630.
[0138] The determination module 610 is used to determine the first agent working state to which the first state machine currently flows, and the first state machine is used to execute the flow between different agent working states.
[0139] The transfer module 620 is configured to respond to a first call event received during a target call and transfer the first state machine from the first agent working state to a second agent working state based on the first call event.
[0140] The processing module 630 is used to execute the first call processing operation corresponding to the second agent working state.
[0141] In another embodiment, the first state machine includes: a first flow relationship between a plurality of agent working states, a first flow triggering event between the plurality of agent working states;
[0142] The flow module is used for:
[0143] Based on the first flow relationship, determining a next seat working state of the first seat working state from the multiple seat working states;
[0144] Based on the first call event and a first transfer triggering event between the first agent working state and the next agent working state, determining a second agent working state from the next agent working state;
[0145] The first state machine is transferred from the first agent working state to the second agent working state.
[0146] In another embodiment, the target call process is a call process between a user and a robot, and the multiple agent working states include: interaction preparation state, listening preparation state, takeover preparation state, listening state, and takeover state;
[0147] If the working state of the second agent is the interaction ready state, the first call processing operation includes: displaying the call content data between the user and the robot to the agent;
[0148] If the working state of the second agent is the monitoring ready state, the first call processing operation includes: establishing a second call connection between the agent, the user and the robot;
[0149] If the working state of the second agent is the takeover preparation state, the first call processing operation includes: establishing a third call connection between the agent and the user;
[0150] If the working state of the second agent is the monitoring state, the first call processing operation includes: transmitting the user voice input by the user to the agent through the second call connection;
[0151] If the working state of the second agent is the takeover state, the first call processing operation includes: prompting the agent to have a call with the user.
[0152] In another embodiment, if the first agent working state is the interaction ready state, the next agent working state includes: the monitoring ready state and the takeover ready state;
[0153] The first flow triggering event between the interaction preparation state and the monitoring preparation state includes: the agent requests to access the call between the user and the robot;
[0154] The first flow triggering event between the interaction preparation state and the takeover preparation state includes: the agent requests to talk with the user.
[0155] In another embodiment, if the first agent working state is the listening ready state, the next agent working state includes: the listening state and the interaction ready state;
[0156] The first flow triggering event between the monitoring preparation state and the monitoring state includes: successfully establishing a second call connection between the seat, the user and the robot within a first preset time period;
[0157] The first transition triggering event between the monitoring ready state and the interaction ready state includes: the second call connection is not successfully established within the first preset time period, the user ends the call, and the user requests to transfer the seat.
[0158] In another embodiment, if the first agent working state is the takeover preparation state or the listening state, the next agent working state includes: the takeover state and the interaction preparation state;
[0159] The first flow triggering event between the takeover preparation state and the takeover state includes: successfully establishing a third call connection between the seat and the user within a second preset time period;
[0160] The first transition triggering event between the takeover preparation state and the interaction preparation state includes: the third call connection is not successfully established within the second preset time period, and the user ends the call;
[0161] The first flow triggering event between the monitoring state and the takeover state includes: the agent requests to talk with the user;
[0162] The first transition triggering event between the listening state and the interaction preparation state includes: the agent requests to talk with the user, and the user ends the call.
[0163] In another embodiment, if the first agent working state is the takeover state, the next agent working state includes: the interaction ready state;
[0164] The first transition triggering event between the takeover state and the interaction preparation state includes: the user ends the call.
[0165] In another embodiment, the flow module is further used to drive the first state machine to flow to the interaction preparation state when the first call connection between the user and the robot is established;
[0166] The call processing device also includes:
[0167] a recognition module, configured to perform speech recognition on the real-time conversation speech between the user and the robot in response to successfully transferring to the interaction preparation state, and obtain conversation content data;
[0168] A display module is used to display the call content data to the agent.
[0169] In another embodiment, the flow module is further used for:
[0170] Before transferring the first state machine from the first agent working state to the second agent working state based on the first call event, performing a locking operation on the first agent working state;
[0171] After the first state machine is transferred from the first agent working state to the second agent working state based on the first call event, a lock release operation is performed on the first agent working state.
[0172] In another embodiment, the determination module is further used to determine the first user call state to which the second state machine currently flows, and the second state machine is used to execute the flow between different user call states;
[0173] The transfer module is further configured to transfer the second state machine from the first user call state to the second user call state based on the first call event;
[0174] The processing module is further used to execute a second call processing operation corresponding to the second user's call status.
[0175] In another embodiment, the second state machine includes: a second flow relationship between a plurality of user call states, a second flow triggering event between the plurality of user call states;
[0176] The flow module is used for:
[0177] Based on the second flow relationship, determining a next user call state of the first user call state from the multiple user call states;
[0178] Based on the first call event and a second flow triggering event between the first user call state and the next user call state, determining a second user call state from the next user call state;
[0179] The second state machine is transferred from the first user call state to the second user call state.
[0180] In another embodiment, the target call process is a call process between a user and a robot, and the multiple user call states include: a robot call state, a monitored state, a taken-over state, and a manually answered state;
[0181] If the second user call state is the robot call state, the second call processing operation includes: pushing a connection prompt message to the user;
[0182] If the second user's call state is the monitored state, the second call processing operation includes at least one of the following operations: pushing a monitoring prompt message to the user, and destroying the second state machine when the user ends the call;
[0183] If the second user's call state is in the taken-over state, the second call processing operation includes at least one of the following operations: pushing a take-over prompt message to the user, and destroying the second state machine when the user ends the call;
[0184] If the second user call state is a manual answering state, the second call processing operation includes at least one of the following operations: playing a preset speech voice to the user, and destroying the second state machine after successfully transferring the seat.
[0185] In another embodiment, if the first user call state is a robot call state, the next agent working state includes: the monitored state and the taken-over state;
[0186] The second transition triggering event between the robot's call state and the monitored state includes: successfully establishing a second call connection between the agent, the user, and the robot within a first preset time period;
[0187] The second transition triggering event between the robot call state and the taken-over state includes: successfully establishing a third call connection between the agent and the user within a second preset time period.
[0188] In another embodiment, if the first user's call state is the monitored state, the next agent's working state includes: the manual pick-up state and the taken-over state;
[0189] The second flow triggering event between the monitored state and the manually answered state includes: the user requests to transfer the seat;
[0190] The second flow triggering event between the monitored state and the taken-over state includes: the agent requests to talk with the user.
[0191] Obviously, the call processing device 600 provided in the embodiment of the present application can be used as the above Figure 2 The execution subject of the call processing method shown in the figure can realize the call processing device in Figure 2 The functions realized are as follows. Since the principles are the same, they will not be described in detail.
[0192] Figure 7 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present application. Figure 7 At the hardware level, the electronic device includes a processor, and optionally also includes an internal bus, a network interface, and a memory. The memory may include a memory, such as a high-speed random access memory (RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk storage. Of course, the electronic device may also include hardware required for other services.
[0193] The processor, network interface and memory can be interconnected through an internal bus, which can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 7 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0194] The memory is used to store the program. Specifically, the program may include a program code, and the program code includes a computer operation instruction. The memory may include a memory and a non-volatile memory, and provides instructions and data to the processor.
[0195] The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it, forming a call processing device at the logical level. The processor executes the program stored in the memory and is specifically used to perform the following operations:
[0196] Determine a first agent working state to which a first state machine currently flows, wherein the first state machine is used to execute the flow between different agent working states;
[0197] In response to a first call event received during a target call, transferring the first state machine from the first agent working state to the second agent working state based on the first call event;
[0198] Execute the first call processing operation corresponding to the second agent working state.
[0199] The above application Figure 2 The method performed by the call processing device disclosed in the illustrated embodiment can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as being executed by a hardware decoding processor, or can be executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0200] The electronic device may also perform Figure 2 The method is implemented by the call processing device. Figure 2 , Figure 4The functions of the illustrated embodiment will not be described in detail in the embodiments of the present application.
[0201] Of course, in addition to software implementation methods, the electronic device of the present application does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0202] The embodiment of the present application also provides a computer-readable storage medium, which stores one or more programs, wherein the one or more programs include instructions, which, when executed by a portable electronic device including a plurality of application programs, enable the portable electronic device to execute Figure 2 The method of the embodiment shown is specifically used to perform the following operations:
[0203] Determine a first agent working state to which a first state machine currently flows, wherein the first state machine is used to execute the flow between different agent working states;
[0204] In response to a first call event received during a target call, transferring the first state machine from the first agent working state to the second agent working state based on the first call event;
[0205] Execute the first call processing operation corresponding to the second agent working state.
[0206] An embodiment of the present application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute a call processing method as provided in the embodiment of the present application.
[0207] In short, the above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
[0208] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0209] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0210] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0211] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
Claims
1. A call processing method, characterized in that: include: Determine a first agent working state to which a first state machine currently flows, wherein the first state machine is used to execute the flow between different agent working states; In response to a first call event received during a target call, transferring the first state machine from the first agent working state to the second agent working state based on the first call event; Execute the first call processing operation corresponding to the second agent working state.
2. The method according to claim 1, characterized in that: The first state machine includes: a first flow relationship between a plurality of agent working states, and a first flow triggering event between the plurality of agent working states; The transferring the first state machine from the first agent working state to the second agent working state based on the first call event includes: Based on the first flow relationship, determining a next seat working state of the first seat working state from the multiple seat working states; Based on the first call event and a first transfer triggering event between the first agent working state and the next agent working state, determining a second agent working state from the next agent working state; The first state machine is transferred from the first agent working state to the second agent working state.
3. The method according to claim 2, characterized in that The target call process is a call process between a user and a robot, and the multiple agent working states include: interaction preparation state, listening preparation state, takeover preparation state, listening state, and takeover state; If the working state of the second agent is the interaction ready state, the first call processing operation includes: displaying the call content data between the user and the robot to the agent; If the working state of the second agent is the monitoring ready state, the first call processing operation includes: establishing a second call connection between the agent, the user and the robot; If the working state of the second agent is the takeover preparation state, the first call processing operation includes: establishing a third call connection between the agent and the user; If the working state of the second agent is the monitoring state, the first call processing operation includes: transmitting the user voice input by the user to the agent through the second call connection; If the working state of the second agent is the takeover state, the first call processing operation includes: prompting the agent to have a call with the user.
4. The method according to claim 3, characterized in that If the first agent working state is the interaction ready state, the next agent working state includes: the monitoring ready state and the takeover ready state; The first flow triggering event between the interaction preparation state and the monitoring preparation state includes: the agent requests to access the call between the user and the robot; The first flow triggering event between the interaction preparation state and the takeover preparation state includes: the agent requests to talk with the user.
5. The method according to claim 3, characterized in that: If the first seat working state is the listening ready state, the next seat working state includes: the listening state and the interaction ready state; The first flow triggering event between the monitoring preparation state and the monitoring state includes: successfully establishing a second call connection between the seat, the user and the robot within a first preset time period; The first transition triggering event between the monitoring ready state and the interaction ready state includes: the second call connection is not successfully established within the first preset time period, the user ends the call, and the user requests to transfer the seat.
6. The method according to claim 3, characterized in that If the first agent working state is the takeover preparation state or the listening state, the next agent working state includes: the takeover state and the interaction preparation state; The first flow triggering event between the takeover preparation state and the takeover state includes: successfully establishing a third call connection between the seat and the user within a second preset time period; The first transition triggering event between the takeover preparation state and the interaction preparation state includes: the third call connection is not successfully established within the second preset time period, and the user ends the call; The first flow triggering event between the monitoring state and the takeover state includes: the agent requests to talk with the user; The first transition triggering event between the listening state and the interaction preparation state includes: the agent requests to talk with the user, and the user ends the call.
7. The method according to claim 3, characterized in that If the first agent working state is the takeover state, the next agent working state includes: the interaction preparation state; The first transition triggering event between the takeover state and the interaction preparation state includes: the user ends the call.
8. The method according to any one of claims 1 to 7, characterized in that Before transferring the first state machine from the first agent working state to the second agent working state based on the first call event, the method further includes: Determine a first user call state to which a second state machine currently flows, wherein the second state machine is used to execute the flow between different user call states; After transferring the first state machine from the first agent working state to the second agent working state based on the first call event, the method further includes: Based on the first call event, transferring the second state machine from the first user call state to the second user call state; Execute a second call processing operation corresponding to the second user call status.
9. The method according to claim 8, characterized in that The second state machine includes: a second flow relationship between a plurality of user call states, and a second flow triggering event between the plurality of user call states; The transferring the second state machine from the first user call state to the second user call state based on the first call event includes: Based on the second flow relationship, determining a next user call state of the first user call state from the multiple user call states; Based on the first call event and a second flow triggering event between the first user call state and the next user call state, determining a second user call state from the next user call state; The second state machine is transferred from the first user call state to the second user call state.
10. The method according to claim 9, characterized in that The target call process is a call process between a user and a robot, and the multiple user call states include: robot call state, monitored state, taken over state, and manually answered state; If the second user call state is the robot call state, the second call processing operation includes: pushing a connection prompt message to the user; If the second user's call state is the monitored state, the second call processing operation includes at least one of the following operations: pushing a monitoring prompt message to the user, and destroying the second state machine when the user ends the call; If the second user's call state is in the taken-over state, the second call processing operation includes at least one of the following operations: pushing a take-over prompt message to the user, and destroying the second state machine when the user ends the call; If the second user call state is a manual answering state, the second call processing operation includes at least one of the following operations: playing a preset speech voice to the user, and destroying the second state machine after successfully transferring the seat.
11. The method according to claim 10, characterized in that If the first user call state is a robot call state, the next agent working state includes: the monitored state and the taken-over state; wherein the second flow triggering event between the robot call state and the monitored state includes: successfully establishing a second call connection between the agent, the user and the robot within a first preset time period; the second flow triggering event between the robot call state and the taken-over state includes: successfully establishing a third call connection between the agent and the user within a second preset time period; If the first user's call status is the monitored status, the next agent's working status includes: the manual answering status and the taken-over status; wherein, the second flow triggering event between the monitored status and the manual answering status includes: the user requests to transfer the agent; the second flow triggering event between the monitored status and the taken-over status includes: the agent requests to talk to the user.
12. A call processing device, characterized in that: include: A determination module, used to determine a first agent working state to which a first state machine currently flows, wherein the first state machine is used to execute the flow between different agent working states; a transfer module, configured to respond to a first call event received during a target call and transfer the first state machine from the first agent working state to a second agent working state based on the first call event; The processing module is used to execute the first call processing operation corresponding to the second agent working state.
13. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is configured to execute the instructions to implement the call processing method according to any one of claims 1 to 11.
14. A computer-readable storage medium, characterized in that: When the instructions in the storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the call processing method as claimed in any one of claims 1 to 11.
15. A computer program product, characterized in that The computer program product comprises a non-transitory computer-readable storage medium storing a computer program, wherein the computer program is operable to cause a computer to execute the call processing method according to any one of claims 1 to 11.
