Predictive outbound method, apparatus, electronic device, and storage medium
By acquiring the status of call center agent terminals through scheduled tasks, dynamically filtering a preset number of users to be predicted for outbound calls, and using an incremental outbound call list for prediction, the problem of low timeliness in existing technologies is solved, and more efficient prediction of outbound calls is achieved.
Patent Information
- Application Number
- CN202210961330.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-11
- Publication Date
- 2025-12-30
- Estimated Expiration
- 2042-08-11
AI Technical Summary
Existing predictive outbound calling methods are not timely, and the dispersed number of user lists makes it difficult to achieve efficient predictive outbound calling.
The current status of agent terminals in the call group is obtained through scheduled tasks, a preset number of users to be predicted for outbound calls are dynamically filtered, and an incremental outbound call list is used to make predicted outbound calls to ensure the timeliness of the list.
It improves the real-time performance of predictive outbound calls, avoids the problem of users losing business needs due to outbound call time lag, and enhances the timeliness of predictive outbound calls.
Smart Images

Figure CN116156061B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of communication technology, and in particular to a method, apparatus, electronic device and storage medium for predicting outbound calls. Background Technology
[0002] Currently, with the exponential increase in the number of users, predictive outbound calling has emerged to improve outbound calling efficiency. Predictive outbound calling is a type of batch outbound calling. This method can effectively filter out invalid numbers and distribute connected calls to agents, who can then immediately communicate with customers, greatly improving work efficiency. Therefore, predictive outbound calling can significantly improve agent call efficiency in large-scale outbound calling scenarios.
[0003] In related technologies, the user list used for predicting outbound calls is pushed out by the upstream business system at irregular intervals. Furthermore, the number of users in each user list pushed by the business system is too dispersed. Therefore, with such a dispersed user list, it is not convenient to efficiently implement predictive outbound calling methods. Summary of the Invention
[0004] This disclosure provides a method, apparatus, electronic device, and storage medium for predicting outbound calls, which addresses the problem of low timeliness in existing predictive outbound call methods.
[0005] Firstly, this disclosure provides a predictive outbound call method, applied to an outbound call system that interfaces with a business system, comprising the following steps:
[0006] In response to the triggering of a scheduled task, obtain the current status of multiple agent terminals contained in the call group;
[0007] If the current status of the multiple agent terminals meets the predicted outbound call conditions, the incremental outbound call list corresponding to the current scheduled task is obtained from the business system; wherein, the incremental outbound call list includes: the list of calls to be added between the previous scheduled task and the current scheduled task;
[0008] A preset number of users to be predicted for outbound calls are selected from the incremental outbound call list, and predictive outbound calls are made to the preset number of users to be predicted for outbound calls; wherein, the preset number is dynamically set according to the current status of the multiple agent terminals.
[0009] Secondly, this disclosure provides a predictive outbound call device, comprising:
[0010] The triggering module is suitable for responding to the triggering of a scheduled task and obtaining the current status of multiple agent terminals contained in the call group;
[0011] The acquisition module is adapted to acquire an incremental outbound call list corresponding to the current scheduled task from the business system when the current status of the multiple agent terminals meets the predicted outbound call conditions; wherein, the incremental outbound call list includes: the list of calls to be added between the previous scheduled task and the current scheduled task.
[0012] The outbound calling module is adapted to filter a preset number of predicted outbound calling users from the incremental outbound calling list and make predicted outbound calls to the preset number of predicted outbound calling users; wherein the preset number is dynamically set according to the current status of the multiple agent terminals.
[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 above-described method.
[0014] Fourthly, this disclosure provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the above-described method when executed by a processor / processor core.
[0015] The embodiments provided in this disclosure can obtain the current status of multiple agent terminals in a call group when a scheduled task is triggered. If the current status of multiple agent terminals meets the conditions for predicted outbound calls, an incremental outbound call list corresponding to the current scheduled task is obtained from the business system. A preset number of users are then selected from the incremental outbound call list for predicted outbound calls, and predicted outbound calls are made. Since the incremental outbound call list corresponding to each scheduled task includes the list of users to be called added between the previous and current scheduled tasks, the list has higher timeliness, ensuring the timeliness of predicted outbound calls and avoiding the problem of users missing service needs due to outbound call delays. In summary, this method significantly improves the real-time performance of predicted outbound calls by periodically processing the incremental outbound call list through a scheduled task.
[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 illustrating a predictive outbound call method provided in one embodiment of this disclosure;
[0019] Figure 2 A flowchart of a predictive outbound call method provided for another embodiment of this disclosure;
[0020] Figure 3 A flowchart illustrating a predictive outbound call method as a specific example of this disclosure;
[0021] Figure 4 A block diagram of a predictive outbound call device provided in an embodiment of this disclosure;
[0022] Figure 5 This is a block diagram of an electronic device provided in an embodiment of the present disclosure. Detailed Implementation
[0023] 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.
[0024] Where there is no conflict, the various embodiments of this disclosure and the features thereof in the embodiments may be combined with each other.
[0025] As used herein, the term “and / or” includes any and all combinations of one or more related enumerated entries.
[0026] 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.
[0027] 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.
[0028] In related technologies, the user list used for predicting outbound calls is pushed out by the upstream business system at irregular intervals. Furthermore, the user lists pushed by the business system each time are too scattered and vary in number. Therefore, given the irregular, inconsistent, and scattered nature of the user lists pushed by the business system, it is usually necessary to accumulate a certain number of lists before pushing them to the call center for predictive outbound calls. However, this method of pushing the lists after they have accumulated a certain number results in the lists losing their timeliness. For some business scenarios with high real-time requirements, this push method will result in users receiving outbound calls after the business needs have been lost. Therefore, there is an urgent need for a more timely method for predictive outbound calls. To solve the above problems, this disclosure provides a predictive outbound call method that automatically obtains an incremental outbound call list and executes predictive outbound calls through a scheduled task.
[0029] The predictive outbound calling method according to embodiments of this disclosure can be executed by electronic devices such as terminal devices or servers. Terminal devices can be in-vehicle devices, user equipment (UE), mobile devices, user terminals, terminals, cellular phones, cordless phones, personal digital assistants (PDAs), handheld devices, computing devices, in-vehicle devices, wearable devices, etc. The server can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services. Specifically, the method can be implemented by a processor calling a computer program stored in memory.
[0030] Figure 1 A flowchart of a predictive outbound call method is provided as an embodiment of this disclosure. This outbound call method is applied to an outbound call system that interfaces with a business system, as shown below. Figure 1 The method includes:
[0031] Step S110: In response to the triggering of a scheduled task, obtain the current status of multiple agent terminals contained in the call group.
[0032] The scheduled task can be triggered in various ways, such as when a preset time arrives or when a preset period arrives. In short, the scheduled task enables the predictive outbound calling method in this embodiment to be executed automatically and periodically.
[0033] Each time a scheduled task is triggered, the current status of multiple agent terminals within a call group is retrieved. A call group contains multiple agent terminals, and each agent terminal corresponds to one agent. The current status of an agent terminal describes whether it is currently able to handle business. Accordingly, the current status of an agent terminal includes at least one of the following: idle, resting, or busy. A resting state indicates that the agent is currently on break and unable to handle business; a busy state indicates that the agent is currently on a call; and an idle state indicates that the agent is currently available for connection.
[0034] Step S120: If the current status of multiple agent terminals meets the predicted outbound call conditions, obtain the incremental outbound call list corresponding to the current scheduled task from the business system; wherein, the incremental outbound call list includes: the list of calls to be added between the previous scheduled task and the current scheduled task.
[0035] The conditions for predicting outbound calls are primarily determined by the current status of the agent terminals. For example, the conditions for predicting outbound calls include: the number of agent terminals currently in an idle state is not less than a preset threshold. The preset threshold can be flexibly set according to the business scenario; in short, the value of the preset threshold is a natural number not less than 1.
[0036] The incremental outbound call list corresponding to this scheduled task mainly includes the list of users added between the previous and current scheduled tasks. Since the upstream business system periodically pushes fragmented user lists, in this embodiment, the incremental outbound call list corresponding to the current scheduled task is generated based on the list of users added between the previous and current scheduled tasks. Therefore, the incremental outbound call list has high real-time performance, and the incremental outbound call list corresponding to each scheduled task is different.
[0037] Step S130: Select a preset number of predicted outbound call users from the incremental outbound call list, and make predicted outbound calls to the preset number of predicted outbound call users; wherein, the preset number is dynamically set according to the current status of multiple agent terminals.
[0038] Since the incremental outbound call list may be large, and a large list could lead to a situation where no available agents are available to provide service after a predicted outbound call is connected, it is necessary to select a preset number of users for predicted outbound calls from the incremental outbound call list and then perform predicted outbound calls for these users. Because the preset number is dynamically set based on the current status of multiple agent terminals, this effectively avoids the problem of no available agents providing service after a call is connected.
[0039] In the embodiments provided in this disclosure, when a scheduled task is triggered, the current status of multiple agent terminals included in the call group can be obtained. If the current status of multiple agent terminals meets the conditions for predicted outbound calls, an incremental outbound call list corresponding to the current scheduled task is obtained from the business system. Then, a preset number of users to be predicted for outbound calls are selected from the incremental outbound call list, and predicted outbound calls are made. Since the incremental outbound call list corresponding to each scheduled task includes the list of users to be called added between the previous and current scheduled tasks, the list has higher timeliness, ensuring the timeliness of predicted outbound calls and avoiding the problem of users losing their service needs due to outbound call delays. In summary, this method significantly improves the real-time performance of predicted outbound calls by having a scheduled task periodically process the incremental outbound call list.
[0040] Figure 2 A flowchart illustrating a predictive outbound call method, provided as another embodiment of this disclosure. (Refer to...) Figure 2 The method includes:
[0041] Step S200: In response to a task setting request triggered by a task setting entry in the task configuration interface, create a scheduled task according to the setting parameters contained in the task setting request.
[0042] The task configuration interface allows operations personnel to configure tasks according to business needs. Specifically, the task configuration interface includes a task setting entry point, through which a task setting request can be triggered. This request contains setting parameters, which describe the triggering method of the scheduled task. For example, when the setting parameter in the task setting request is a periodic parameter, the scheduled task will be triggered automatically at preset time intervals; when the setting parameter is a time parameter, the scheduled task will be triggered automatically at a specified time; and when the setting parameter is a conditional parameter, the scheduled task will be triggered automatically when preset triggering conditions are met.
[0043] In the periodic triggering method, the period length can be flexibly set according to the real-time requirements of the business. In the time-specified triggering method, time periods with high outbound call connection rates can be determined based on historical outbound call data, and then the scheduled task can be triggered during these periods. For example, the outbound call connection rate in various historical time periods can be monitored in advance, and the specified time for triggering the scheduled task can be set based on the monitoring results. Historical time periods with high outbound call connection rates are typically periods when the called users are relatively idle. Additionally, in the conditional triggering method, multiple scheduled task trigger conditions can be preset, such as setting a scheduled task to trigger when the cumulative number of user lists pushed by the upstream business system reaches a preset value.
[0044] Step S210: In response to the triggering of a scheduled task, obtain the current status of multiple agent terminals contained in the call group.
[0045] Whenever a scheduled task is detected to be triggered, the current status of multiple agent terminals within the call group is retrieved. A call group contains multiple agent terminals, and each agent terminal corresponds to one agent. The current status of an agent terminal describes whether it is currently in a call; accordingly, the current status of an agent terminal includes: idle state and busy state.
[0046] Step S220: If the number of agent terminals in the current idle state is not less than a preset threshold, obtain the call list added between the previous scheduled task and the current scheduled task sent by the business system, and add the obtained call list to the list data set.
[0047] The preset threshold can be flexibly set according to the business scenario. In short, the preset threshold value must be a natural number not less than 1 to ensure that there are currently available agent terminals. Specifically, the system retrieves the user list pushed by the business system between the previous and current scheduled tasks; that is, the list of users to be called added between the previous and current scheduled tasks. This list is then added to the list data set.
[0048] Since the upstream business system periodically pushes out scattered user lists, in this embodiment, each time a list is received from the business system, the received list is stored in a list data set, which can also be called a public list. In short, this list data set is used to store the scattered user lists periodically pushed out by the business system. The list data set can be implemented in various forms such as list data tables and list data documents; this invention does not limit the storage format of the list data.
[0049] Step S230: Obtain the incremental outbound call list based on the list data set.
[0050] The process involves extracting the pending call list added between the previous and current scheduled tasks from the list data set based on the push time of each user in the user list, thus generating an incremental outbound call list corresponding to the current scheduled task. Therefore, the incremental outbound call list includes at least the pending call list added between the previous and current scheduled tasks. Consequently, the incremental outbound call list has high real-time performance, and the incremental outbound call list corresponding to each scheduled task is different.
[0051] Step S240: Filter a preset number of predicted outbound call users from the incremental outbound call list.
[0052] The preset quantity is dynamically set based on the current status of multiple agent terminals. The preset quantity is used to determine the predicted number of outbound call users corresponding to this scheduled task.
[0053] For example, in one implementation, the preset quantity is determined based on the number of idle agent terminals, the predicted outbound call connection rate, and a preset upper limit threshold: First, the ratio between the number of idle agent terminals and the predicted outbound call connection rate is calculated to obtain the estimated quantity. Then, the estimated quantity is compared with the preset upper limit threshold, and the preset quantity is determined based on the comparison result. The upper limit threshold is set based on historical outbound call data.
[0054] The above determination method is mainly to avoid the situation where there are no available agents after the call is connected due to an excessive number of predicted outbound call users. For example, parameter b represents the number of idle agent terminals currently detected in real time, and parameter c represents the predicted outbound call connection rate obtained from data analysis. For example, if b = 60 and c = 0.6, the number of lists allowed to be pushed is 100, meaning that if 100 lists are pushed for predictive dialing, it is estimated that 60 lists can be connected. These 60 lists are then processed by the 60 idle agents, ensuring that all agents are in working condition. Therefore, the estimated number obtained by the ratio between the number of idle agent terminals and the predicted outbound call connection rate reflects the estimated number of outbound calls that currently idle agents can handle. Furthermore, a maximum limit threshold is set to set the maximum number of lists pushed in a single scheduled task. Setting a maximum limit threshold prevents the problem of no available agents due to an excessive number of pushes. For example, after obtaining the estimated quantity, the estimated quantity is compared with the upper limit threshold. If the estimated quantity is less than the upper limit threshold, the estimated quantity is set as the preset quantity; if the estimated quantity is not less than the upper limit threshold, the upper limit threshold is set as the preset quantity.
[0055] In one optional implementation, considering that the incremental outbound call list contains a large number of users with different characteristics, some users may not be suitable for predictive outbound calling. Therefore, in this step, it is necessary to further determine the outbound calling method for each user in the incremental outbound call list, and select a predetermined number of predictive outbound call users from those whose outbound calling method is predictive outbound calling. Specifically, the outbound calling method for each user in the incremental outbound call list is determined according to their user type. The outbound calling methods include: preview outbound calling, robot outbound calling, and predictive outbound calling. Users whose outbound calling method is predictive outbound calling are then selected as candidate users, and a predetermined number of predictive outbound call users are selected from these candidate users. User types can be divided in various ways, such as: first-time push users, non-first-time push users, and users pushed based on business activities. Correspondingly, different outbound calling methods can be set for different types of users. For example, for first-time push users, a preview outbound calling method is used. Since first-time push users are new users, they are usually unfamiliar with the business process and have many questions; therefore, a preview outbound calling method should be used for targeted outbound calling processing. For users who are not first-time users, a predictive outbound calling approach can be used. The mapping between user type and outbound calling method can be pre-configured by operations personnel through the task configuration interface.
[0056] In another optional implementation, selecting a preset number of predicted outbound call users from the incremental outbound call list includes: determining the call priority corresponding to the user type of each user in the incremental outbound call list based on the obtained task configuration parameters; and selecting a preset number of predicted outbound call users according to the call priority from high to low. The task configuration parameters are obtained through a priority configuration request triggered in advance in the task configuration interface. For example, operations personnel can trigger a priority configuration request in advance through the priority configuration entry included in the task configuration interface, thereby setting the call priority corresponding to various user types according to the priority configuration request. User types can be categorized based on user business type, user source, and / or user historical call frequency. User business type describes the type of business to which the user belongs, and the call priority for each user business type can be set according to the importance of the business. User source determines the user's source channel, such as from various applications. User historical call frequency determines the frequency of calls made to the user within a historical period. To avoid frequent disturbances to the same user, a call frequency cap can be set for users, thereby setting a lower call priority for users whose historical call frequency exceeds the call frequency cap.
[0057] In addition to setting call priorities for each user, the user's historical call frequency can also be used to set the outbound calling method for each user. For example, in other optional implementations, for users whose historical call frequency exceeds the call frequency limit, their outbound calling method can be set to an outbound calling method other than the predicted outbound calling method, such as preview outbound calling. Specifically, the user's historical call frequency can only count the predicted outbound calling frequency within a historical time period, thus setting the preview outbound calling method for users whose predicted outbound calling frequency exceeds the call frequency limit. For example, if the call frequency limit is three predicted outbound calls within three days, the system counts the number of calls made using the predicted outbound calling method in the user's outbound calling records for the past three days. If the number of predicted outbound calls within three days is three, the user's number can no longer make predicted outbound calls, and other calling methods can be used. If the number of predicted outbound calls within three days is one, the user's number can still use the predicted outbound calling method. This call frequency control method can prevent excessive disturbance to the same user.
[0058] Step S250: Add the unfiltered predicted outbound call users from the incremental outbound call list to the list data set for retrieval by the next scheduled task.
[0059] After selecting a preset number of predicted outbound call users from the incremental outbound call list, the remaining predicted outbound call users in the incremental outbound call list are added to the aforementioned list data set. Correspondingly, when retrieving the incremental outbound call list from the list data set after the next scheduled task is triggered, it is necessary not only to retrieve the list of users to be called added between the previous and current scheduled tasks, but also to further retrieve the remaining predicted outbound call users in the incremental outbound call list corresponding to the previous scheduled task. In specific implementation, type labels can be set for the remaining predicted outbound call users in the incremental outbound call list corresponding to the previous scheduled task, so that call priority can be configured according to these type labels.
[0060] Step S260: Make predictive outbound calls for a preset number of predicted outbound call users.
[0061] Since the incremental outbound call list may be large, and a large list could lead to a situation where no available agents are available to provide service after a predicted outbound call is connected, it is necessary to select a preset number of users for predicted outbound calls from the incremental outbound call list and then perform predicted outbound calls for these users. Because the preset number is dynamically set based on the current status of multiple agent terminals, this effectively avoids the problem of no available agents providing service after a call is connected.
[0062] Furthermore, in the above embodiments, user types can be differentiated by dividing the call groups. Accordingly, when there are multiple call groups, predictive outbound calls can be made to a preset number of users to be called, as follows: First, according to the user types of the preset number of users to be called, each user to be called is added to the corresponding call group's outbound call list; then, predictive outbound calls are made to each user in each call group's outbound call list; wherein, different call groups correspond to different service types.
[0063] In addition, during the process of predicting outbound calls for each user in the outbound call list of each call group, the call results of each user are further obtained. Users whose call results are not connected are stored in the list data set for retrieval in the next scheduled task. For users whose call results are connected, they are stored in the waiting queue corresponding to the call group according to the user type. If there are no idle agent terminals in the call group, the waiting prompt content corresponding to the call group is played to the user. If there are idle agent terminals in the call group, the connected user is transferred to an idle agent terminal in the call group.
[0064] Specifically, when storing users whose calls failed to connect into a list for future scheduled tasks, these users are categorized into those with invalid numbers and those whose calls did not connect. Then, invalid number users are removed from the list of users with failed calls, and the remaining users whose calls did not connect are stored in the list. These users are then assigned a callback type, with callback users having a higher call priority than non-calling users. Users with invalid numbers are filtered out to avoid wasting call resources later.
[0065] To facilitate understanding, the following specific example will be used to explain in detail the predictive outbound calling method provided in this disclosure:
[0066] In this example, the upstream business system periodically pushes outbound call lists to the outbound calling system. The number of names pushed each time varies considerably. In related technologies, operations personnel manually push the list to the outbound calling system used to perform predictive outbound calls after it arrives. This method requires manual push action from the user. Because the number of names pushed upstream varies significantly each time, schedulers can only operate when the list changes drastically; otherwise, the operation frequency would increase.
[0067] To address the aforementioned issues, in this example, the scheduled task can be configured to execute every 5 seconds or 10 seconds, either at equal intervals or automatically based on business characteristics. Alternatively, the scheduled task can be set to run periodically or at fixed times, such as every hour on the hour. After triggering the scheduled task, it queries the database to check if it contains the latest outbound call list; if so, it pushes it to the predictive outbound call system. In this example, the lists pushed by the business system are uniformly stored in a single data table (also called the public list). The scheduled task extracts the list from the public list. Specifically, the scheduled task validates and reads the list based on certain conditions, filtering the list accordingly. For example, it filters for high-value users based on specific conditions, ensuring both real-time performance and list quality.
[0068] Figure 3 A flowchart illustrating the predictive outbound calling method in this example is shown. Figure 3 As shown, the predictive outbound call method includes the following steps:
[0069] Step S301: After the scheduled task is triggered, the status of the agents in the call center group is checked.
[0070] The scheduled task, once triggered, checks the agent status within each call group to determine if any agents are in the predicted ready state and the number of agents in the ready and idle state. If none are found, the task ends and waits for the next task execution. The scheduled task is configured and managed through a task scheduling platform and can be configured to trigger every 5 seconds, processing the real-time list accumulated in the public pool within those 5 seconds.
[0071] Step S302: Obtain the configuration information of the scheduled task.
[0072] The configuration information for scheduled tasks includes: the maximum number of lists that each call group is allowed to push in a single task, list priority configuration, etc.
[0073] Step S303: Obtain the outbound call list based on the number of ready agents and priority configuration information.
[0074] The number of lists that the call group is expected to push this time is calculated based on the number of available and ready seats in each call group and the maximum number of lists that the task is allowed to push. The expected number of lists is then filtered out through priority configuration.
[0075] Step S304: Assign templates for users whose outbound call lists belong to different call groups.
[0076] Different predictive outbound call templates are configured for different call groups to meet the business needs of different call groups.
[0077] Step S305: The call center makes predictive dialing.
[0078] Step S306: Determine whether each user number is connected.
[0079] Step S307: If the call is not connected, set the next predicted call time for the user number and adjust the priority of the user number.
[0080] Step S308: Return the user number to the predicted outbound call list pool to await the next predicted outbound call.
[0081] Step S309: If the call is connected, store the user in the corresponding call group waiting queue according to the type of call group.
[0082] Step S310: Check if there are any available agents in the corresponding call group.
[0083] Step S311: If there is an available agent, connect the user number to the available agent in the call group, add the call to the agent's summary record list, and the agent starts the call.
[0084] Step S312: After the call is completed, save the marketing summary and clear any unrecorded call records.
[0085] Step S313: Are there any unrecorded records for the agents?
[0086] Step S314: Remind the agent user to complete the supplementary recording.
[0087] Step S315: If there are no available seats, further check whether the user has hung up.
[0088] Step S316: If the user does not hang up and the agent does not answer, set the next predicted call time for the user's number and adjust the priority of the user's number.
[0089] In summary, this example offers at least the following benefits: By automatically scheduling small batches of real-time lists by call group, it automatically groups and pushes these lists, ensuring real-time dialing while leveraging predictive outbound batch dialing capabilities to improve dialing efficiency. Configurable priority filtering and pushing, along with agent status monitoring, allows for flexible adjustment of the quantity and timing of predicted list pushes, preventing situations where too many lists result in no agents answering or too few lists leave agents idle, while ensuring high-value lists are prioritized for marketing. Supplementary entry prevents lost agent performance, ensuring call connection efficiency, reducing waiting time for users and agents after predicted outbound calls are connected, and improving agent operational efficiency. Backtracking of unanswered list results allows for repeated dialing of unanswered lists, reducing list waste.
[0090] 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.
[0091] In addition, this disclosure also provides a predictive outbound calling device, electronic device, and computer-readable storage medium, all of which can be used to implement any of the outbound calling 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.
[0092] Figure 4 This is a block diagram of a predictive outbound call device provided in an embodiment of the present disclosure.
[0093] Reference Figure 4 This disclosure provides a predictive outbound call device 40, which includes:
[0094] Trigger module 41 is adapted to respond to the triggering of a timed task and obtain the current status of multiple agent terminals contained in the call group;
[0095] The acquisition module 42 is adapted to acquire an incremental outbound call list corresponding to the current scheduled task from the business system when the current status of the multiple agent terminals meets the predicted outbound call conditions; wherein, the incremental outbound call list includes: the list of calls to be added between the previous scheduled task and the current scheduled task.
[0096] Outbound call module 43 is adapted to filter a preset number of predicted outbound call users from the incremental outbound call list and make predicted outbound calls to the preset number of predicted outbound call users; wherein, the preset number is dynamically set according to the current status of the plurality of agent terminals.
[0097] Optionally, the triggering module 41 is further adapted to: in response to a task setting request triggered through a task setting entry in the task configuration interface, create a timed task according to the setting parameters contained in the task setting request;
[0098] The setting parameters included in the task setting request are used to set the triggering method of the scheduled task; and the triggering method of the scheduled task includes at least one of the following: a periodic triggering method that is automatically triggered every preset time interval, a specified time triggering method that is automatically triggered whenever a specified time arrives, and a conditional triggering method that is automatically triggered whenever a preset scheduled task triggering condition is met.
[0099] The predictive outbound call device, wherein the current state of the plurality of agent terminals satisfies the predictive outbound call condition including: the number of agent terminals currently in an idle state is not less than a preset threshold;
[0100] Furthermore, the preset quantity is determined in the following way:
[0101] The estimated number is obtained by calculating the ratio between the number of idle agent terminals and the predicted outbound call connection rate.
[0102] The estimated number is compared with a preset upper limit threshold, and the preset number is determined based on the comparison result; wherein the upper limit threshold is set based on historical outbound call data.
[0103] The predictive outbound calling device, wherein the outbound calling module 43 is specifically adapted to:
[0104] Based on the user type of each user in the incremental outbound call list, the outbound call method for each user in the incremental outbound call list is determined; wherein, the outbound call method includes: preview outbound call, robot outbound call, and predictive outbound call;
[0105] Users whose outbound calling method is predictive outbound calling are selected as candidate users, and a preset number of predictive outbound calling users are selected from the candidate users.
[0106] The predictive outbound calling device, wherein the outbound calling module 43 is specifically adapted to:
[0107] Based on the obtained task configuration parameters, determine the call priority corresponding to the user type of each user in the incremental outbound call list;
[0108] A preset number of predicted outbound call users are selected according to the call priority from high to low; wherein, the task configuration parameters are obtained by a priority configuration request triggered in advance in the task configuration interface; wherein, the user type is divided according to the user's service type, user source, and / or user's historical call frequency.
[0109] The predictive outbound call device, wherein the acquisition module 42 is specifically adapted to:
[0110] Obtain the call list added between the previous scheduled task and the current scheduled task sent by the business system, add the obtained call list to the list data set, and obtain the incremental outbound call list based on the list data set;
[0111] Furthermore, after filtering a preset number of predicted outbound call users from the incremental outbound call list, the process further includes adding unfiltered predicted outbound call users from the incremental outbound call list to the list data set for acquisition by the next scheduled task.
[0112] Optionally, the number of call groups can be multiple, and the outbound call module 43 is specifically adapted to:
[0113] Based on the user type of the preset number of predicted outbound call users, each predicted outbound call user is added to the corresponding call group's outbound call list;
[0114] For each call group's outbound call list, predict outbound calls are made to each user in that call group's outbound call list; different call groups correspond to different service types.
[0115] Optionally, the outbound call module 43 is further adapted to:
[0116] The call results for each user are obtained, and users whose call results are not connected are stored in the list data set. The user type of the users whose call results are not connected is set to return flow type for the next scheduled task to retrieve. The call priority of users with the return flow type is higher than that of users without the return flow type.
[0117] For users whose call results are connected, the user is stored in the waiting queue corresponding to the call group corresponding to the user type. If there are no available agent terminals in the call group, the user is given a waiting prompt message corresponding to the call group. If there are available agent terminals in the call group, the connected user is transferred to an available agent terminal in the call group.
[0118] Optionally, the outbound call module 43 is specifically adapted to:
[0119] Users whose calls failed were categorized into those with invalid numbers and those whose calls were not connected.
[0120] Unreachable users are stored in the list data set, and the user type of the unreachable users is set to return flow type; wherein, the call priority of users of the return flow type is higher than that of users of the non-return flow type.
[0121] Figure 5 This is a block diagram of an electronic device provided in an embodiment of the present disclosure.
[0122] Reference Figure 5 This disclosure provides an electronic device comprising: at least one processor 501; at least one memory 502; and one or more I / O interfaces 503 connected between the processor 501 and the memory 502; wherein the memory 502 stores one or more computer programs executable by the at least one processor 501, and the one or more computer programs are executed by the at least one processor 501 using the aforementioned predictive outbound call method.
[0123] This disclosure also provides a computer-readable storage medium storing a computer program thereon, wherein the computer program, when executed by a processor / processor core, implements the data migration method described above. The computer-readable storage medium may be volatile or non-volatile.
[0124] 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 performs the above-described data migration method.
[0125] 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).
[0126] 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.
[0127] 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.
[0128] 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, status 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 the status information of the computer-readable program instructions to implement various aspects of this disclosure.
[0129] 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.
[0130] 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.
[0131] 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.
[0132] 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.
[0133] 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 marked 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.
[0134] Example embodiments have been disclosed herein, and while specific terminology has been used, it is for general illustrative purposes only and should not be construed as limiting. In some instances, it will be apparent to those skilled in the art that features, characteristics, and / or elements described in conjunction with particular embodiments may be used alone, or in combination with features, characteristics, and / or elements described in conjunction 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 method of predicting an outbound call, the method comprising: The application is applied to an outbound system connected with a business system, and includes the following steps. In response to triggering of a timing task, current states of a plurality of agent terminals included in a talk group are acquired; the current states are used to indicate the ability of the agent terminals to currently handle business; In a case where the current states of the plurality of agent terminals satisfy a predicted outbound condition, an incremental outbound list corresponding to the timing task is acquired from the business system; the incremental outbound list includes a list of to-be-called numbers that is increased between a previous timing task and the timing task; A preset number of predicted outbound users are filtered from the incremental outbound list, and predicted outbound is performed on the preset number of predicted outbound users; the preset number is dynamically set according to the current states of the plurality of agent terminals.
2. The method of claim 1, wherein, Before the response to the triggering of the timing task, the method further includes: in response to a task setting request triggered through a task setting entry included in a task configuration interface, creating a timing task according to setting parameters included in the task setting request; The setting parameters included in the task setting request are used to set the triggering mode of the timing task; and the triggering mode of the timing task includes at least one of the following: a periodic triggering mode triggered at every preset time interval, a specified time triggering mode triggered when a specified time arrives, and a condition triggering mode triggered when a preset timing task triggering condition is satisfied.
3. The method of claim 1, wherein, The current states of the plurality of agent terminals satisfy the predicted outbound condition, including that the number of agent terminals in an idle state is not less than a preset threshold value; The preset number is determined by the following method: A ratio between the idle number of agent terminals in an idle state and the connection rate of predicted outbound is calculated to obtain an estimated number; The estimated number is compared with a preset upper limit threshold value of the number, and the preset number is determined according to a comparison result; the upper limit threshold value of the number is set according to historical outbound data.
4. The method of claim 1, wherein, The preset number of predicted outbound users are filtered from the incremental outbound list, including: According to the user types of each user in the incremental outbound list, the outbound mode of each user in the incremental outbound list is determined; the outbound mode includes preview outbound, robot outbound, and predicted outbound; Users with the outbound mode of predicted outbound are filtered as candidate users, and a preset number of predicted outbound users are filtered from the candidate users.
5. The method of claim 1, wherein, The preset number of predicted outbound users are filtered from the incremental outbound list, including: According to the acquired task configuration parameters, a call priority corresponding to the user type of each user in the incremental outbound list is determined; A preset number of predicted outbound users are filtered according to the call priority; the task configuration parameters are obtained through a priority configuration request triggered in the task configuration interface in advance; the user type is divided according to user business categories, user sources, and / or user historical call frequencies.
6. The method of claim 1, wherein, The incremental outbound list corresponding to the timing task is acquired from the business system, including: obtain a to-be-called list added by a service system between a last timing task and the current timing task, add the obtained to-be-called list to a list data set, and obtain the incremental outbound call list according to the list data set; after the preset number of predicted outbound call users are screened from the incremental outbound call list, the method further includes: adding the predicted outbound call users in the incremental outbound call list that are not screened to the list data set for obtaining by a next timing task.
7. The method according to any of claims 1 to 6, characterized in that The number of the traffic groups is multiple, and the predicting outbound call for the preset number of predicted outbound call users includes: adding each predicted outbound call user to a corresponding traffic group outbound call list according to a user type of the predicted outbound call user; predicting outbound call for each user in the traffic group outbound call list respectively for each traffic group outbound call list; different traffic groups correspond to different service types.
8. The method of claim 7, wherein, The predicting outbound call for each user in the traffic group outbound call list respectively for each traffic group outbound call list includes: obtaining a call result of each user, storing a user with an unconnected call result in a list data set, and setting a user type of the user with the unconnected call result as a reflux type for obtaining by a next timing task; the call priority of the user of the reflux type is higher than that of a user of a non-reflux type; for a user with a connected call result, storing in a waiting queue corresponding to a traffic group corresponding to a user type according to the user type, and playing a waiting prompt content corresponding to the traffic group for the user in a case where there is no idle agent terminal in the traffic group; in a case where there is an idle agent terminal in the traffic group, the connected user is transferred to the idle agent terminal in the traffic group.
9. A predictive outbound device, comprising: The method includes: a triggering module adapted to obtain a current state of a plurality of agent terminals included in a traffic group in response to triggering of a timing task; the current state is used to indicate a capability of the agent terminal in currently processing a service; an obtaining module adapted to obtain an incremental outbound call list corresponding to the current timing task from a service system in a case where the current state of the plurality of agent terminals meets a predicted outbound call condition; the incremental outbound call list includes a to-be-called list added between a last timing task and the current timing task; an outbound call module adapted to screen a preset number of predicted outbound call users from the incremental outbound call list, and to predict outbound call for the preset number of predicted outbound call users; the preset number is dynamically set according to the current state of the plurality of agent terminals.
10. An electronic device, comprising: The method includes: at least one processor; and a memory in communication connection with the at least one processor; wherein the memory stores one or more computer programs that can be executed by the at least one processor, and the one or more computer programs are executed by the at least one processor to enable the at least one processor to execute the method according to any one of claims 1-8.
11. A computer readable storage medium having stored thereon a computer program, characterized in that, The computer program, when executed by the processor, implements the method according to any one of claims 1-8. The computer program, when executed by the processor, implements the method according to any one of claims 1-8.
Citation Information
Patent Citations
Call center prediction outbound method and system
CN108650426A
Outgoing call rule configuration method, outbound call method, apparatus, and communication device
CN109636302A