User name list processing method and device, electronic equipment and storage medium

CN122840982APending Publication Date: 2026-09-29MASHANG CONSUMER FINANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510379338.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-27
Publication Date
2026-09-29

AI Technical Summary

Benefits of technology

[0014]第四方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序在被处理器执行时实现上述的用户名单的处理方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122840982A_ABST
    Figure CN122840982A_ABST
Patent Text Reader

Abstract

The present disclosure provides a user name list processing method and device, electronic equipment and storage medium. The method comprises: obtaining a comparison result between a priority of a first user name list and a priority of a second user name list; wherein the first user name list and the second user name list correspond to the same user, and the generation time of the second user name list is later than the generation time of the first user name list; in the case of determining that the priority of the second user name list is not less than the priority of the first user name list according to the comparison result, determining a delay time according to the difference between the priority of the second user name list and the priority of the first user name list; in the case of the expiration of the delay time, replacing the first user name list with the second user name list. This way can not only avoid the problem of affecting the business function due to the old list being replaced too early, but also avoid the problem of affecting the timeliness of the new list due to the old list being replaced too late.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, and in particular to a method, apparatus, electronic device, and storage medium for processing user lists. Background Technology

[0002] In the field of user data processing, user list processing is a crucial task. User lists typically contain a large amount of personal information and related data about users, such as user IDs, names, and business activities. The accuracy and timely processing of this information are of great significance for maintaining system stability and improving user experience.

[0003] User lists can originate from various channels, such as user registration, activity participation, and data import. Furthermore, user lists allow for flexible push notifications for various business activities. Therefore, efficiently processing user lists corresponding to multiple business activities has become a pressing technical challenge. Summary of the Invention

[0004] This disclosure provides a method, apparatus, electronic device, and storage medium for processing user lists, which can efficiently process user lists corresponding to various business activities.

[0005] Firstly, this disclosure provides a method for processing a user list, which includes:

[0006] Obtain the comparison result between the priority of the first user list and the priority of the second user list; wherein the first user list and the second user list include the same users, and the second user list was generated later than the first user list.

[0007] If, based on the comparison results, it is determined that the priority of the second user list is not less than the priority of the first user list, the delay time is determined based on the degree of difference between the priorities of the second user list and the first user list.

[0008] Upon the expiration of the delay period, the second user list replaces the first user list; wherein the first user list corresponds to the first business activity, and the second user list corresponds to the second business activity; the priority is determined based on the user attribute information associated with the first business activity and / or the second business activity.

[0009] Secondly, this disclosure provides a user list processing apparatus, which includes:

[0010] The acquisition module is adapted to acquire the comparison result between the priority of the first user list and the priority of the second user list; wherein the first user list and the second user list include the same users, and the generation time of the second user list is later than the generation time of the first user list;

[0011] The determining module is adapted to determine a delay time based on the difference between the priorities of the second user list and the first user list, provided that the priority of the second user list is determined to be no less than the priority of the first user list based on the comparison result.

[0012] The replacement module is adapted to replace the first user list with the second user list when the delay time expires; wherein the first user list corresponds to the first business activity, and the second user list corresponds to the second business activity; the priority is determined based on the user attribute information associated with the first business activity and / or the second business activity.

[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 user list processing method.

[0014] Fourthly, this disclosure provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the above-described method for processing the user list.

[0015] Fifthly, this disclosure provides a computer program product comprising computer-readable code, or a non-volatile computer-readable storage medium carrying computer-readable code, wherein when the computer-readable code is executed in a processor of an electronic device, the processor in the electronic device performs the aforementioned user list processing method.

[0016] In the user list processing method provided in this embodiment, firstly, a comparison result between the priority of a first user list and the priority of a second user list is obtained; then, if the priority of the second user list is determined to be no less than the priority of the first user list based on the comparison result, a delay time is determined based on the difference between the priorities of the second user list and the first user list; finally, when the delay time expires, the second user list replaces the first user list. The first and second user lists include the same users, and the second user list was generated later than the first user list. The first user list corresponds to a first business activity, and the second user list corresponds to a second business activity. The priority is determined based on user attribute information associated with the first and / or second business activities. Therefore, this method can calculate the priority of the second user list (also called the new list) and the first user list (also called the old list) corresponding to the same user based on the user attribute information associated with the business activities. Since the new and old lists correspond to different business activities, their priorities are usually different. Furthermore, the priority reflects the importance of the list in the corresponding business activity. Accordingly, provided the new list has a priority no lower than the old list, a delay time is determined based on the difference in priorities. Upon the expiration of this delay, the old list is replaced by the new list. Therefore, this method can reasonably determine the delay time for the old list based on the priority difference between the new and old lists, thus better matching the delay time of the old list with business needs, balancing the continuity of business functions of the old list with the timeliness of the new list. Thus, this method avoids both the problem of business functions being affected by replacing the old list too early and the problem of the timeliness of the new list being affected by replacing the old list too late.

[0017] 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

[0018] 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:

[0019] Figure 1 An application scenario diagram of the user list processing method and apparatus provided in the embodiments of this disclosure;

[0020] Figure 2A flowchart illustrating a user list processing method provided in this embodiment of the disclosure;

[0021] Figure 3 A flowchart illustrating the process of processing a user list in an example of this disclosure is shown through the first delayed policy execution entry point;

[0022] Figure 4 A block diagram of a user list processing apparatus provided in an embodiment of this disclosure;

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

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

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

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

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

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

[0029] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information in this technical solution comply with relevant laws and regulations and do not violate public order and good morals. The use of user data in this technical solution follows relevant national laws and regulations (e.g., the "Information Security Technology - Personal Information Security Specification"). For example, appropriate measures are taken for personal information access control; restrictions are imposed on the display of personal information; the purpose of using personal information does not exceed the scope of direct or reasonable association; and explicit identity targeting is eliminated when using personal information to avoid precisely identifying specific individuals.

[0030] In telemarketing and other business scenarios, when a new user list is generated, the old user list is usually replaced immediately. The new and old user lists are used to push different business activities to the same users. However, in some cases, the business activities corresponding to the old user list are still active. If the list replacement operation is performed immediately, it will affect the business activities corresponding to the old user list. To solve this problem, this disclosure proposes a user list processing method that reasonably determines the delay time of the old list by calculating the priority of the new and old user lists separately, thereby balancing the continuity of business functions of the old list and the timeliness of business functions of the new list.

[0031] Figure 1 This diagram illustrates an application scenario of the user list processing method and apparatus provided in this embodiment of the disclosure.

[0032] like Figure 1 As shown, the application scenario of this disclosure embodiment may include terminal device 101, network 103, and server 102. Network 103 is used as a medium to provide a communication link between terminal device 101 and server 102. Network 103 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.

[0033] Users can use terminal device 101 to interact with server 102 via network 103 to receive or send messages, etc. Various communication client applications can be installed on terminal device 101, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (for example only).

[0034] Terminal device 101 can be various electronic devices with a display screen and supporting web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers. Terminal device 101 can be a client device corresponding to a user in the first user list and / or the second user list.

[0035] Server 102 can be a server that provides various services, such as a backend management server that supports websites browsed by users using terminal device 101 (for example only). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.

[0036] It should be noted that the user list processing method and apparatus provided in this embodiment can be executed by server 102. Accordingly, the user list processing method and apparatus provided in this embodiment can be located in server 102. Alternatively, the user list processing method and apparatus provided in this embodiment can also be executed by a server or server cluster that is different from server 102 and capable of communicating with terminal device 101 and / or server 102. Accordingly, the user list processing method and apparatus provided in this embodiment can also be located in a server or server cluster that is different from server 102 and capable of communicating with terminal device 101 and / or server 102.

[0037] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.

[0038] Figure 2 A flowchart illustrating a user list processing method provided in this embodiment of the disclosure. (Refer to...) Figure 2 The method includes:

[0039] Step S210: Obtain the comparison result between the priority of the first user list and the priority of the second user list; wherein the first user list and the second user list include the same users, and the generation time of the second user list is later than the generation time of the first user list.

[0040] The user list refers to a collection containing users' personal information and related data, such as user ID, name, and contact information. In this step, the first user list and the second user list refer to two lists generated at different times, each containing the same user. The inclusion of the same user in both lists can be understood as including at least one identical user. The generation time refers to the point in time when the user list was created or recorded. Since the second user list was generated later than the first user list, it can also be called the new list, and the first user list the old list. In practice, the first and second user lists may include one or more list data items. In a specific example, the first and second user lists may each contain one list data item, corresponding to the same user. Alternatively, the first and second user lists may each contain multiple list data items, with at least one item corresponding to the same user. This application does not limit the specific implementation details. Priority is used to characterize the order of user lists in terms of processing order, importance, etc. Lists with higher priority will be processed first or have higher importance.

[0041] Priority can be represented in various forms, such as scores and levels. For example, priority-related indicators can be quantified to obtain priority scores, with higher scores indicating higher priority. Alternatively, priority levels can be determined based on priority-related indicators. For instance, N priority levels can be pre-set in descending order, thus representing the magnitude of priority through these levels.

[0042] Step S220: If the priority of the second user list is determined to be no less than the priority of the first user list based on the comparison results, the delay time is determined based on the difference between the priority of the second user list and the priority of the first user list.

[0043] If the priority of the second user list is not lower than that of the first user list, then the first user list needs to be replaced by the second user list. If the priority of the second user list is lower than that of the first user list, then the second user list can be discarded.

[0044] The degree of difference between the priority of the second user list and the priority of the first user list is used to characterize the magnitude of the difference in priority between the two user lists. This degree of difference can also be called the difference coefficient, matching difference, etc. For example, when priority is represented by scores, the degree of difference can be determined based on the difference between priority scores. Of course, in practice, various methods can be used to determine the degree of difference. For example, when priority is represented by levels, a corresponding score can be pre-configured for each level, and the degree of difference can be determined by the difference in scores corresponding to priority levels. In short, those skilled in the art can determine the degree of difference in various ways, as long as it can characterize the degree of difference in priority between the two user lists.

[0045] This method allows for precise setting of a delay time based on the priority difference between two lists. This ensures the flexibility and accuracy of list processing, enabling dynamic adjustment of the processing strategy based on the priority differences between the lists. The "difference" refers to the degree of difference in priority between the two user lists, which can be an absolute difference, a relative ratio, or other metrics. The "delay time" refers to the waiting time set by the system based on the priority difference when processing user lists, used to control the timing of user list switching.

[0046] In practical implementation, numerical differences can be used to directly calculate the numerical difference between two priority levels; alternatively, a grade difference can be used, dividing priorities into multiple grades and comparing the grade differences between the two lists; or a combination of business rules and specific algorithms can be used to comprehensively evaluate the differences between the two lists across multiple dimensions to derive the degree of difference. Furthermore, the latency can be determined in several ways: for example, setting a fixed latency range based on the magnitude of the degree of difference, with a larger degree of difference resulting in a longer latency; another example is using a dynamic adjustment mechanism to adjust the latency in real time based on changes in the degree of difference, ensuring processing efficiency and accuracy; yet another example is dynamically adjusting the latency based on system load and processing capacity to balance processing speed and system resource utilization.

[0047] In one alternative implementation, the difference can be calculated using an absolute difference: for example, the priority score of the second user list is 10, the priority score of the first user list is 8, and the difference is 2. The delay time can increase linearly with the difference, such as increasing the delay by 1 second for each unit of difference. The advantage of this method is its simplicity of calculation, making it suitable for scenarios with small differences. In another alternative implementation, the difference can be calculated using a relative ratio: for example, the priority score of the second user list is 10, the priority score of the first user list is 5, and the difference is 2(10 / 5). The delay time can be set according to the multiple relationship of the difference, such as a delay of 2 seconds when the difference is 2. The advantage of this method is that it better reflects the proportional relationship between priorities, making it suitable for scenarios with large differences. In yet another alternative implementation, the difference can be calculated using a non-linear function: for example, when the difference is large, the delay time increases exponentially. The advantage of this method is its greater flexibility in adapting to the needs of different scenarios, making it suitable for scenarios requiring fine-grained control of the delay time.

[0048] Step S230: When the delay time expires, replace the first user list with the second user list; wherein the first user list corresponds to the first business activity, and the second user list corresponds to the second business activity; the priority is determined based on the user attribute information associated with the first business activity and / or the second business activity.

[0049] The expiration of the delay time refers to the arrival of the delayed time. For example, the expiration of the delay time means that the time interval between the current time point and the time point in step S220 where the delay time is determined is equal to the duration corresponding to the delay time. For instance, if the delay time is represented by the length of time, and the time point where the delay time is determined in step S220 is 11:00, and the delay time is 1 hour, then the time point where the delay time expires is 12:00. Of course, in addition to representing it by relative time such as the length of time, the delay time can also be represented by absolute time such as a specific moment (e.g., X o'clock X minute), and this application does not limit this.

[0050] Specifically, by replacing the first user list with the second user list upon the expiration of the delay time, the system dynamically adjusts the user list. The first and second user lists correspond to different business activities, and their priorities are determined based on user attribute information associated with each activity. This combination of a priority mechanism and a delay time optimizes the user list switching logic and improves the execution efficiency of business activities. Business activities include specific tasks or operations requiring user participation within the business system, such as marketing campaigns, user surveys, push notifications, business processing, and business adjustments. User attribute information refers to user-related characteristic data, such as user level, activity level, geographical location, and interactive behavior.

[0051] Therefore, this method can calculate priorities for the second user list (also known as the new list) and the first user list (also known as the old list) corresponding to the same user based on user attribute information associated with business activities. Since the new and old lists correspond to different business activities, their priorities are usually different. Furthermore, the priority reflects the importance of the list in the corresponding business activity. Accordingly, if the priority of the new list is not lower than that of the old list, a delay time is determined based on the difference in priorities, and the old list is replaced by the new list when the delay time expires. Thus, this method can reasonably determine the delay time of the old list based on the difference in priorities between the new and old lists, making the delay time of the old list more aligned with business needs, balancing the continuity of business functions of the old list with the timeliness of business functions of the new list. Therefore, this method can avoid the problem of business functions being affected by replacing the old list too early, and also avoid the problem of the timeliness of the new list being affected by replacing the old list too late.

[0052] Furthermore, those skilled in the art can make various modifications and variations to the methods in the embodiments of this disclosure:

[0053] In one alternative implementation, priority can be determined based on individual user attribute information for a single business activity. For example, the user attribute information for the first business activity includes operation records corresponding to a first preset operation type, and the user attribute information for the second business activity includes operation records corresponding to a second preset operation type. The system can calculate the priority of the first user list and the second user list based on the operation records corresponding to either the first or second preset operation type. The advantage of this approach is its simplicity and suitability for scenarios where user attribute information differs significantly between business activities.

[0054] Optionally, priority can also be determined comprehensively based on multiple user attribute information from multiple business activities. For example, the system can simultaneously consider the operation records corresponding to a user's first preset operation type and a second preset operation type, and calculate a comprehensive priority through weighted average. The advantage of this method is that it can more comprehensively reflect user attribute information and is suitable for scenarios that require comprehensive consideration of multiple factors. The user attribute information used to calculate the priority can be dynamically changing. For example, operation records are constantly updated, and correspondingly, the priority calculated at different business time points may be different, thus ensuring high real-time priority to meet real-time changing business needs and making it suitable for highly dynamic scenarios.

[0055] The first preset operation type and the second preset operation type can be flexibly set according to the type and characteristics of business activities. For example, they may include: click operation, browsing operation, comment operation, etc. This application does not limit the specific connotation of the first preset operation type and the second preset operation type.

[0056] In one optional implementation, to improve the accuracy of priority and ensure that it effectively represents the importance of the user list in the corresponding business activity, priority can be determined primarily based on the activity type of the corresponding business activity and user attribute information highly correlated with that activity type. Correspondingly, the user attribute information associated with the first and / or second business activities can be determined based on their activity types. The activity type can be determined based on the activity category and activity objective. For example, the priority of the first user list can be determined as follows: determine the first activity type of the first business activity, obtain the first user attribute information associated with the first activity type, and determine the priority of the first user list based on the first user attribute information. Similarly, the priority of the second user list can be determined as follows: determine the second activity type of the second business activity, obtain the second user attribute information associated with the second activity type, and determine the priority of the second user list based on the second user attribute information. In specific implementation, the activity objectives can be clarified first based on the activity type of the business activity, such as improving conversion rates, increasing user activity, and improving satisfaction. Then, based on the activity objectives, the user attribute information associated with the activity type can be determined. For example, for marketing-related business activities, user purchase history, spending amount, activity level, and interests can be used as user attribute information. For customer service-related business activities, user complaint records, service request frequency, and satisfaction ratings can be used as user attribute information. For product promotion-related business activities, user product usage frequency, feature preferences, and feedback can be used as user attribute information.

[0057] The user attribute information may include at least one of the following: a first type of user interaction information associated with the activity function entry points in the first and / or second business activities; and a second type of user interaction information associated with the push status and / or push results of the first and / or second business activities. The first type of user interaction information associated with the activity function entry points in the first and / or second business activities typically refers to user interaction information triggered by these entry points. Thus, the first type of user interaction information is triggered by activity function entry points in the business activities, which are used to implement corresponding business functions within the activities, such as login entry points, update entry points, resource application entry points, and resource trial entry points. By using the first type of user interaction information associated with activity function entry points, the user's interaction depth with a particular business activity can be effectively determined, and thus, the user's interest in that business activity can be determined based on the interaction depth. The interaction depth is determined based on the frequency of user interaction with each activity function entry point in the business activity and the importance weight of the interacted activity function entry points. The second type of user interaction information is determined based on the push status of the business activities, allowing for flexible determination of whether the list needs to be replaced based on changes in the current push status.

[0058] In one optional implementation, when there are multiple activity function entry points, the first type of user interaction information includes: multiple user interaction sub-information associated with multiple activity function entry points (i.e., multiple user interaction sub-information triggered for each of the multiple activity function entry points), and each user interaction sub-information corresponds to a different information weight. Each user interaction sub-information corresponds to one activity function entry point. Furthermore, the information weight can be determined based on the importance weight of the corresponding activity function entry point. For example, the information weight of the user interaction sub-information corresponding to the login function entry point is less than the information weight of the user interaction sub-information corresponding to the resource application function entry point. Additionally, the push status can include at least one of the following: not pushed, pushing, pushed, and pushed terminated; different push statuses can correspond to different status weights. The result type of the push result can include at least one of the following: accept type, reject type, and undeclared type; different result types can correspond to different result weights. Accordingly, priorities can be determined as follows: First, determine the information score corresponding to the user interaction sub-information (specifically, based on the interaction frequency), the status score corresponding to the push status (specifically, a score mapping table can be pre-set to store the score corresponding to each status), and the result score corresponding to the push result (specifically, the score corresponding to each result can be further stored in the score mapping table); then, weight the information score, status score, and result score according to the information weight, status weight, and result weight; finally, determine the priority based on the processing result. Weight processing can include various types such as weighted processing and weight assignment. For example, the information score, status score, and result score can be weighted according to the information weight, status weight, and result weight, and the priority can be determined based on the weight allocation result. In practice, the information score, status score, and result score can be weighted according to the information weight, status weight, and result weight to obtain the score corresponding to the priority. By using the above method, the impact of various interactive information on user interest is fully considered during the priority calculation process. This ensures that the priority accurately reflects the user's level of interest in the business activities, thereby making the timing of subsequent list replacements more accurate. For example, list replacement can be performed when the user's interest in the first business activity decreases, thus avoiding the problem of the user missing out on the first business activity due to premature list replacement when the user is still interested in it.

[0059] In summary, in application scenarios where multiple business functions are supported and these functions may be mutually exclusive (i.e., users cannot use both the first and second business activities simultaneously, but can only choose one), the priority calculation method described in this application can accurately determine the timing of list replacement. This allows the user to be guided to participate in the second business activity when their interest in the first activity decreases, ensuring both effective reach of the first activity (avoiding some users missing it due to premature list replacement) and timely delivery of the second activity. In one optional implementation, the second and first business activities can correspond to the same business function, with the first activity based on the old version's business logic and the second activity based on the new version's. Accordingly, if the priority determines that the user is more accustomed to the old version's business logic, the delay time can be set slightly longer; if the priority determines that the user is less accustomed to the old version's business logic, the delay time can be set shorter. In another alternative implementation, the second business activity and the first business activity can correspond to different business functions. Accordingly, if it is determined that the user has a higher interest in the first business activity based on priority, the delay time can be set to be slightly longer; if it is determined that the user has a lower interest in the first business activity based on priority, the delay time can be set to be shorter.

[0060] In one optional implementation, to facilitate efficient management of the lists, after determining the delay time based on the difference in priority between the first and second user lists, the second user lists are further added to a delay queue. The delay step size for each second user list in the delay queue is set according to the delay time. This allows for determining whether the delay time for each second user list has been reached based on its delay step size. The arrival of the second user list's delay time can also be referred to as the expiration of the second user list's delay time. Since the user base is often large in practice, the number of second user lists is also significant. To facilitate the management of multiple second user lists, a delay queue can be set up. Each queue element in the delay queue corresponds to a user's second user list, and the delay step size for each queue element is determined based on that user's delay time. Multiple queue elements in the delay queue can be sorted according to their delay steps. Correspondingly, by traversing the delay queue, the replacement timing for each second user list can be accurately determined.

[0061] In one optional implementation, when determining the delay time based on the difference between the priorities of the second and first user lists, list attribute information can be further incorporated. First, an initial delay time is determined based on the difference between the priorities of the second and first user lists. Then, based on the list attribute information corresponding to the first user list, a calibration validity period corresponding to the list attribute information is determined. The delay time is then determined based on the comparison between the calibration validity period and the initial delay time. The calibration validity period is used to set the minimum in-database duration of the first user list, also called the minimum validity period. For example, if the initial delay time is earlier than the calibration validity period, the final delay time is determined based on the calibration validity period to meet the calibration validity period requirement; if the initial delay time is later than the calibration validity period, the initial delay time can be directly determined as the final delay time. The list attribute information can include at least one of the following: list type information characterizing the list generation method (e.g., manual generation, predictive generation), and activity type information characterizing the activity priority of the business activity corresponding to the list. Correspondingly, longer validity periods can be configured for manually generated lists (which are usually more accurate) or lists with high activity priority to ensure that such lists are not replaced in a short period of time, thereby ensuring effective reach of such lists.

[0062] In one optional implementation, step S110 can be triggered in multiple ways. For example, step S110 can be triggered when a new user list is detected. Accordingly, before obtaining the comparison result between the priority of the first user list and the priority of the second user list, a candidate user list (i.e., the newly generated list) corresponding to the second business activity is further obtained. If the candidate user list corresponds to the same user as any first user list in the list push database, the candidate user list is determined as the second user list, and step S110 is executed based on the second user list to obtain the comparison result between the priority of the first user list and the priority of the second user list. The list push database stores multiple first user lists. By comparing the candidate user list with the user identifiers (such as user ID, user mobile phone number, etc.) of the multiple first user lists in the list push database, the second user list corresponding to the same user is identified. This method can identify whether the candidate user list to be added to the database is a second user list when a new list is added, and trigger step S110 if the identification result is yes, thereby ensuring the timely addition of the new list to the database.

[0063] For example, step S110 can be triggered if a change in the status of the list in the database is detected. Correspondingly, before obtaining the comparison result between the priority of the first user list and the priority of the second user list, the push status and / or push result of any user list in the list push database is dynamically monitored for changes. Accordingly, if a change in the push status and / or push result of any first user list in the list push database is detected, a second user list is determined based on the candidate user list corresponding to the second business activity. Step S110 is then executed based on the second user list to obtain the comparison result between the priority of the first user list and the priority of the second user list. The core of this method is that whenever a change in the push status and / or push result of any first user list in the list push database is detected, a second user list is selected from the candidate user list to be added to the database, and its priority is calculated. Since the priority calculation is related to the push status and / or push result of the first user list, the calculated priority result of the first user list will usually change whenever the push status and / or push result of the first user list changes. Therefore, this method can accurately determine the appropriate replacement timing by dynamically monitoring changes in the status of the first user list. For example, if the push notification result for the first user list changes from an "unresponsive" type to a "reject" type, it indicates that the users in the first user list are no longer interested in the first business activity. Therefore, by recalculating the priority, the second user list can be replaced in a timely manner. Similarly, if the push notification result for the first user list changes from "never pushed," "push in progress," or "push already pushed" to "push terminated," the priority can be recalculated to replace the second user list in a timely manner.

[0064] The two triggering methods described above can be used in combination. For example, when a new user list is detected and step S110 is triggered, if the comparison result determines that the priority of the second user list is lower than that of the first user list, a preset flag can be added to the second user list. Correspondingly, when a change in the status of the in-stock list is detected and step S110 is triggered, the second user list to be processed can be quickly determined based on the added preset flag.

[0065] In one optional implementation, the first business activity and / or the second business activity includes at least one of the following types: resource configuration type, resource reclamation type, resource conversion type, resource adjustment type, and business return type. Different types of business activities correspond to different activity priorities, and the priority can be determined based on the activity priority. For example, business activities with higher activity priorities typically have higher overall priorities. The business return type has low real-time requirements, therefore it has the lowest activity priority, while the resource configuration type has higher real-time requirements, therefore it can have the highest activity priority. The resource configuration type is used to configure corresponding business resources for users. These business resources can be various physical or virtual resources such as currency, tokens, red envelopes, and business vouchers. The resource reclamation type is used to reclaim configured business resources to achieve resource reconfiguration. The resource conversion type is used to adjust the resource attribute information of configured business resources, such as adjusting the usage duration, frequency, and method of the business resource in the business activity. Configuring different activity priorities for different types of business activities helps improve the accuracy of priorities and business adaptability.

[0066] To facilitate understanding, the following example illustrates the technical implementation details of the above embodiments:

[0067] This example uses a telemarketing scenario for illustration. However, in reality, the business activities in this application are not limited to those in telemarketing scenarios; they can also be business activities in various scenarios such as customer service, online education, and financial services. In this example scenario, for the first and second business activities that are mutually exclusive, only one business activity can be pushed to the same user at the same time; both business activities cannot be pushed to the same user simultaneously.

[0068] In related technologies, when a system receives a new list corresponding to a second business activity, it typically processes it immediately. For example, it can directly replace the old list (also called the in-stock list) corresponding to the first business activity with the new list corresponding to the second business activity. Alternatively, it can determine whether to save the new list and remove the old list by judging the priority attribute of the in-stock list of the user to which the new list belongs (specifically, a specified field in the list information). The new and old lists usually correspond to the same user ID, and the fields in the new and old lists can be the same or different in terms of the number and content of fields. The new list is used to push the second business activity to users, and the old list is used to push the first business activity to users.

[0069] The above methods do not consider the current push status and results of users' existing lists in the database, which may lead to the premature removal of high-value user lists, thus affecting the follow-up pace and push effectiveness. In the telemarketing industry, effectively managing user lists is crucial to improving push efficiency. However, the list management methods in the aforementioned technologies often have the following problems:

[0070] (1) Lack of dynamic adjustment mechanism: When a new list arrives, it cannot intelligently determine whether it should be immediately added to the database for processing or replace the list currently being processed, which may result in important lists being ignored or the list currently being processed being removed from the database.

[0071] (2) Insufficient fixed strategies: Relying solely on fixed strategies or manual intervention to determine list replacements makes it difficult to adapt to complex business needs.

[0072] To address the aforementioned issues, this example proposes a technical solution that automatically manages user lists based on time windows, priorities, and dynamic delay mechanisms to improve telemarketing efficiency. This example at least solves the problems of when to process new user lists and the dynamic management of lists. In this example, when a new user list corresponding to a second business activity arrives, it needs to intelligently determine whether to update the user list immediately. If an immediate update is required, the user list originally used for the first business activity will be updated to the user list used for the second business activity. If an immediate update is not required, a certain delay time needs to be calculated, and after the delay time expires, the user list used for the first business activity will be updated to the user list used for the second business activity. Therefore, it is necessary to accurately determine how long the new list should be delayed before being added to the database or replacing the current list.

[0073] In this example, a delay strategy and priority calculation rules need to be predefined. Multiple delay strategies can be defined through configuration files or database tables, and dynamic updates are allowed. In this example, the delay strategy includes at least: a time window control strategy for determining the validity period of the user list, and a score calculation strategy for determining the priority of the user list. The following sections describe these two strategies in detail:

[0074] (1) Time Window Control Strategy: This strategy determines the validity period corresponding to the list attribute information based on the user list. For example, it can define a list that will not be replaced for a certain period of time based on certain dimensions, such as a minimum in-database duration of M. Dimensions can include list type, source, and other attributes. Table 1 shows a specific strategy configuration:

[0075] Table 1

[0076]

[0077] Because manually created lists have higher business value, a longer minimum storage time can be configured for them to ensure that their effectiveness is fully realized.

[0078] (2) Score calculation strategy for determining priority:

[0079] Specifically, the score calculation strategy for the list can be set through the rules engine. First, the required user attribute information needs to be determined.

[0080] Table 2 shows specific examples of user attribute information used to calculate priorities. Table 2 also shows the scores corresponding to different values ​​of each user attribute information.

[0081] Table 2

[0082]

[0083]

[0084] Table 3 shows the weighting rules for each user attribute information in Table 2 when calculating priority:

[0085] Table 3

[0086]

[0087]

[0088] Table 4 shows the rules for determining priority: the smaller the calculated score, the higher the priority.

[0089] Table 4

[0090] Fraction Priority Remark 0-10 9 11-30 8 31-50 7 51-70 6 71-90 5 91-100 4 >100 3

[0091] Example:

[0092] List information: Age = 30, Gender = Male, App login in the last hour = Yes, Preset function entry clicked in the last hour = Yes, Business activity importance = Very important, Push status = Not pushed, Push result = None. The score calculation result is = 1*2 + 1.5*1 + 2*3 + 3*4 + 4*5 + 6*1 + 7*1 = 54.5, therefore the priority is 6. There can be multiple preset function entries, and each preset function entry can be configured with different scores and weights according to its importance.

[0093] Accordingly, based on the calculation results of priorities, the corresponding delay strategy can be determined. For example, a coefficient value X can be defined for different priorities. This coefficient value X can be used to calculate the delayed inbound time (i.e., the delay time).

[0094] Table 5 shows the mapping relationship between priority and the corresponding coefficient value X.

[0095] Table 5

[0096] Priority Coefficient value X Remark 0 10 1 9 2 8 3 7 4 6 5 5 6 4 7 3 8 2 9 1

[0097] To ensure the proper functioning of the aforementioned delay policies, they need to be loaded after configuration. For example, delay policies can be loaded from configuration files or database tables when the application starts, and the application's delay policies can be refreshed immediately upon policy changes, making them effective instantly. Specific implementation methods include: using the Nacos configuration center for configuring and loading delay policies, or notifying all application instances to reload the configured delay policies after database changes.

[0098] In this example, the above delay strategy can be executed through the following three execution entry points:

[0099] (1) First delay policy execution entry: This entry is used to trigger the execution of the delay policy when a new list is received.

[0100] Figure 3 This diagram illustrates the process of triggering the user list in this example through the first delayed policy execution entry point. Figure 3 As shown, the specific steps include:

[0101] Step S301: Receive the new list. This new list is the list of users to be pushed to corresponding to the second business activity.

[0102] Step S302: Determine whether the user to whom the new list belongs already has a list in the database.

[0103] Step S303: If the judgment result is negative, directly perform the database entry process for the new list so that the database list of the corresponding user is replaced with the new list.

[0104] If a user belonging to the new list B is not already in list A, they can be added to the list immediately; otherwise, step S304 is executed. The new list is the second user list corresponding to the second business activity, and the old list is the first user list corresponding to the first business activity.

[0105] Step S304: If the judgment result is yes, calculate the priority of the new list and the old list (i.e., the list in the database) respectively.

[0106] The calculation method is described in the score calculation strategy configured above.

[0107] Step S305: Determine whether the priority of the new list is greater than or equal to the priority of the old list.

[0108] Step S306: If the priority of the new list is greater than or equal to the priority of the old list, calculate the delay time based on the difference between the priorities of the new list and the old list.

[0109] If the priority of the new list is lower than the priority of the old list, then no entry processing is required for the new list. Therefore, when the priority of list B is lower than the priority of list A, B is discarded (i.e., B is not entered into the database); otherwise, step S306 is executed. Alternatively, if the priority of list B is lower than the priority of list A, a preset flag can be added to list B, and when a change in the status of list A is detected, the priority difference between list B and list A can be recalculated based on the preset flag.

[0110] In step S306, the delayed entry time of the new list B is calculated and saved to the delayed entry table in the database; if the delay time is less than or equal to 0, the entry logic is executed immediately, otherwise step S307 is executed.

[0111] Step S307: Determine the delay step size based on the calculated delay time, and write the new list into the delay queue according to the delay step size.

[0112] Step S308: Implement the new list entry process according to the delay queue so that the new list replaces the old list when the delay time arrives.

[0113] The new list B is delivered to the message bus's delayed queue, which has a specific step size (e.g., 1 second, 30 seconds, 60 seconds, 2 minutes, etc.). The step size is determined as follows: delayed entry time - current time = delay in milliseconds, converted to seconds, and the step size is determined based on the number of seconds. The rule is that the maximum step size less than this number of seconds is the delay step size for writing the list to the delayed queue. Subsequent messages are delivered when they arrive at the specified step time, and then the entry logic is executed.

[0114] (2) Second delay policy execution entry: This entry is used to trigger the execution of the delay policy when a change in the status of the list of items in the database is detected.

[0115] Specifically, when the status of the current list A in the database changes, the new list B can be retrieved from the delayed entry table using the user ID, triggering the execution of step S304 above. Alternatively, steps S302 and S303 can be executed beforehand to mark users whose judgment result is yes; in this case, only the status of the marked user list needs to be checked.

[0116] Among them, status changes include, but are not limited to, changes in push status and push results. The status or attributes that need to be paid attention to can be determined according to different business scenarios (such as whether the preset function entry has been clicked, whether resources have been applied for, etc.).

[0117] The push status values ​​can include: not pushed, pushing, pushed, pushed terminated, etc. The push result values ​​can include: none, not needed, agreed to proceed, pushed rejected, etc. The business scenarios in this example can include resource configuration, course push, product push, etc.; the push status and push result may differ for different business scenarios, and the status or attributes that need to be monitored may also differ.

[0118] (3) The third delay strategy execution entry: This entry is used to dynamically set whether to trigger the execution of the delay strategy.

[0119] Specifically, a management page can be provided, allowing users to dynamically change the delayed entry time of new lists already in the delayed entry table, or trigger immediate entry logic (setting the delayed entry time to the current time). Therefore, the management page provides a flexible entry point for configuring delays, enabling the flexible processing of new lists.

[0120] The following calculation rules can be used to calculate the scores and priorities of the lists:

[0121] (1) The score is calculated based on the specified attributes on the list through the rule engine, and then the scores of each attribute are weighted and summed to obtain the total score S.

[0122] (2) Based on the priority corresponding to the configured score range value, obtain the priority Q corresponding to score S.

[0123] Alternatively, the delay time for delayed entry into the database can be calculated as follows: First, the weighted difference in scores (i.e., the difference in priority values) between the new list B and the existing list A is used as a coefficient Y. Then, the maximum value between the push status update time and the push result update time of the existing list A is determined as the base time. Finally, the delay time is calculated using the following formula: Base time + priority coefficient X of new list B * coefficient Y * unit value * 1000 (milliseconds) = delayed entry time of new list A (milliseconds). Here, the unit value represents the numerical value corresponding to one coefficient unit. For example, if the unit value is 5, then when the coefficient is 2, the result is 2 * 5 = 10.

[0124] Optionally, to facilitate the management of multiple second user lists, this example can also include a delayed trigger module. This delayed trigger module can be implemented based on a combination of the following two triggering methods:

[0125] (1) Delivery based on message bus delayed queue:

[0126] When a thread used to consume a delayed queue submits a new list of items to be added to the database, it needs to check whether the new list is ready for insertion. The specific rules include: (a) checking whether the new list is still valid, as it may have already been triggered and inserted by a scheduled task. (b) checking whether the actual delayed insertion time has arrived; if so, executing the insertion logic.

[0127] (2) Back-up delivery based on scheduled tasks:

[0128] Every certain time interval (e.g., 10 seconds), retrieve a list of entries whose delayed entry time is less than or equal to the current time from the database and execute the entry logic. A distributed lock must be applied to this list during the entry logic execution to prevent concurrent execution of the entry logic.

[0129] In summary, this example has at least the following beneficial effects:

[0130] (1) By setting a delayed entry time, the in-stock list is prevented from being immediately replaced by a new list, which would interrupt the push of the in-stock list and improve the push effect.

[0131] (2) By dynamically setting the delayed entry time, the problem of concurrent conflicts in the list was solved, and the flexibility of the system was improved.

[0132] (3) By automatically defining delay strategies, different delay times can be calculated based on different list information, which improves the scalability of the system.

[0133] (4) By using the message bus delay queue mechanism and the timed task fallback mechanism, the delayed entry list can be re-entered into the database in a timely manner, which improves the timeliness and reliability of the delayed entry list.

[0134] (5) By promptly updating the delayed entry list and its delayed entry time after the status of the list changes, the accuracy of the delayed entry time of the list is improved.

[0135] (6) By calculating the delay time from multiple dimensions such as list score, priority, and weight, the flexibility of delayed entry time is improved.

[0136] In summary, this example provides a telemarketing list management system and method based on dynamic delay and dynamic priority calculation, aiming to solve various problems existing in the prior art. This system can not only intelligently determine whether the currently processed list should be replaced when a new list is received, but also rationally arrange the processing order and time according to the set time window, priority rules, and dynamic delay mechanism, thereby improving the efficiency and accuracy of list management.

[0137] 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.

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

[0139] Figure 4 A block diagram of a user list processing apparatus provided in an embodiment of this disclosure.

[0140] Reference Figure 4 This disclosure provides a user list processing apparatus, which includes:

[0141] The acquisition module 41 is adapted to acquire the comparison result between the priority of the first user list and the priority of the second user list; wherein the first user list and the second user list include the same users, and the generation time of the second user list is later than the generation time of the first user list;

[0142] The determining module 42 is adapted to determine a delay time based on the difference between the priority of the second user list and the priority of the first user list when the priority of the second user list is determined to be no less than the priority of the first user list based on the comparison result.

[0143] The replacement module 43 is adapted to replace the first user list with the second user list when the delay time expires; wherein the first user list corresponds to the first business activity and the second user list corresponds to the second business activity; the priority is determined based on the user attribute information associated with the first business activity and / or the second business activity.

[0144] In one optional implementation, the user attribute information associated with the first business activity and / or the second business activity is determined according to the activity type of the first business activity and / or the second business activity;

[0145] The user attribute information includes at least one of the following: a first type of user interaction information triggered by the activity function entry point in the first business activity and / or the second business activity, and a second type of user interaction information associated with the push status and / or push result of the first business activity and / or the second business activity.

[0146] In one optional implementation, when there are multiple activity function entry points, the first type of user interaction information includes: multiple user interaction sub-information associated with multiple activity function entry points, and the multiple user interaction sub-information correspond to different information weights respectively.

[0147] The push status includes at least one of the following: not pushed, pushing in progress, pushed, and pushed terminated, with different push statuses corresponding to different status weights; the result type of the push result includes at least one of the following: accept type, reject type, and indifferent type, with different result types corresponding to different result weights;

[0148] The priority is determined by: determining the information score corresponding to the user interaction sub-information, the status score corresponding to the push status, and the result score corresponding to the push result; assigning weights to the information score, the status score, and the result score based on the information weight, the status weight, and the result weight, and determining the priority based on the weight assignment result.

[0149] In one alternative implementation, the determining module is further configured to:

[0150] The second user list is added to the delay queue, and the delay step size of the second user list in the delay queue is set according to the delay time, so as to determine whether the delay time of the second user list has been reached according to the delay step size of each second user list in the delay queue.

[0151] In one alternative implementation, the determining module is specifically adapted to:

[0152] The initial delay time is determined based on the difference between the priority of the second user list and the priority of the first user list;

[0153] Based on the list attribute information corresponding to the first user list, determine the calibration validity period corresponding to the list attribute information, and determine the delay time based on the comparison result between the calibration validity period and the initial delay time;

[0154] The list attribute information includes at least one of the following: list type information used to characterize the way the list is generated, and activity type information used to characterize the activity priority of the business activity corresponding to the list.

[0155] In one alternative implementation, the acquisition module is specifically adapted to:

[0156] Obtain a candidate user list corresponding to the second business activity. If the candidate user list corresponds to the same user as any first user list in the list push database, then determine the candidate user list as the second user list, and obtain the comparison result between the priority of the first user list and the priority of the second user list.

[0157] In one alternative implementation, the acquisition module is specifically adapted to:

[0158] If a change is detected in the push status and / or push result of any first user list in the push list database, the second user list is determined based on the candidate user list corresponding to the second business activity, and a comparison result between the priority of the first user list and the priority of the second user list is obtained.

[0159] In one optional implementation, the first business activity and / or the second business activity includes at least one of the following types: resource configuration type, resource reclamation type, resource conversion type, resource adjustment type, and business return type;

[0160] Different types of business activities correspond to different activity priorities, and the priorities are further determined based on the activity priorities; wherein, the activity priority of the business return visit type is the lowest, and the activity priority of the resource configuration type is the highest.

[0161] Each module in the aforementioned user list processing device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.

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

[0163] Reference Figure 5 This disclosure provides an electronic device, which includes: 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 that can be executed by the at least one processor 501, and the one or more computer programs are executed by the at least one processor 501 to enable the at least one processor 501 to perform the above-described user list processing method.

[0164] The modules in the aforementioned electronic devices can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0165] This disclosure also provides a computer-readable storage medium storing a computer program thereon, wherein the computer program, when executed by a processor, implements the aforementioned user list processing method. The computer-readable storage medium may be volatile or non-volatile.

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

[0167] 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).

[0168] 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.

[0169] 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.

[0170] 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.

[0171] 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.

[0172] 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.

[0173] 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.

[0174] 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.

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

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

Claims

1. A method for processing a user list, characterized in that, include: Obtain the comparison result between the priority of the first user list and the priority of the second user list; wherein the first user list and the second user list include the same users, and the second user list was generated later than the first user list. If, based on the comparison results, it is determined that the priority of the second user list is not less than the priority of the first user list, the delay time is determined based on the degree of difference between the priorities of the second user list and the first user list. Upon the expiration of the delay period, the second user list replaces the first user list; wherein the first user list corresponds to the first business activity, and the second user list corresponds to the second business activity; the priority is determined based on the user attribute information associated with the first business activity and / or the second business activity.

2. The method according to claim 1, characterized in that, The user attribute information associated with the first business activity and / or the second business activity is determined based on the activity type of the first business activity and / or the second business activity; The user attribute information includes at least one of the following: a first type of user interaction information triggered by the activity function entry point in the first business activity and / or the second business activity, and a second type of user interaction information associated with the push status and / or push result of the first business activity and / or the second business activity.

3. The method according to claim 2, characterized in that, When there are multiple activity function entry points, the first type of user interaction information includes: multiple user interaction sub-information associated with multiple activity function entry points, and the multiple user interaction sub-information correspond to different information weights respectively; The push status includes at least one of the following: not pushed, pushing in progress, pushed, and pushed terminated, with different push statuses corresponding to different status weights; the result type of the push result includes at least one of the following: accept type, reject type, and indifferent type, with different result types corresponding to different result weights; The priority is determined by: determining the information score corresponding to the user interaction sub-information, the status score corresponding to the push status, and the result score corresponding to the push result; assigning weights to the information score, the status score, and the result score based on the information weight, the status weight, and the result weight, and determining the priority based on the weight assignment result.

4. The method according to any one of claims 1-3, characterized in that, After determining the delay time based on the difference between the priorities of the second user list and the first user list, the method further includes: Add the second user list to the delay queue, and set the delay step size of the second user list in the delay queue according to the delay time; Based on the delay step size of each second user list in the delay queue, determine whether the delay time for the second user list has arrived.

5. The method according to any one of claims 1-3, characterized in that, Determining the delay time based on the difference between the priority of the second user list and the priority of the first user list includes: The initial delay time is determined based on the difference between the priority of the second user list and the priority of the first user list; Based on the list attribute information corresponding to the first user list, determine the calibration validity period corresponding to the list attribute information, and determine the delay time based on the comparison result between the calibration validity period and the initial delay time; The list attribute information includes at least one of the following: list type information used to characterize the way the list is generated, and activity type information used to characterize the activity priority of the business activity corresponding to the list.

6. The method according to any one of claims 1-3, characterized in that, Before obtaining the comparison result between the priority of the first user list and the priority of the second user list, the method further includes: Obtain a candidate user list corresponding to the second business activity. If the candidate user list corresponds to the same user as any first user list in the list push database, then determine the candidate user list as the second user list, and perform the step of comparing the priority of obtaining the first user list with the priority of the second user list based on the second user list.

7. The method according to any one of claims 1-3, characterized in that, Before obtaining the comparison result between the priority of the first user list and the priority of the second user list, the method further includes: If a change is detected in the push status and / or push result of any first user list in the push list database, the second user list is determined based on the candidate user list corresponding to the second business activity, and the step of obtaining the comparison result between the priority of the first user list and the priority of the second user list is performed based on the second user list.

8. The method according to any one of claims 1-3, characterized in that, The first business activity and / or the second business activity includes at least one of the following types: resource configuration type, resource reclamation type, resource conversion type, resource adjustment type, and business return visit type; Different types of business activities correspond to different activity priorities, and the priority is determined based on the activity priority; wherein, the activity priority of the business return type is the lowest, and the activity priority of the resource configuration type is the highest.

9. A user list processing apparatus, characterized in that, include: The acquisition module is adapted to acquire the comparison result between the priority of the first user list and the priority of the second user list; wherein the first user list and the second user list include the same users, and the generation time of the second user list is later than the generation time of the first user list; The determining module is adapted to determine a delay time based on the difference between the priorities of the second user list and the first user list, provided that the priority of the second user list is determined to be no less than the priority of the first user list based on the comparison result. The replacement module is adapted to replace the first user list with the second user list when the delay time expires; wherein the first user list corresponds to the first business activity, and the second user list corresponds to the second business activity; the priority is determined based on the user attribute information associated with the first business activity and / or the second business activity.

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

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

12. A computer program product, characterized in that, Includes computer-readable code, or a non-volatile computer-readable storage medium carrying computer-readable code, wherein when the computer-readable code is executed in a processor of an electronic device, the processor in the electronic device performs a method for processing a user list as described in any one of claims 1-7.