Phone number selection outbound method, electronic equipment and storage medium
By optimizing number usage priority through a dynamic scoring mechanism and combining it with user history, the rigid allocation of number resources in the existing outbound calling system has been resolved, resulting in a higher connection rate and a lower complaint rate.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING LINGDU TECH CO LTD
- Filing Date
- 2026-02-10
- Publication Date
- 2026-05-08
AI Technical Summary
In existing outbound calling systems, rigid resource allocation leads to the overuse of high-value numbers, which easily triggers blocking mechanisms, and there is a lack of real-time optimization strategies for number selection based on user behavior feedback.
By collecting historical outbound call records of all outbound numbers within the target time range, the historical behavioral characteristics of each outbound number are obtained, compensation weights and basic scores are calculated, and behavioral scores are updated in real time in conjunction with outbound call results. High-scoring numbers are prioritized for outbound calls, and the priority of number usage is dynamically adjusted.
It increased the connection rate of outbound numbers, extended the lifespan of numbers, reduced operating costs, and decreased the complaint rate by 34%.
Smart Images

Figure CN122001979A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of intelligent outbound calling in the field of communication technology, and in particular relates to a method for selecting outbound call numbers, an electronic device, and a storage medium. Background Art
[0002] Existing outbound call systems usually adopt number selection strategies such as polling, random allocation, or number selection based on simple rules (such as属地 matching), and there are the following problems: Rigid resource allocation: Fixed priorities lead to overuse of high-value numbers, which are likely to trigger the blocking mechanism. Lack of adjustment: The number selection strategy is not optimized in real time by combining user behavior feedback. Summary of the Invention
[0003] In order to solve the above technical problems, this application proposes a method for selecting outbound call numbers, an electronic device, and a storage medium.
[0004] The technical solution of the method includes: A method for selecting outbound call numbers, the method comprising: Collect the historical outbound call records of all outbound call numbers within the target time range, and obtain the historical behavior characteristics of each outbound call number; According to the historical behavior characteristics and the lines where each outbound call number is located, obtain the compensation weights of the outbound call numbers on each line; According to the compensation weights and the preset scores, obtain the basic scores of each number; According to the basic scores of each number and the previous outbound call result, obtain the behavior scores of each number; Sort the behavior scores, and preferentially select the outbound call numbers with high scores for outbound calls; After each outbound call ends, update the behavior scores in real time according to the outbound call result.
[0005] Further, the process of obtaining the basic score includes using a fixed value as the preset score, and using the compensation weight × preset score result as the basic score.
[0006] Further, the behavior score result includes the basic score + outbound call score, and the outbound call score is obtained based on the classification of the outbound call result.
[0007] Further, the process of obtaining the outbound call score includes, according to the outbound call feedback, classifying the outbound call result into five categories, including A1 effective connection (call duration ≥ T), A2 short connection (0 < call duration < T), A3 user rejection, A4 no answer (ringing timeout), A5 user interception, where T is set according to the called industry; Based on the classification of the outbound call result, obtain the outbound call scores corresponding to the types, and use the outbound call scores as the outbound call scores.
[0008] Further, the process of obtaining the outbound call score includes, The baseline answer rate P_base is obtained based on the historical outbound call records of each number. That is, P_base = N_total_success / N_total_calls; Calculate the conditional answer rate P_i of the next effective call after each outbound call category occurs in the historical outbound call records. Bayesian smoothing is used in the calculation of the conditional answer rate P_i to eliminate small probability errors, i.e., P_i = (N_success_after_Ai + m * P_base) / (N_Ai + m). Calculate the probability difference ΔP_i based on P_base and P_i: ΔP_i = P_i - P_base; Based on ΔP_i and the industry characteristics of the recipient, a scaling factor is set to scale and obtain the outbound call score Delta_Score_i = round(ΔP_i * S); in, N_total_success represents the total number of calls received in history; N_total_calls represents the total number of historical calls; N_Ai represents the total number of outbound call categories A_i, where A_i ∈ (A1-A5); N_success_after_Ai: The number of times the next call succeeds after action A_i occurs.
[0009] m represents the Bayesian smoothing parameter; S represents the fraction scaling factor; round() represents rounding to the nearest integer.
[0010] Furthermore, the compensation weight acquisition process includes: Get the raw weighted connection rate (RawRate) of outbound number i i , Where Ni represents the total number of times number i has been dialed in history; IsConnected{i,k} represents the result of the k-th dialing of number i, with 1 for a connected call and 0 for an unconnected call; Decay(tk) represents the time decay function, Decay(tk) = e^{-λ * (T_{current} - tk)}, where λ is the decay factor and T_{current} - tk is the number of days since the current time; Get the global average connection rate, GlobalRate. Where M represents the total number of numbers; Calculate the confidence weight of number i. i , Among them, EffectiveCount i C is the number of valid calls made to number i, and C is a preset constant representing the confidence threshold. C is set according to the number of valid calls made to number i. Based on the raw weighted connection rate (RawRate) i Global Rate (Global Average Connection Rate) and Confidence Weight for Number i i Get the outbound call number BaseWeight of the line where number i is located. i According to BaseWeight i The average value of all numbers on the line is used as the compensation weight.
[0011] This application also proposes an electronic device including one or more processors and a memory; the memory stores computer-readable instructions that, when executed by the one or more processors, implement the steps of the method as described in any of the preceding claims.
[0012] This application also proposes a readable storage medium storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of the method as described in any of the preceding claims.
[0013] The technical solution proposed in this application optimizes the priority of number usage through a dynamic scoring mechanism, and achieves accurate matching of outbound call numbers by combining user historical behavior, thereby extending the lifespan of numbers and reducing operating costs. Attached Figure Description
[0014] Figure 1 This is a flowchart illustrating one embodiment of this application. Detailed Implementation
[0015] The technical solution of the present invention will now be clearly and completely described with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0016] In the description of this invention, it should be noted that the terms "center," "upper," "lower," "left," "right," "vertical," "horizontal," "inner," and "outer," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing the invention and for simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the invention. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0017] In the description of this invention, it should be noted that, unless otherwise explicitly specified and limited, the terms "installation," "connection," and "linking" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal communication of two components. Those skilled in the art can understand the specific meaning of the above terms in this invention based on the specific circumstances. In the following description, specific details such as particular system structures and technologies are set forth for illustrative purposes rather than for limiting purposes, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art should understand that this application can also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of this application with unnecessary details. It should be understood that, when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or collections thereof. It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0018] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0019] The present invention will be further described in detail below with reference to the accompanying drawings.
[0020] Combined with Figure 1 , an embodiment of the present application, a method for selecting and making outbound calls to phone numbers, the method includes: collecting the historical outbound call records of all outbound call numbers within a target time range, and obtaining the historical behavior characteristics of each outbound call number; obtaining the compensation weight of the outbound call numbers on each line according to the historical behavior characteristics and the lines where each outbound call number is located; obtaining the basic score of each number according to the compensation weight and a preset score; obtaining the behavior score of each number according to the basic score of each number and the previous outbound call result; sorting the behavior scores, and preferentially selecting the outbound call numbers with high scores for outbound calls; after each outbound call, the behavior score is updated in real time according to the outbound call result. In this step, by using the outbound call number segments (such as 400 numbers, 95 numbers, landlines, etc.) and the historical outbound call records of each outbound call number, an outbound call behavior score is set for the outbound call number and the score is updated in real time according to the outbound call result, and the numbers with high scores are preferentially selected for outbound calls to increase the probability of the outbound call number being connected and increase the number of effective outbound calls.
[0021] In this embodiment, in order to avoid the extreme values of individual numbers from affecting the overall number selection logic, the process of obtaining the behavior score of each number also standardizes the number score range by setting the maximum value and the minimum value. The process includes setting the highest score and the lowest score, assigning the same preset score to each number, adding / subtracting the preset score according to the outbound call result of each number. When the number score exceeds the highest score, the highest score is used as the behavior score; when the number score is lower than the lowest score, the number is marked as a cooling number and transferred to the cooling list. Generally speaking, in this step, the highest score of the outbound call number is set to 200, the preset score is set to 100, and the lowest score is not negative, that is, the highest limit of the score range is twice the preset score, and the lowest is not zero.
[0022] Based on the above embodiment, further, the process of obtaining the basic score includes using a fixed value as the preset score and using the result of compensation weight × preset score as the basic score.
[0023] Based on one or more of the above embodiments, this embodiment is further improved. The behavior score result includes the basic score + outbound call score, and the outbound call score is obtained based on the classification of the outbound call result.
[0024] Based on one or more of the above embodiments, this embodiment is further improved. The process of obtaining the outbound call score includes classifying the outbound call result into five categories according to the outbound call feedback, including A1 effective connection (call duration ≥ T), A2 short connection (0 < call duration < T), A3 user rejection, A4 no answer (ringing timeout), A5 user interception, where T is set according to the called industry; Based on the classification of outbound call results, obtain the corresponding outbound call score and use the outbound call score as the outbound call score.
[0025] Based on one or more of the above embodiments, this embodiment is further improved, wherein the outbound call scoring acquisition process includes, The baseline answer rate P_base is obtained based on the historical outbound call records of each number. That is, P_base = N_total_success / N_total_calls; in this step, the baseline answer rate represents the global baseline answer rate, which is the overall answer rate of all calls without considering the previous action. It represents the average expectation. P_base = (Number of all answered calls in history) / (Number of all call attempts in history). By calculating the baseline answer rate, we can see the number of valid connections in all outbound call records, and then calculate the baseline probability of a valid connection in all outbound calls.
[0026] We calculate the conditional answer rate P_i for each outbound call category in historical outbound call records. The conditional answer rate P_i can be considered the frequency with which the next call is answered after a specific outbound call outcome. For each outbound call outcome A_i, we find all call records that have occurred with A_i in the historical data and then count the results of the next call for these records. P_success | A_i = (Number of times the next call is answered after A_i occurs) / (Total number of times A_i has occurred in history). Bayesian smoothing is used in calculating the conditional answer rate P_i to eliminate small probability errors, i.e., P_i = (N_success_after_Ai + m * P_base) / (N_Ai + m). In this step, we introduce a prior probability (usually P_base) and a pseudo-count (m) to smooth the calculation of the conditional probability, making it more robust when the data volume is small.
[0027] Calculate the probability difference ΔP_i based on P_base and P_i: ΔP_i = P_i - P_base; Based on ΔP_i and the industry characteristics of the recipient, a scaling factor is set to scale the outbound call score to obtain Delta_Score_i = round(ΔP_i * S). In this step, ΔP_i is a probability difference (usually between -1 and +1). We need to scale it to a reasonable score adjustment range to achieve the addition or subtraction of points from the basic score. For example, with a preset score of 100, ΔP_i is scaled to [-50, +50], i.e., scaling factor S = 50. If a larger score adjustment is desired, S is set larger (e.g., S = 100, then the Delta_Score range is approximately -100 to +100). If a gentler adjustment is desired, S is set smaller (e.g., S = 30, then the Delta_Score range is approximately -30 to +30). S is mainly adjusted based on the industry's business perception and the system's sensitivity to score changes.
[0028] In each of the above steps, N_total_success represents the total number of calls received in history; N_total_calls represents the total number of historical calls; N_Ai represents the total number of outbound call categories A_i, where A_i ∈ (A1-A5); N_success_after_Ai: The number of times the next call succeeds after action A_i occurs.
[0029] m represents the Bayesian smoothing parameter; S represents the fraction scaling factor; round() represents rounding to the nearest integer.
[0030] Based on one or more of the above embodiments, this embodiment is further improved, and the compensation weight acquisition process includes: Get the raw weighted connection rate (RawRate) of outbound number i i , Where Ni represents the total number of times number i has been dialed in history; IsConnected{i,k} represents the result of the k-th dialing of number i, with 1 for a connected call and 0 for an unconnected call; Decay(tk) represents the time decay function, Decay(tk) = e^{-λ * (T_{current} - tk)}, where λ is the decay factor and T_{current} - tk is the number of days since the current time; Get the global average connection rate, GlobalRate. Where M represents the total number of numbers; Calculate the confidence weight of number i. i , Among them, EffectiveCount i C is the number of valid calls made to number i, and C is a preset constant representing the confidence threshold. C is set according to the number of valid calls made to number i. Based on the raw weighted connection rate (RawRate) i Global Rate (Global Average Connection Rate) and Confidence Weight for Number i i Get the outbound call number BaseWeight of the line where number i is located. i According to BaseWeight i The average value of all numbers on the line is used as the compensation weight.
[0031] The technical solution of this application has been tested and found to have a significantly improved connection rate compared with the control group. The test showed that the connection rate of the experimental group was 5 percentage points higher than that of the control group (data source: a financial platform with a 3-month testing period); the complaint rate decreased, and the test showed that the complaint rate of the experimental group was 34% lower than that of the control group (data source: a financial platform with a 3-month testing period).
[0032] This application implements all or part of the processes in the above embodiments, which can be accomplished by a computer program instructing related hardware. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a device / electronic device, recording media, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0033] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0034] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0035] In the embodiments provided in this application, it should be understood that the disclosed devices / electronic devices and methods can be implemented in other ways. For example, the device / electronic device controller embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual couplings or direct couplings or communication connections may be through some interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.
[0036] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0037] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
[0038] The scope of protection of this invention is not limited thereto. Any variations or substitutions of technical solutions that can be conceived without inventive effort should be included within the scope of protection of this invention. The scope of protection of this invention is determined by the claims.
Claims
1. A method for making outbound calls using selected telephone numbers, characterized in that, The method includes: Collect historical outbound call records of all outbound numbers within the target time range and obtain the historical behavioral characteristics of each outbound number; Based on historical behavioral characteristics and the lines where each outbound number is located, obtain the compensation weight for each outbound number on each line; Based on the compensation weight and preset score, obtain the basic score for each number; Based on the basic score of each number and the result of the last outbound call, obtain the behavioral score of each number; The behavior scores are sorted, and outbound calls are made to numbers with high scores first; after each outbound call, the behavior scores are updated in real time based on the call results.
2. The method according to claim 1, characterized in that, The basic score acquisition process includes using a fixed value as the preset score and using the compensation weight × preset score result as the basic score.
3. The method according to claim 1, characterized in that, The behavioral scoring results include a basic score plus an outbound call score, which is obtained based on the classification of outbound call results.
4. The method according to claim 3, characterized in that, The outbound call score acquisition process includes classifying outbound call results into five categories based on outbound call feedback: A1 valid connection, A2 brief connection, A3 user rejection, A4 no answer, and A5 user blocking. Based on the classification of outbound call results, obtain the corresponding outbound call score and use the outbound call score as the outbound call score.
5. The method according to claim 4, characterized in that, A1 is a valid call, which is an outbound call with a call duration ≥ T; A2 is a brief call, which is an outbound call with a call duration greater than 0 but less than T; A4 is an unanswered call, which is an outbound call with a ringing timeout, where T is set according to the industry of the called party.
6. The method according to claim 4, characterized in that, The outbound call scoring acquisition process includes, The baseline answer rate P_base is obtained based on the historical outbound call records of each number. That is, P_base = N_total_success / N_total_calls; Calculate the conditional answer rate P_i of the next effective call after each outbound call category occurs in the historical outbound call records. Bayesian smoothing is used in the calculation of the conditional answer rate P_i to eliminate small probability errors, i.e., P_i = (N_success_after_Ai + m * P_base) / (N_Ai + m). Calculate the probability difference ΔP_i based on P_base and P_i: ΔP_i = P_i - P_base; Based on ΔP_i and the industry characteristics of the outbound party, a scaling factor is set to scale and obtain the outbound score Delta_Score_i = round(ΔP_i * S); in, N_total_success represents the total number of calls received in history; N_total_calls represents the total number of historical calls; N_Ai represents the total number of outbound call categories A_i, where A_i ∈ (A1-A5); N_success_after_Ai: The number of times the next call succeeds after action A_i occurs; m represents the Bayesian smoothing parameter; S represents the fraction scaling factor; round() represents rounding to the nearest integer.
7. The method according to claim 1, characterized in that, The process of obtaining the compensation weight includes: Get the raw weighted connection rate (RawRate) of outbound number i i , ; Where Ni represents the total number of times number i has been dialed in history; IsConnected{i,k} represents the result of the k-th dialing of number i, with 1 for a connected call and 0 for an unconnected call; Decay(tk) represents the time decay function, Decay(tk) = e^{-λ * (T_{current} - tk)}, where λ is the decay factor and T_{current} - tk is the number of days since the current time; Get the global average connection rate, GlobalRate. ; Where M represents the total number of numbers; Calculate the confidence weight of number i. i , ; Among them, EffectiveCount i C is the number of valid calls made to number i, and C is a preset constant representing the confidence threshold. C is set according to the number of valid calls made to number i. Based on the raw weighted connection rate (RawRate) i Global Rate (Global Average Connection Rate) and Confidence Weight for Number i i Get the outbound call number BaseWeight of the line where number i is located. i According to BaseWeight i The average value of all numbers on the line is used as the compensation weight.
8. An electronic device, characterized in that, It includes one or more processors and a memory; the memory stores computer-readable instructions that, when executed by the one or more processors, implement the steps of the method as described in any one of claims 1 to 7.
9. A readable storage medium, characterized in that: The readable storage medium stores computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of the method as described in any one of claims 1 to 7.