Traffic distribution method and device, electronic device, and computer-readable storage medium

By integrating multiple routing strategies into a preset routing strategy within the call center system, the target agent is determined based on the caller's historical service agent and skill group status. This solves the flexibility and connection rate issues of the call center system in complex call scenarios, improving user experience and connection rate.

CN116156065BActive Publication Date: 2026-03-24MASHANG CONSUMER FINANCE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-15
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

Existing call center systems lack flexibility in call allocation and cannot adapt to complex call scenarios, resulting in low connection rates and poor user experience.

Method used

A preset fusion routing strategy that integrates multiple routing strategies is adopted to determine the target agent based on the historical service agent status of the calling user and the agent status under multiple skill groups, including prioritizing the nearest service agent, prioritizing the best skill group, and an artificial intelligence fallback strategy.

Benefits of technology

It enables flexible and accurate call allocation in complex call scenarios, improves agent connection rate and user experience, and saves enterprise labor costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116156065B_ABST
    Figure CN116156065B_ABST
Patent Text Reader

Abstract

The present disclosure provides a traffic distribution method and device, electronic equipment and computer readable storage medium, the method comprising: receiving a call request, wherein the call request comprises user information of a call user; determining a target agent according to the user information and a preset fusion routing strategy, wherein the preset fusion routing strategy is obtained by fusing multiple types of routing strategies, and is a strategy for determining an agent for processing traffic according to a real-time traffic scenario, the traffic scenario is used to reflect the state of a historical service agent corresponding to the call user and the state of the agents under multiple skill groups corresponding to the call request, and the multiple skill groups are skill groups for processing target services corresponding to the call request; and distributing traffic of the call request to the target agent. According to the embodiments of the present disclosure, the target agent for processing the current traffic can be flexibly and accurately determined, and then the traffic of the call request can be accurately distributed to the target agent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of communication technology, and in particular to a traffic distribution method and apparatus, electronic equipment, and computer-readable storage medium. Background Technology

[0002] Businesses typically use call center systems to communicate with users. Call center systems, also known as customer service centers, usually utilize computer communication technology to handle telephone inquiries from businesses and users. They are particularly capable of handling a large number of calls simultaneously and also have caller ID display functionality.

[0003] Currently, when responding to customer call requests, call center systems typically allocate calls based on customer level, customer tags, or the skill group corresponding to the business the customer chooses to handle. This allocation method often suffers from low flexibility and cannot adapt to complex call scenarios. Summary of the Invention

[0004] This disclosure provides a call distribution method and apparatus, an electronic device, and a computer-readable storage medium.

[0005] Firstly, this disclosure provides a call allocation method, which includes:

[0006] Receive a call request, wherein the call request includes user information of the calling user;

[0007] Based on the user information and the preset fusion routing strategy, the target agent is determined. The preset fusion routing strategy is a strategy obtained by fusing multiple types of routing strategies and is used to determine the agent to handle the call based on the real-time call traffic scenario. The call traffic scenario is used to reflect the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups corresponding to the call request. The multiple skill groups are skill groups used to handle the target service corresponding to the call request.

[0008] The call request is assigned to the target agent.

[0009] Secondly, this disclosure provides a call distribution device, which includes:

[0010] A receiving unit is configured to receive a call request, wherein the call request includes user information of the calling user;

[0011] The determining unit is used to determine the target agent based on the user information and the preset fusion routing strategy. The preset fusion routing strategy is a strategy obtained by fusing multiple types of routing strategies and is used to determine the agent to handle the call based on the real-time call traffic scenario. The call traffic scenario is used to reflect the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups corresponding to the call request. The multiple skill groups are skill groups used to handle the target service corresponding to the call request.

[0012] The allocation unit is used to allocate the call request to the target agent.

[0013] Thirdly, this disclosure provides an electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores one or more computer programs executable by the at least one processor, the one or more computer programs being executed by the at least one processor to enable the at least one processor to perform the traffic allocation method of the first aspect described above.

[0014] Fourthly, this disclosure provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the traffic allocation method of the first aspect described above.

[0015] The embodiments provided in this disclosure, upon receiving a call request, utilize user information from the call request and a preset fusion routing strategy—obtained by integrating multiple routing strategies—to determine the agent handling the call based on the real-time call traffic scenario. This allows the call center system to flexibly and accurately determine the target agent for handling the current call based on the status of historical service agents corresponding to the calling user and the status of agents under multiple skill groups for handling the target service corresponding to the call request, as reflected in the current real-time call traffic scenario. Consequently, the call request traffic is accurately allocated to the target agent. Because call allocation is determined by integrating multiple routing strategies, this preset fusion routing strategy enables the call center system to balance the status of all agents currently capable of handling the call request and flexibly and accurately determine the target agent best suited to the current call traffic scenario, resulting in a more balanced and reasonable call allocation.

[0016] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0017] The accompanying drawings are provided to further illustrate the present disclosure and form part of the specification. They are used together with the embodiments of the present disclosure to explain the disclosure and do not constitute a limitation thereof. The above and other features and advantages will become more apparent to those skilled in the art from the detailed description of exemplary embodiments with reference to the accompanying drawings, in which:

[0018] Figure 1 A flowchart of the traffic allocation method provided in the embodiments of this disclosure;

[0019] Figure 2 A first flowchart for determining a target agent is provided in an embodiment of this disclosure;

[0020] Figure 3 A second flowchart for determining a target agent is provided in an embodiment of this disclosure;

[0021] Figure 4 A third flowchart for determining a target agent, provided as an embodiment of this disclosure;

[0022] Figure 5 A block diagram of a traffic distribution device provided in an embodiment of this disclosure;

[0023] Figure 6 This is a block diagram of an electronic device provided in an embodiment of the present disclosure. Detailed Implementation

[0024] To enable those skilled in the art to better understand the technical solutions of this disclosure, exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments of this disclosure to aid understanding. These should be considered merely exemplary. Therefore, those skilled in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0025] Where there is no conflict, the various embodiments of this disclosure and the features thereof in the embodiments may be combined with each other.

[0026] As used herein, the term “and / or” includes any and all combinations of one or more related enumerated entries.

[0027] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. As used herein, the singular forms “a” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that when the terms “comprising” and / or “made of” are used in this specification, the presence of the stated feature, integral, step, operation, element, and / or component is specified, but the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or groups thereof is not excluded. Words such as “connected” or “linked” are not limited to physical or mechanical connections but can include electrical connections, whether direct or indirect.

[0028] Unless otherwise specified, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this disclosure, and will not be interpreted as having an idealized or overly formal meaning, unless expressly so defined herein.

[0029] In related technologies, when a call center system receives a user's call request, it typically determines the user's level or user tag based on the user's caller ID or user information collected through an Interactive Voice Response (IVR) application. Based on a preset correspondence between user levels or user tags and skill groups, it identifies the skill group appropriate for handling the current user level or customer tag and transfers the call to an agent within that skill group. Alternatively, it obtains the business node information of the human task selected by the user in the IVR application, identifies the skill group appropriate for handling the current customer level based on a preset correspondence between business nodes and skill groups, and transfers the call to an agent within that skill group. For example, this business node could be a pre-sales consultation node, in which case the call center system can route the call to an agent within the pre-sales skill group. Furthermore, if the user's call request includes an extension number, the call center system can directly transfer the call to the agent corresponding to that extension number. It should be noted that in a call center system, a skill group is a logically divided set of specific functions. A skill group can be used to manage multiple agents with the same or similar skills. In a call center system, there are usually multiple skill groups. An agent can belong to only one skill group or can belong to multiple different skill groups at the same time.

[0030] As can be seen from the above description, in related technologies, the agents assigned to handle calls are often determined based on a relatively simple routing strategy. For example, skill groups are determined based on user level or user tags, and agents are selected from those skill groups to handle the current call. This type of call allocation method often suffers from poor flexibility and low connection rate in complex call scenarios.

[0031] To address the aforementioned problems in related technologies, this disclosure provides a traffic allocation method, please refer to the embodiments described below. Figure 1 This is a flowchart of a call distribution method provided in an embodiment of this disclosure. This method can be applied to an electronic device, which can be a device running a call center system, or a device capable of communicating with a call center system. The electronic device can be, for example, a server, which can be a physical server or a virtual server.

[0032] like Figure 1 As shown, the call allocation method provided in this embodiment may include the following steps S101-S103, which will be described in detail below.

[0033] Step S101: Receive a call request, wherein the call request includes the user information of the calling user.

[0034] In this embodiment of the disclosure, the call request may be an incoming call request sent by a user operating a terminal device, such as a mobile phone, to dial a company's hotline.

[0035] The user information in a call request can be at least the user number of the calling user. For example, if a user is using a mobile phone to call a company hotline, the user number can be their mobile phone number.

[0036] In some embodiments, considering that call center systems typically have IVR applications, these IVR applications can obtain the service identifier or other information of the target service selected by the user through interaction after receiving a user's call request. Therefore, the user information in the call request may also include the service identifier. Of course, this is only an example; in actual implementation, the user information may also include other information, such as one or more of the user's user level or user tags, without any special limitation here.

[0037] Step S102: Determine the target agent based on user information and preset fusion routing strategy. The preset fusion routing strategy is a strategy obtained by fusing multiple types of routing strategies and is used to determine the agent to handle the call based on the real-time call traffic scenario. The call traffic scenario is used to reflect the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups corresponding to the call request. The multiple skill groups are skill groups used to handle the target service corresponding to the call request.

[0038] In this embodiment of the disclosure, the preset converged routing policy may include at least a first routing policy, a second routing policy, and a third routing policy.

[0039] The first routing strategy can be a recent service agent priority strategy, that is, the first routing strategy can be a strategy for allocating call traffic based on the historical service agent corresponding to the calling user. The historical service agent can be an agent that has recently processed the historical call request of the calling user. The service requested by the historical call request refers to the call request corresponding to the target service requested by the current call request issued by the calling user.

[0040] For example, if a user's current call request is for consultation on service 1, then the target agent can be selected from the agents who have served the user on service 1 at the closest time to the present moment.

[0041] The second routing strategy can be an optimal skill group priority strategy, that is, a strategy for allocating call traffic based on the set of skill groups corresponding to the call request. For example, if a user's call request is for consulting about service 1, a skill group that meets the conditions can be selected from one or more preset skill groups used to handle service 1, and an agent under that skill group can be selected as the target agent.

[0042] The third routing strategy can be a fallback strategy, that is, a strategy used when the above routing strategies cannot determine the target agent. For example, this third routing strategy can be to select an AI agent as the target agent. An AI agent refers to an agent that provides services to users based on artificial intelligence (AI), specifically an agent that interacts with users based on voice recognition and voice response applications. That is, in this embodiment of the disclosure, an AI agent based on artificial intelligence technology can be set as a fallback agent so that even if other routing strategies cannot determine a suitable human agent, the AI ​​agent can still handle user calls, thereby improving user experience and preventing user churn due to unreachable calls.

[0043] In this embodiment of the disclosure, the preset converged routing strategy can be a strategy that determines the target agent based on the first routing strategy, the second routing strategy, and the third routing strategy described above, according to the current real-time call traffic scenario. Of course, in actual implementation, the preset converged routing strategy may also include other strategies, such as a fourth routing strategy that determines the skill group based on customer level or customer tag and then determines the target agent, and a fifth routing strategy that determines the target agent based on the extension number in the call request. No special limitation is made here.

[0044] It should be noted that in actual implementation, when the preset converged routing policy determines the target agent based on at least the above three types of routing policies, the priority of these three routing policies can be set. That is, the target agent is first determined according to the first routing policy. If the target agent cannot be determined, the target agent is then determined according to the second routing policy. If the target agent still cannot be determined, the target agent is determined according to the third routing policy, so as to select the most accurate agent to serve the calling user and improve the user experience.

[0045] In this embodiment of the disclosure, the call traffic scenario can be determined by the call center system by obtaining the status of the historical service agents corresponding to the current caller and the status of agents under multiple skill groups corresponding to the call request currently issued by the caller. The status of the agents includes at least a status indicating whether the agent is currently idle, i.e., whether the agent is in an idle state.

[0046] Step S103: Assign the call request to the target agent.

[0047] After determining the target user for accepting the call request from the current calling user based on the preset converged routing strategy according to step S102 above, the call request can be assigned to the target agent, that is, a call connection is established between the calling user and the target agent so that the target agent can serve the calling user.

[0048] As can be seen, based on the call distribution method provided in this embodiment, after receiving a call request, the call center system, by using the user information in the call request and a preset fusion routing strategy obtained by fusing multiple types of routing strategies to determine the agent handling the call based on the real-time call scenario, can flexibly and accurately determine the target agent for handling the current call based on the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups for handling the target service corresponding to the call request. This allows the call request to be accurately distributed to the target agent. Since call distribution is determined by fusing multiple types of routing strategies, this preset fusion routing strategy enables the call center system to balance the status of all agents currently capable of handling the call request and flexibly and accurately determine the target agent best suited to the current call scenario, resulting in a more balanced and reasonable call distribution.

[0049] Please refer to Figure 2 This is a first flowchart for determining a target agent according to an embodiment of the present disclosure. As can be seen from the above description, in this embodiment of the present disclosure, the preset converged routing policy may include a first routing policy, a second routing policy, and a third routing policy with decreasing priorities. In this implementation, the step S102 above, determining the target agent based on user information and the preset converged routing policy, may include:

[0050] Step S201: Determine the target agent based on user information and the first routing policy. The first routing policy is a policy for allocating call traffic based on the historical service agents corresponding to the calling user. The historical service agents include agents that have recently processed the historical call requests of the calling user. The service requested by the historical call requests corresponds to the target service requested by the call request.

[0051] Step S202: If the target agent is not determined based on the first routing strategy, the skill group set corresponding to the call request is obtained according to the user information, and the target agent is determined according to the skill group set and the second routing strategy. The second routing strategy is a strategy for allocating call traffic based on the skill group set corresponding to the call request, and the skill group set includes multiple skill groups.

[0052] Step S203: If the target agent is not determined based on the second routing strategy, the target agent is determined based on the third routing strategy, wherein the third routing strategy is a strategy used to allocate call traffic to an AI agent for processing.

[0053] That is, in this embodiment of the disclosure, after receiving a call request from a user, it can first determine whether the call request is a duplicate call based on the user information, that is, whether it is a duplicate call for the same or related services. If so, considering that the agent for the user may be more familiar with the user's behavior and the business issues the user is inquiring about, the historical service agents who have recently served the user for this type of service can be obtained as the target agents.

[0054] In practice, if the target agent cannot be determined based on the first routing strategy, in order to improve the agent connection rate, the skill group set corresponding to the call request can be determined based on the user information, and an agent can be selected as the target agent from the agents under the multiple skill groups in the skill group set that are used to handle the target business.

[0055] If neither of the above two routing strategies can determine a human agent to serve the calling user as the target agent, then to avoid directly hanging up the call and affecting the user experience, a third routing strategy can be used to determine an AI agent as a fallback agent.

[0056] As can be seen, the method provided in this disclosure determines the target agent for accepting the current call by using a preset fusion routing strategy based on at least three types of routing strategies. On the one hand, it can improve the agent service efficiency; on the other hand, by setting multiple skill groups for a service, it can also improve the agent connection rate; furthermore, by setting up an AI agent as a backup agent, it can also avoid the problem of user experience being affected when the user's call is hung up due to the inability to determine a human agent.

[0057] Please refer to Figure 3 This is a second flowchart for determining a target agent, provided in an embodiment of this disclosure. Figure 3 As shown, in some embodiments, user information may include the caller's user number and the service identifier of the target service selected by the caller. In this embodiment, determining the target agent based on the user information and the first routing policy in step S201 above may include:

[0058] Step S301: Based on the user number and service identifier, obtain the request processing information of the k most recent historical call requests corresponding to the calling user at the current time, where k is a preset repeated call agent threshold, the service requested by the historical call request and the target service satisfy a preset association relationship, and the request processing information includes the information of the historical service agents corresponding to the k historical call requests.

[0059] In this embodiment of the disclosure, k is an integer greater than 0. That is, considering that if the target agent is determined based on the first routing strategy, i.e. the nearest service agent priority strategy, without limiting the boundaries of the service agents, the agent who served the current calling user a long time ago may be determined as the target agent. However, since the agent served the current calling user a long time ago, such as a year ago, its historical experience may not bring any beneficial effect to the current call traffic. Therefore, in this embodiment of the disclosure, a threshold k is set to limit the boundaries of the historical service agents used to obtain the calling user who made the current call request.

[0060] In this embodiment of the disclosure, the service requested by the historical call request and the target service satisfy a preset association relationship, that is, the two can be the same service, or they can be related, for example, services with a hierarchical relationship.

[0061] Step S302: Obtain the historical service agent set based on the request processing information.

[0062] In practice, when an agent completes a call, the call center system can store the call request information, such as the request identifier, the information of the user who made the request, such as the user identifier and user number, and the agent's identifier, in a database, such as a Redis database. This way, when a call request from the current user is received, the system can retrieve at least the information of the historical agents corresponding to the historical call requests of the current user from the database as the request processing information for that user.

[0063] Step S303: Determine the target seat based on the first status information of each historical service seat in the historical service seat set, wherein the first status information is used to indicate whether the corresponding historical service seat is in an idle state.

[0064] In this embodiment of the disclosure, whether a seat is in an idle state refers to whether the seat is online and idle; it can be understood that if the seat is currently offline or in a busy or short break state, it means that the seat is not in an idle state.

[0065] In practice, one can select an idle historical service seat from the historical service seat set as the target seat.

[0066] In addition, in some embodiments, considering that the historical service agents most recently available may be able to provide better service to users, in order to improve problem-solving efficiency, the step S303 above, which describes determining the target agent based on the first state information of each historical service agent in the historical service agent set, can be as follows: based on the first state information, select historical service agents that are currently idle to construct a first candidate agent set; sort the historical service agents in the first candidate agent set according to the historical time when the historical service agents in the first candidate agent set served the calling user, and determine the historical service agents whose ranking meets the preset conditions as the target agents, wherein the preset conditions indicate that the historical event corresponding to the historical service agent is most recent to the current time.

[0067] As can be seen, in this embodiment of the disclosure, when it is determined that the call request issued by the calling user is a duplicate call, by identifying the target agent who is in an idle state from the historical service agents who have recently served the calling user, the agent can provide more accurate services to the user, thereby improving the user experience.

[0068] Please refer to Figure 4 This is a third flowchart provided in an embodiment of the present disclosure for determining a target agent. Figure 4 As shown, in some embodiments, user information may include a service identifier of the target service selected by the calling user. In this embodiment, the step S202 described above, which involves obtaining the skill set corresponding to the call request based on the user information and determining the target agent based on the skill set and the second routing strategy, may include:

[0069] Step S401: Based on the business identifier, query the information of multiple skill groups used to process the target business to obtain a set of skill groups.

[0070] In related technologies, only one skill group is often set up for a single service. This means that if there are no available agents in a skill group for a particular service and the number of people in the queue for that skill group exceeds a threshold, the only option is to hang up the user's call, resulting in a poor user experience. Therefore, in this embodiment, multiple skill groups can be set up for a single service to avoid the problem of not being able to connect to an agent due to the lack of available agents in a single skill group, thereby improving the agent connection rate.

[0071] In practice, when a call center system receives an incoming call, it can prompt the user to select the service information of the target service to be processed through the IVR application in order to obtain the service identifier. Of course, the service identifier can also be obtained from the incoming call made by the user, and there is no special limitation here.

[0072] Step S402: Obtain the first skill group with the highest priority from all skill groups in the skill group set.

[0073] In this embodiment of the disclosure, the skill groups in the skill group set corresponding to a service can have multiple priorities. That is, in order to improve the call connection rate of the agents and provide users with the most accurate service as much as possible, when determining the target agent based on the second routing strategy, a first priority first skill group can be set for a service, so that the target agent can be determined first from the agents under the first skill group. If the target agent cannot be determined according to the first skill group, the target agent can be determined from the agents under other priority skill groups.

[0074] Step S403: Obtain information on seats belonging to the first skill group and construct the first candidate seat set.

[0075] Step S404: Determine the target seat based on the first candidate seat set.

[0076] Step S405: If no target seat is determined based on the first candidate seat set, obtain information on seats belonging to other skill groups to construct a second candidate seat set, and determine the target seat based on the second candidate seat set. Here, other skill groups are any one or more skill groups other than the first skill group in the skill group set.

[0077] As can be seen, the method provided by the embodiments of this disclosure can not only provide users with accurate services, but also significantly improve the call connection rate of agents.

[0078] Please continue reading. Figure 4 In some embodiments, determining the target agent based on the first candidate agent set in step S404 above may include:

[0079] Step S404-1: Obtain the second status information of each seat in the first candidate seat set, wherein the second status information is used to indicate whether the corresponding seat is in an idle state.

[0080] Step S404-2: If it is determined from the second state information that there is an idle seat in the first candidate seat set, select an idle seat from the first candidate seat set as the target seat.

[0081] Step S404-3: If it is determined from the second state information that there are no idle seats in the first candidate seat set, the first number of first queued users in the first queue is obtained, and if the first number is less than the first preset threshold, the target user identifier of the calling user is added to the first queue for queuing and waiting, so as to determine the target seat.

[0082] The first queue is used to store information about the first queued users, who are users whose call requests are waiting to be processed by agents belonging to the first skill group and are in an idle state.

[0083] That is, in this embodiment of the disclosure, if there are idle seats among the seats under the first skill group, any one of the idle seats can be selected as the target seat; if there are no idle seats among the seats under the first skill group, the first number of first queued users in the first queue corresponding to the first skill group can be obtained. If the first number does not exceed the first preset threshold, it can be said that the seats in the current first skill group are still sufficient to handle the call, and the target user identifier of the calling user can be put into the first queue for queuing and waiting for an idle seat to be released under the first skill group. That is, when a seat changes from a busy state to an idle state, the idle seat is determined as the target seat.

[0084] Understandably, since the target user identifier is placed in the first queue for waiting, if an empty seat appears in the first skill group, the target user identifier must be at the first position in the first queue before the empty seat can be identified as the target seat.

[0085] In addition, if the first number exceeds the first preset threshold in this implementation, it means that the number of agents under the first skill group is insufficient to handle the current call traffic in the current call scenario. Therefore, in order to improve the agent connection rate and avoid directly hanging up the call and affecting the user experience, an idle agent can be selected from the second candidate agent set as the target agent.

[0086] Please continue reading. Figure 4 In some embodiments, determining the target seat based on the second candidate seat set in step S405 above may include:

[0087] Step S405-1: Obtain the third state information of each seat in the second candidate seat set, wherein the third state information is used to indicate whether the corresponding seat is in an idle state.

[0088] Step S405-2: If it is determined from the third state information that there is an idle seat in the second candidate seat set, select an idle seat from the second candidate seat set as the target seat.

[0089] Step S405-3: If it is determined from the third state information that there are no idle seats in the second candidate seat set, obtain the second number of second queuing users in each second queue, and if any second number is less than the second preset threshold, add the target user identifier to each second queue for queuing and waiting, so as to determine the target seat.

[0090] The number of second queues is at least one, and each second queue corresponds to one skill group in other skill groups. Each second queue is used to store information of all second queue users under other skill groups. Second queue users are users who are waiting for their call requests to be processed by agents belonging to other skill groups and are in an idle state.

[0091] In this implementation, if there is an idle seat in the second candidate seat set, that seat can be identified as the target seat.

[0092] In some embodiments, if there are multiple idle seats in the second candidate seat set, in order to enable the seats to provide the most accurate service to the user, the multiple idle seats can be sorted according to the priority of the skill group to which they belong, and the idle seat under the skill group with the highest priority is determined as the target seat.

[0093] In addition, if there are no idle agents in the second candidate agent set, it is necessary to obtain the second number of queued users in the second queue corresponding to each skill group in other skill groups. If a certain second number is less than a second preset threshold, it can be determined that the other skill group can meet the conditions for accepting the current call. Therefore, the target user identifier of the calling user can be put into all the second queues for sorting. In order to improve the agent connection efficiency, if an idle agent appears in a certain skill group in other skill groups, the agent can be identified as the target agent in time to accept the current call request.

[0094] It should be noted that in this implementation, when a certain second quantity is less than a second preset threshold, the reason for sorting the target user identifier of the calling user in all second queues instead of the second queue corresponding to the second quantity is that in actual processing, the processing time of different skill groups may be different. Therefore, in order to maximize the agent connection rate, it is only necessary to confirm that other skill groups are still able to handle the calls, and then the target user identifier can be placed in all second queues for queuing and waiting.

[0095] As can be seen, the method provided by the embodiments of this disclosure, by setting multiple skill groups for the target service, prioritizing the selection of the target agent from the agents under the first skill group with the first priority, and then selecting the target agent from the agents under other skill groups when the target agent cannot be selected based on the first skill group, can not only improve the agent connection efficiency, but also maximize the agent service quality, thereby improving the user experience.

[0096] In some embodiments, adding the target user identifier to each second queue for queuing and waiting in order to determine the target agent in step S405-3 above includes: determining the agent as the target agent when the agent corresponding to any skill group in other skill groups is idle and the ranking of the target user identifier in the second queue corresponding to the skill group meets the preset conditions; and removing the calling user from all second queues.

[0097] That is, when the target user identifier is placed in all second queues for waiting, if an available agent appears in another skill group, the agent is identified as the target agent if the target user identifier of the calling user in the second queue corresponding to that skill group meets the preset condition, that is, if it is in the first position.

[0098] It should be noted that in the above embodiments, when determining the target agent based on user information and preset fusion routing strategies, the determination of whether the target agent can be determined is made sequentially based on the different priorities of each routing strategy. In some embodiments, user information may simultaneously include the user number of the calling user and the service identifier of the target service selected by the calling user. In order to improve the speed of determining the target agent and improve the agent connection efficiency and accuracy, the determination of the target agent based on user information and preset fusion routing strategies in step S102 above can be: inputting the user number and service identifier into a pre-trained agent decision model for agent prediction processing to obtain the target agent, wherein the agent decision model is a decision model that integrates multiple routing strategies.

[0099] That is, in this embodiment of the disclosure, a seat decision model that integrates multiple routing strategies can also be pre-trained. The seat decision model obtains the first feature information corresponding to the call request issued by the calling user based on the user number and service identifier, and obtains the second feature information of each seat in the idle state under all skill groups. By matching the first feature information and the second feature information, the seat with the highest matching degree is determined as the target seat.

[0100] The first feature information can be feature information obtained by analyzing the behavioral data of call users. The user's behavioral data can include basic user attributes, such as gender and age, as well as historical call behavior data, such as the questions selected for consultation in historical calls and service satisfaction ratings.

[0101] The second characteristic information can be information that describes the agent's characteristics, such as the business areas they are good at handling and the types of users they are good at serving.

[0102] As can be seen, in this embodiment of the disclosure, by training an agent decision model that integrates multiple routing strategies for determining the target agent, the target agent can be quickly and accurately obtained directly based on the agent decision model after receiving a call request from a calling user, thereby improving agent connection efficiency and providing accurate services to users.

[0103] Additionally, it should be noted that in the above embodiments, when determining the target agent based on the preset converged routing policy, the target agent is determined sequentially based on the different priorities of each routing policy. In actual implementation, a configuration interface can also be provided to the user, who can freely configure multiple routing policies based on this interface. Furthermore, the user can choose whether to use a certain routing policy when determining the target agent. For example, if the user chooses not to use the first routing policy in the configuration interface, the target agent can be determined directly based on the second routing policy.

[0104] In summary, the call allocation method provided in this embodiment can flexibly allocate target agents to call requests in complex call scenarios by using a preset fusion routing strategy. Furthermore, for received call requests, by first obtaining historical service agents and then selecting a target agent from those agents if the conditions are met, the efficiency of resolving user issues can be improved, thereby enhancing user experience. Additionally, by setting multiple skill groups with different priorities for the same processing event, call allocation can support queuing within multiple skill groups simultaneously, thus improving connection rates. Finally, by setting up a fallback AI agent, the agent connection rate can be maximized, and when the user issue is simple, it can also save on enterprise labor costs.

[0105] It is understood that the various method embodiments mentioned above in this disclosure can be combined with each other to form combined embodiments without violating the principle and logic. Due to space limitations, this disclosure will not elaborate further. Those skilled in the art will understand that in the above methods of specific implementation, the specific execution order of each step should be determined by its function and possible internal logic.

[0106] In addition, this disclosure also provides a call distribution device, an electronic device, and a computer-readable storage medium, all of which can be used to implement any of the call distribution methods provided in this disclosure. The corresponding technical solutions and descriptions are described in the corresponding section of the method and will not be repeated here.

[0107] Figure 5 This is a block diagram of a traffic distribution device provided in an embodiment of the present disclosure.

[0108] Reference Figure 5 This disclosure provides a call distribution device 500, which includes a receiving unit 501, a determining unit 502, and a distribution unit 503.

[0109] The receiving unit 501 is used to receive a call request, wherein the call request includes the user information of the calling user.

[0110] The determining unit 502 is used to determine the target agent based on user information and a preset fusion routing strategy. The preset fusion routing strategy is a strategy obtained by fusing multiple types of routing strategies and is used to determine the agent to handle the call based on the real-time call traffic scenario. The call traffic scenario is used to reflect the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups corresponding to the call request. The multiple skill groups are skill groups used to handle the target service corresponding to the call request.

[0111] The allocation unit 503 is used to allocate call requests to target agents.

[0112] In some embodiments, the preset converged routing strategy includes a first routing strategy, a second routing strategy, and a third routing strategy with decreasing priorities. When determining the target agent based on user information and the preset converged routing strategy, the determining unit 502 can be used to: determine the target agent based on user information and the first routing strategy, wherein the first routing strategy is a strategy for allocating call traffic based on the historical service agents corresponding to the calling user, the historical service agents include agents that have recently processed the calling user's historical call requests, and the service requested by the historical call requests corresponds to the target service requested by the call request; if the target agent is not determined based on the first routing strategy, obtain the skill group set corresponding to the call request based on user information, and determine the target agent based on the skill group set and the second routing strategy, wherein the second routing strategy is a strategy for allocating call traffic based on the skill group set corresponding to the call request, and the skill group set includes multiple skill groups; if the target agent is not determined based on the second routing strategy, determine the target agent based on the third routing strategy, wherein the third routing strategy is a strategy for allocating call traffic to an AI agent for processing.

[0113] In some embodiments, the user information includes the user number of the calling user and the service identifier of the target service selected by the calling user. When determining the target agent based on the user information and the first routing policy, the determining unit 502 can be used to: obtain the request processing information of the k most recent historical call requests corresponding to the calling user at the current time based on the user number and the service identifier, wherein k is a preset repeated call agent threshold, the service requested by the historical call requests and the target service satisfy a preset association relationship, and the request processing information includes the information of the historical service agents corresponding to the k historical call requests; obtain a set of historical service agents based on the request processing information; and determine the target agent based on the first status information of each historical service agent in the set of historical service agents, wherein the first status information is used to indicate whether the corresponding historical service agent is in an idle state.

[0114] In some embodiments, the user information includes a service identifier of the target service selected by the calling user. When the determining unit 502 obtains the skill group set corresponding to the call request based on the user information and determines the target agent based on the skill group set and the second routing strategy, it can be used to: query information of multiple skill groups used to process the target service based on the service identifier to obtain a skill group set; obtain a first skill group with a first priority from all skill groups in the skill group set; obtain information of agents belonging to the first skill group and construct a first candidate agent set; determine the target agent based on the first candidate agent set; if the target agent is not determined based on the first candidate agent set, obtain information of agents belonging to other skill groups to construct a second candidate agent set and determine the target agent based on the second candidate agent set, wherein the other skill groups are any one or more skill groups other than the first skill group in the skill group set.

[0115] In some embodiments, when determining a target agent based on a first candidate agent set, the determining unit 502 may be configured to: obtain second status information for each agent in the first candidate agent set, wherein the second status information indicates whether the corresponding agent is in an idle state; if it is determined based on the second status information that there is an idle agent in the first candidate agent set, select an idle agent from the first candidate agent set as the target agent; if it is determined based on the second status information that there is no idle agent in the first candidate agent set, obtain a first number of first queuing users in the first queuing queue, and if the first number is less than a first preset threshold, add the target user identifier of the calling user to the first queuing queue for queuing and waiting, thereby determining the target agent, wherein the first queuing queue is used to store information of the first queuing users, and the first queuing users are users waiting for their call requests to be processed by agents belonging to the first skill group and in an idle state.

[0116] In some embodiments, when determining a target agent based on a second candidate agent set, the determining unit 502 may be configured to: obtain third status information of each agent in the second candidate agent set, wherein the third status information indicates whether the corresponding agent is in an idle state; if it is determined based on the third status information that there is an idle agent in the second candidate agent set, select an idle agent from the second candidate agent set as the target agent; if it is determined based on the third status information that there is no idle agent in the second candidate agent set, obtain a second number of second queuing users in each second queue, and if any second number is less than a second preset threshold, add the target user identifier to each second queue for queuing and waiting to determine the target agent, wherein the number of second queues is at least one, and the at least one second queue corresponds to one skill group in other skill groups, each second queue is used to store information of all second queuing users under other skill groups, and the second queuing users are users waiting for their call requests to be processed by agents belonging to other skill groups who are in an idle state.

[0117] In some embodiments, when adding the target user identifier to each second queue for queuing and waiting to determine the target seat, the determining unit 502 may be used to: determine the seat as the target seat if the seat corresponding to any skill group in other skill groups is idle and the ranking of the target user identifier in the second queue corresponding to the skill group meets the preset conditions; and remove the target user identifier from all second queues.

[0118] As can be seen, based on the call distribution apparatus provided in this embodiment, after the receiving unit 501 receives a call request, the determining unit 502, according to the user information in the call request and a preset fusion routing strategy obtained by fusing multiple types of routing strategies, determines the agent to handle the call based on the real-time call scenario. This allows the call center system to flexibly and accurately determine the target agent to handle the current call based on the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups for handling the target service corresponding to the call request, as reflected in the current real-time call scenario. Thus, the call request is accurately distributed to the target agent. Since call distribution is determined by fusing multiple types of routing strategies, this preset fusion routing strategy enables the call center system to balance the status of all agents currently capable of handling the call request and flexibly and accurately determine the target agent that is more suitable for the current call scenario, resulting in a more balanced and reasonable call distribution.

[0119] Figure 6This is a block diagram of an electronic device provided in an embodiment of the present disclosure.

[0120] Reference Figure 6 This disclosure provides an electronic device 600, which includes: at least one processor 601; at least one memory 602; and one or more I / O interfaces 603 connected between the processor 601 and the memory 602; wherein the memory 602 stores one or more computer programs that can be executed by the at least one processor 601, and the one or more computer programs are executed by the at least one processor 601 to enable the at least one processor 601 to perform the above-described traffic distribution method.

[0121] This disclosure also provides a computer-readable storage medium storing a computer program thereon, wherein the computer program, when executed by a processor, implements the above-described traffic allocation method. The computer-readable storage medium may be volatile or non-volatile.

[0122] This disclosure also provides a computer program product, including computer-readable code, or a non-volatile computer-readable storage medium carrying computer-readable code, wherein when the computer-readable code is run in a processor of an electronic device, the processor in the electronic device executes the above-described traffic allocation method.

[0123] Those skilled in the art will understand that all or some of the steps, systems, and apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned above does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software can be distributed on a computer-readable storage medium, which may include computer storage media (or non-transitory media) and communication media (or transient media).

[0124] As is known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable program instructions, data structures, program modules, or other data). Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), flash memory or other memory technologies, portable compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, it is known to those skilled in the art that communication media typically contain computer-readable program instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.

[0125] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0126] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing state information from the computer-readable program instructions to implement various aspects of this disclosure.

[0127] The computer program product described herein can be implemented specifically through hardware, software, or a combination thereof. In one alternative embodiment, the computer program product is specifically embodied in a computer storage medium; in another alternative embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.

[0128] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0129] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0130] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0131] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0132] Example embodiments have been disclosed herein, and while specific terminology has been used, it is for illustrative purposes only and should be construed as such, and is not intended to be limiting. In some instances, it will be apparent to those skilled in the art that features, characteristics, and / or elements described in connection with particular embodiments may be used alone, or in combination with features, characteristics, and / or elements described in connection with other embodiments, unless otherwise expressly indicated. Therefore, those skilled in the art will understand that various changes in form and detail may be made without departing from the scope of this disclosure as set forth by the appended claims.

Claims

1. A call distribution method, characterized in that, include: Receive a call request, wherein the call request includes user information of the calling user; Based on the user information and the preset fusion routing strategy, the target agent is determined. The preset fusion routing strategy is a strategy obtained by fusing multiple types of routing strategies and is used to determine the agent to handle the call based on the real-time call scenario. The call scenario reflects the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups corresponding to the call request. The multiple skill groups are skill groups used to handle the target service corresponding to the call request, including a first skill group and other skill groups. For the first skill group, when there are no idle agents and the number of queues in the first queue is less than a preset threshold, the user ID of the calling user is added to the first queue corresponding to the first skill group. For the other skill groups, when there are no idle agents and the number of queues in any second queue is less than a preset threshold, the user ID is added to each second queue corresponding to the other skill group. The call request is assigned to the target agent.

2. The method according to claim 1, characterized in that, The preset converged routing strategy includes a first routing strategy, a second routing strategy, and a third routing strategy with decreasing priorities in sequence; The step of determining the target agent based on user information and a preset fusion routing policy includes: Based on the user information and the first routing strategy, the target agent is determined, wherein the first routing strategy is a strategy for allocating call traffic based on the historical service agents corresponding to the calling user, the historical service agents include agents who have recently processed the historical call requests of the calling user, and the service requested by the historical call requests corresponds to the target service requested by the call request. If the target agent is not determined based on the first routing strategy, the skill group set corresponding to the call request is obtained according to the user information, and the target agent is determined according to the skill group set and the second routing strategy. The second routing strategy is a strategy for allocating call traffic based on the skill group set corresponding to the call request, and the skill group set includes the multiple skill groups. If the target agent is not determined based on the second routing strategy, the target agent is determined based on the third routing strategy, wherein the third routing strategy is a strategy for allocating call traffic to an AI agent for processing.

3. The method according to claim 2, characterized in that, The user information includes the user number of the calling user and the service identifier of the target service selected by the calling user. Determining the target agent based on the user information and the first routing policy includes: Based on the user number and the service identifier, obtain the request processing information of the k most recent historical call requests corresponding to the calling user at the current time, where k is a preset repeated call agent threshold, the service requested by the historical call requests and the target service satisfy a preset association relationship, and the request processing information includes the information of the historical service agents corresponding to the k historical call requests. Based on the request processing information, obtain the historical service agent set; The target seat is determined based on the first status information of each historical service seat in the historical service seat set, wherein the first status information is used to indicate whether the corresponding historical service seat is in an idle state.

4. The method according to claim 2, characterized in that, The user information includes the service identifier of the target service selected by the calling user for processing. The step of obtaining the skill set corresponding to the call request based on the user information, and determining the target agent based on the skill set and the second routing strategy, includes: Based on the business identifier, information on the multiple skill groups used to process the target business is queried to obtain the skill group set; From all skill groups in the skill set, obtain the first skill group with the highest priority; Obtain information on agents belonging to the first skill group and construct a first candidate agent set; The target seat is determined based on the first set of candidate seats; If the target seat is not determined based on the first candidate seat set, information of seats belonging to other skill groups is obtained to construct a second candidate seat set, and the target seat is determined based on the second candidate seat set, wherein the other skill groups are any one or more skill groups in the skill group set other than the first skill group.

5. The method according to claim 4, characterized in that, The step of determining the target seat based on the first candidate seat set includes: Obtain the second status information of each seat in the first candidate seat set, wherein the second status information is used to indicate whether the corresponding seat is in an idle state; If it is determined from the second state information that there is an idle seat in the first candidate seat set, an idle seat is selected from the first candidate seat set as the target seat. If, based on the second state information, it is determined that there are no idle agents in the first candidate agent set, the first number of first queued users in the first queue is obtained. If the first number is less than a first preset threshold, the target user identifier of the calling user is added to the first queue for queuing and waiting, so as to determine the target agent. The first queue is used to store the information of the first queued users, and the first queued users are users who are waiting for their call requests to be processed by agents belonging to the first skill group and are in an idle state.

6. The method according to claim 4, characterized in that, The step of determining the target seat based on the second candidate seat set includes: Obtain the third state information of each seat in the second candidate seat set, wherein the third state information is used to indicate whether the corresponding seat is in an idle state; If it is determined from the third state information that there is an idle seat in the second candidate seat set, an idle seat is selected from the second candidate seat set as the target seat. If, based on the third state information, it is determined that there are no idle agents in the second candidate agent set, the second number of second queued users in each second queue is obtained. If any second number is less than a second preset threshold, the target user identifier of the calling user is added to each second queue for queuing and waiting to determine the target agent. The number of second queues is at least one, and each of the at least one second queue corresponds to one of the other skill groups. Each second queue is used to store information of all second queued users under the other skill group. The second queued user is a user waiting for their call request to be processed by an idle agent belonging to the other skill group.

7. The method according to claim 6, characterized in that, The step of adding the target user identifier to each of the second queuing queues for waiting in line to determine the target agent includes: If the agent corresponding to any of the other skill groups is idle, and the ranking of the target user identifier in the second queue corresponding to that skill group meets a preset condition, then that agent is designated as the target agent; and... Remove the target user identifier from all second queues.

8. A call distribution device, characterized in that, include: A receiving unit is configured to receive a call request, wherein the call request includes user information of the calling user; The determining unit is configured to determine the target agent based on the user information and a preset fusion routing strategy. The preset fusion routing strategy is a strategy obtained by fusing multiple types of routing strategies and is used to determine the agent handling the call based on the real-time call traffic scenario. The call traffic scenario reflects the status of the historical service agents corresponding to the calling user and the status of agents under multiple skill groups corresponding to the call request. The multiple skill groups are skill groups used to handle the target service corresponding to the call request, including a first skill group and other skill groups. For the first skill group, when there are no idle agents and the number of queues in the first queue is less than a preset threshold, the user identifier of the calling user is added to the first queue corresponding to the first skill group. For the other skill groups, when there are no idle agents and the number of queues in any second queue is less than a preset threshold, the user identifier is added to each second queue corresponding to the other skill group. The allocation unit is used to allocate the call request to the target agent.

9. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores one or more computer programs that can be executed by the at least one processor, the one or more computer programs being executed by the at least one processor to enable the at least one processor to perform the traffic distribution method as described in any one of claims 1-7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the traffic allocation method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Session establishment method and device

    CN111601003A