A message push method, system, terminal device and storage medium

By obtaining user information and dividing message weights and priorities according to configuration rules, the message push process is optimized, and the problem of important information being buried and network congested is solved, and more efficient message push adaptation and timeliness are achieved.

CN116112548BActive Publication Date: 2025-08-01SUZHOU PUSHI SOFTWARE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211733100.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-30
Publication Date
2025-08-01
Estimated Expiration
2042-12-30

AI Technical Summary

Technical Problem

When pushing messages in existing office systems, important information is easily buried in the sea of messages, and is easily lost or repeatedly pushed when the network is congested, resulting in low adaptability.

Method used

By obtaining user information, dividing message weights according to message push configuration rules and setting push priority, combining queue management and dynamic weight adjustment, the message push process is optimized.

Benefits of technology

Improve the adaptability of message push, ensure timely push of important information, alleviate network pressure, and improve user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116112548B_ABST
    Figure CN116112548B_ABST
Patent Text Reader

Abstract

This application relates to the field of Internet technologies, and in particular, to a message push method, system, terminal device, and storage medium. The method includes obtaining a communication key; establishing a connection between a push server and a network server according to the communication key, and generating a corresponding verification result; if the verification result is a successful connection, obtaining current user information; identifying the current user information, and obtaining a message push configuration rule corresponding to the current user; according to the message push configuration rule, obtaining a message weight corresponding to the current message to be pushed; setting a push priority corresponding to the current message to be pushed according to the message weight, where the message weight is proportional to the push priority; and pushing the current message to be pushed according to the push priority. A message push method, system, terminal device, and storage medium provided by this application improve the adaptability of pushing messages to users.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet technologies, and in particular, to a message push method, system, terminal device, and storage medium. Background Art

[0002] With the development of mobile Internet, message push has been more and more widely applied. The push technology refers to the technology of sending information to users through the Internet according to certain sending rules and relevant standards and protocols.

[0003] In daily office scenarios, it is often necessary to receive push messages within the system, such as announcements issued by the administration, approval information submitted by subordinates, some news recommendations of the company or department, etc. Among these messages, some information is important information that users need to pay special attention to, while some are accompanying information with little value.

[0004] Currently, most office systems push all the published messages to users. The information useful to users is buried in a sea of messages, making it difficult to grasp the key information. Moreover, when the network is congested, important information is easily lost or duplicate messages are pushed, resulting in low adaptability of the pushed messages to users. Summary of the Invention

[0005] In order to improve the adaptability of pushing messages to users, this application provides a message push method, system, terminal device, and storage medium.

[0006] In a first aspect, this application provides a message push method, including the following steps:

[0007] Obtain a communication key;

[0008] Establish a connection between a push server and a network server according to the communication key, and generate a corresponding verification result;

[0009] If the verification result is successful connection, obtain the current user information;

[0010] Identify the current user information, and obtain the message push configuration rule corresponding to the current user;

[0011] According to the message push configuration rule, obtain the message weight corresponding to the current message to be pushed;

[0012] Set the push priority corresponding to the current message to be pushed according to the message weight;

[0013] Push the current message to be pushed according to the push priority.

[0014] By adopting the above technical solution, if the verification result is successful connection, it indicates that the connection between the push server and the network server is successful. Further, the user information of the current user is obtained and identified through the client, and the importance level division rule for different types of push messages set by the current user, that is, the message push configuration rule, can be obtained. Then, according to the message push configuration rule, the weight of the current push message is divided, and then the message weight corresponding to the current push message is obtained. Then, according to the message weight, the push priority corresponding to the current push message is set, and the system pushes various current push messages to the user according to the message weight. Since the message weight of the current push message is divided according to the message push configuration rule corresponding to the user and its push priority is set, and the current push message is pushed to the user according to the push priority of the current push message in a planned manner, the adaptability of pushing messages to the user is improved.

[0015] Optionally, the obtaining the message weight corresponding to the current push message according to the message push configuration rule includes the following steps:

[0016] According to the message push configuration rule, obtain the corresponding message configuration level, and the message configuration level includes the highest weight configuration level, high weight configuration level, medium weight configuration level, and low weight configuration level;

[0017] Divide the current push message according to the message configuration level, and generate and obtain the message weight corresponding to the current push message.

[0018] By adopting the above technical solution, the current push message is divided into the highest weight configuration level, high weight configuration level, medium weight configuration level, and low weight configuration level according to the message push configuration rule. Furthermore, the importance level of the current push message, that is, the message weight, can be set in combination with the actual situation of the user himself. Thus, according to the message weight, messages with high adaptability can be pushed to the user more efficiently and in a planned manner.

[0019] Optionally, after setting the push priority corresponding to the current push message according to the message weight, the following steps are further included:

[0020] According to the current push message, obtain the corresponding message queue;

[0021] If there are multiple message queues, obtain the idle degree corresponding to each message queue;

[0022] According to the idle degree, set the selection queue priority corresponding to each message queue, and the idle degree is directly proportional to the selection queue priority;

[0023] According to the selection queue priority, add the current push message to the corresponding message queue.

[0024] By adopting the above technical solution, when selecting a queue for a user, the most idle queue is selected according to the idle situation (i.e., the degree of idleness) of the current queue, so as to evenly distribute the pressure on the queue and improve the timeliness of message pushing.

[0025] Optionally, after adding the current message to be pushed to the corresponding message queue according to the selected queue priority, the following steps are further included:

[0026] Obtain the number of messages of the current message to be pushed in the message queue;

[0027] Judge whether the number of messages exceeds the upper limit of the number of messages corresponding to the message queue;

[0028] If the number of messages exceeds the upper limit of the number of messages corresponding to the message queue, judge whether there is a new addition of the current message to be pushed in the message queue;

[0029] If there is a new addition of the current message to be pushed in the message queue, obtain the message weight corresponding to the current message to be pushed;

[0030] The current message to be pushed is inserted into the message queue according to the message weight.

[0031] By adopting the above technical solution, if the number of messages exceeds the upper limit of the number of messages corresponding to the message queue, the newly added current message to be pushed is inserted into the message queue according to its corresponding message weight, so as to ensure that relatively important messages for users reach first and improve the timeliness of important message pushing.

[0032] Optionally, after pushing the current message to be pushed according to the push priority, the following steps are further included:

[0033] Obtain the response data of the current message to be pushed corresponding to the same message configuration level;

[0034] Identify the response data and obtain the corresponding response time;

[0035] According to the response time, set the dynamic weight corresponding to the current message to be pushed, and the response time is inversely proportional to the dynamic weight;

[0036] According to the dynamic weight, update the message push configuration rules corresponding to the same message configuration level.

[0037] By adopting the above technical solution, according to the processing response time of the user for the current message to be pushed, the dynamic weight corresponding to the current message to be pushed is set, and then the urgency of the user to obtain the pushed message can be obtained through the dynamic weight. Further, the corresponding message push configuration rule is updated according to the dynamic weight corresponding to the message to be pushed, thereby improving the efficiency of the user to obtain the corresponding important message.

[0038] Optionally, after pushing the current message to be pushed according to the push priority, the following steps are further included:

[0039] If the current message to be pushed is in the pushed state, it is judged whether there is a corresponding message delivery feedback for the current message to be pushed within a preset first time interval;

[0040] If there is no corresponding message delivery feedback for the current message to be pushed within the preset first time interval, the current message to be pushed is re-pushed;

[0041] It is judged whether there is a corresponding message delivery feedback for the current message to be pushed within a preset second time interval, and the preset second time interval is longer than the time interval corresponding to the first time interval;

[0042] If there is no corresponding message delivery feedback for the current message to be pushed within the preset second time interval, it is judged whether the preset second time interval reaches the upper limit of the preset time interval;

[0043] If the preset second time interval does not reach the upper limit of the preset time interval, the current message to be pushed is continuously re-pushed;

[0044] If the preset second time interval reaches the upper limit of the preset time interval, the current message to be pushed is calibrated and excluded to form a corresponding exclusion message record.

[0045] By adopting the above technical solution, after the current message to be pushed is sent, the system will continuously monitor whether the feedback of message delivery is received. If no feedback is received within a certain time, it will be re-pushed, and the corresponding time interval will increase sequentially. Since the time interval for initiating the re-push instruction increases sequentially, when the network is congested, the corresponding network communication pressure can be relieved.

[0046] Optionally, after the step of if the connection result is verification success, obtaining the current user information, the following steps are further included:

[0047] Obtain the connection status between the push server and the network server;

[0048] If the connection status is a disconnection, a corresponding reconnection interval is generated;

[0049] Establish a connection between the push server and the network server according to the reconnection interval, generate a corresponding reconnection count, and the reconnection interval increases with the increase of the reconnection count between the push server and the network server;

[0050] If the reconnection count exceeds the preset upper limit of the reconnection configuration, obtain and establish a connection between the push server and the network server according to the reconnection interval corresponding to the current reconnection count.

[0051] By adopting the above technical solution, according to the reconnection count between the push server and the network server, the interval for initiating reconnection is increased in sequence, so that when the network is congested, the corresponding network communication pressure can be relieved.

[0052] In a second aspect, the present application provides a message push system, including:

[0053] A first acquisition module for acquiring a communication key;

[0054] A generation module for establishing a connection between the push server and the network server according to the communication key and generating a corresponding verification result;

[0055] A second acquisition module, if the verification result is a successful connection, the second acquisition module is used to acquire the current user information;

[0056] An identification module for identifying the current user information and obtaining the message push configuration rule corresponding to the current user;

[0057] A third acquisition module for acquiring the message weight corresponding to the current message to be pushed according to the message push configuration rule;

[0058] A setting module for setting the push priority corresponding to the current message to be pushed according to the message weight;

[0059] A push module for pushing the current message to be pushed according to the push priority.

[0060] By adopting the above technical solution, if the verification result is successful connection, it indicates that the connection between the push server and the network server is successful. Further, the second acquisition module obtains the current user information of the user from the client and the recognition module identifies it, obtaining the importance level division rule for different types of push messages set by the current user, that is, the message push configuration rule. Then, the third acquisition module divides the weights of the current messages to be pushed according to the message push configuration rule, and further obtains the message weights corresponding to the current messages to be pushed. Then, the setting module sets the push priorities corresponding to the current messages to be pushed according to the message weights. The system pushes various current messages to be pushed to the user according to the message weights through the push module. Since the message weights of the current messages to be pushed are divided according to the message push configuration rule corresponding to the user and their push priorities are set, and the messages are pushed to the user in a planned manner according to the push priorities of the current messages to be pushed, the adaptability of pushing messages to the user is improved.

[0061] In a third aspect, the present application provides a terminal device, adopting the following technical solution:

[0062] A terminal device includes a memory and a processor. Computer instructions capable of running on the processor are stored in the memory. When the processor loads and executes the computer instructions, the above-mentioned message push method is adopted.

[0063] By adopting the above technical solution, the above-mentioned message push method is used to generate computer instructions and stored in the memory to be loaded and executed by the processor. Thus, a terminal device is manufactured according to the memory and the processor, which is convenient to use.

[0064] In a fourth aspect, the present application provides a computer-readable storage medium, adopting the following technical solution:

[0065] A computer-readable storage medium stores computer instructions. When the computer instructions are loaded and executed by the processor, the above-mentioned message push method is adopted.

[0066] By adopting the above technical solution, the above-mentioned message push method is used to generate computer instructions and stored in the computer-readable storage medium to be loaded and executed by the processor. Through the computer-readable storage medium, the readability and storage of computer instructions are facilitated.

[0067] In summary, the present application includes at least one of the following beneficial technical effects: If the verification result is successful connection, it indicates that the user authentication is successful. Further, by obtaining and identifying the current user information of the user, the importance level division rule for different types of push messages set by the current user, that is, the message push configuration rule, can be obtained. Then, according to the message push configuration rule, the weight of the current message to be pushed is divided, and then the message weight corresponding to the current message to be pushed is obtained. Then, according to the message weight, the push priority corresponding to the current message to be pushed is set. The system pushes various current messages to be pushed to the user according to the message weight. Since the message weight of the current message to be pushed is divided and its push priority is set according to the message push configuration rule corresponding to the user, and the current message to be pushed is pushed to the user according to the push priority, the adaptability of pushing messages to the user is improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0068] Figure 1 is a schematic flowchart of steps S101 to S107 in a message push method of the present application.

[0069] Figure 2 is an architecture diagram among a network client, a network server and a push server in a message push method of the present application.

[0070] Figure 3 is a schematic flowchart of steps S201 to S202 in a message push method of the present application.

[0071] Figure 4 is a schematic flowchart of steps S301 to S304 in a message push method of the present application.

[0072] Figure 5 is a push message framework diagram in a message push method of the present application.

[0073] Figure 6 is a schematic flowchart of steps S401 to S405 in a message push method of the present application.

[0074] Figure 7 is a schematic flowchart of steps S501 to S504 in a message push method of the present application.

[0075] Figure 8 is a schematic flowchart of steps S601 to S606 in a message push method of the present application.

[0076] Figure 9 is a schematic flowchart of steps S701 to S704 in a message push method of the present application.

[0077] Figure 10It is a schematic diagram of the modules of a message push system of the present application.

[0078] Explanation of the reference numerals in the drawings:

[0079] 1. First acquisition module; 2. Generation module; 3. Second acquisition module; 4. Recognition module; 5. Third acquisition module; 6. Setting module; 7. Push module. Specific implementation manners

[0080] The following will further elaborate on the present application in conjunction with the attached Figures 1-10 drawings.

[0081] An embodiment of the present application discloses a message push method, as Figure 1 shown, including the following steps:

[0082] S101. Obtain a communication key;

[0083] S102. Establish a connection between the push server and the network server according to the communication key, and generate a corresponding verification result;

[0084] S103. If the verification result is a successful connection, obtain the current user information;

[0085] S104. Identify the current user information and obtain the message push configuration rule corresponding to the current user;

[0086] S105. According to the message push configuration rule, obtain the message weight corresponding to the current message to be pushed;

[0087] S106. According to the message weight, set the push priority corresponding to the current message to be pushed, and the message weight is proportional to the push priority;

[0088] S107. Push the current message to be pushed according to the push priority.

[0089] In actual application, for the convenience of explaining this solution, a company internal message push system is taken as an example for elaboration.

[0090] Among them, by installing and configuring a push server on the server, the network server and the push server are bidirectionally bound. Further, the client can log in to the network server through the login method of account password. If the login fails, the process ends. If the login is successful, the push server is connected through the network client module. The network client integrates a push client module. If the network client module successfully connects to the push server, the client can receive push messages from the network server. If the network client module fails to connect to the push server, the client cannot receive push messages from the network server.

[0091] Further, the communication key in step S101 is used for the binding between the network server and the push server. The push server is configured with a communication key and a communication port, allowing external access. The network server establishes a secure connection with the push server by using the network key, and the push server accesses the network server through the same key.

[0092] Among them, as Figure 2 shown, it is an architecture diagram among the network client, the network server, and the push server. Establishing a connection between the push server and the network server according to the communication key will generate a corresponding verification result. If the verification result is a connection failure, it means that the current push server and the network server do not match and cannot establish the corresponding connection. If the verification result is a connection success, it means that the current push server and the network server have established a secure communication connection, and the current client information, that is, the current user information, can be further obtained.

[0093] Furthermore, by identifying the current user information, the message push configuration rule corresponding to the current user can be obtained. The message push configuration rule refers to the importance level division rule set by the current user for various messages to be pushed. Among them, the message push configuration rule is set in combination with the user's own needs. The system divides the current message to be pushed according to this message push configuration rule and obtains the message weight corresponding to the current message to be pushed. The current message to be pushed refers to the message that has been edited and stored in the message push system and is to be pushed to the user.

[0094] Specifically, according to the message push configuration rule, the message to be pushed can be divided into different importance levels, that is, message weights. For example, the work overdue task message is relatively urgent and important for the current user. The user can set the corresponding message push configuration rule to mark the work overdue task message as an urgent message to be pushed, and then the message weight corresponding to this urgent message to be pushed is high.

[0095] Another example is that the daily news push message is not very important for the current user. The user can set the corresponding message push configuration rule to mark the daily news push message as a lightly pushed message, and then the message weight corresponding to this urgent message to be pushed is low.

[0096] Further, according to the message weight obtained by dividing the current message to be pushed above, the push priority corresponding to the current message to be pushed is set. Among them, the message weight is directly proportional to the push priority, that is, the higher the message weight, the higher the corresponding push priority. Then, in the subsequent system push process, the current message to be pushed will be planned and pushed according to its corresponding push priority.

[0097] In the message push method provided in this embodiment, if the verification result is successful connection, it indicates that the connection between the push server and the network server is successful. Further, the user information of the current user is obtained and recognized through the client, and the importance level division rule for different types of push messages set by the current user, that is, the message push configuration rule, can be obtained. Then, according to the message push configuration rule, the weight of the current message to be pushed is divided, and thus the message weight corresponding to the current message to be pushed is obtained. Then, according to the message weight, the push priority corresponding to the current message to be pushed is set. The system pushes various current messages to be pushed to the user according to the message weight. Since the message weight of the current message to be pushed is divided according to the message push configuration rule corresponding to the user and its push priority is set, and the current message to be pushed is pushed to the user according to the push priority, the adaptability of pushing messages to the user is improved.

[0098] In one implementation manner of this embodiment, as Figure 3 shown, step S105, that is, obtaining the message weight corresponding to the current message to be pushed according to the message push configuration rule, includes the following steps:

[0099] S201. According to the message push configuration rule, obtain the corresponding message configuration level. The message configuration level includes the highest weight configuration level, high weight configuration level, medium weight configuration level, and low weight configuration level;

[0100] S202. Divide the current push message according to the message configuration level, and generate and obtain the message weight corresponding to the current push message.

[0101] In actual application, according to the above-mentioned message push configuration rule corresponding to the current user, the message configuration level set by the current user can be obtained, where the message configuration level includes the highest weight configuration level, high weight configuration level, medium weight configuration level, and low weight configuration level.

[0102] Specifically, the highest weight configuration level represents the weight level with the highest message importance level for the user. The message importance level corresponding to the high weight configuration level is one level lower than that of the highest weight configuration level. The message importance level corresponding to the medium weight configuration level is one level lower than that of the high weight configuration level. The message importance level corresponding to the low weight configuration level is one level lower than that of the high weight configuration level.

[0103] For example, the messages corresponding to the highest weight configuration level generally include negative messages, overdue tasks, or rejected approvals; the messages corresponding to the high weight configuration level generally include warning, critical messages, or tasks that are about to expire; the messages corresponding to the medium weight configuration level generally include positive messages, such as approval application messages; the messages corresponding to the low weight configuration level generally represent information messages, analogous to daily news or promotional advertisement messages.

[0104] Furthermore, the current push message is classified according to the message configuration level obtained above, and the message weight corresponding to the current push message is generated and obtained. Among them, the message weight corresponding to the current push message at the highest weight configuration level is higher than the message weight corresponding to the current push message at the high weight configuration level, the message weight corresponding to the current push message at the high weight configuration level is higher than the message weight corresponding to the current push message at the medium weight configuration level, and the message weight corresponding to the current push message at the medium weight configuration level is higher than the message weight corresponding to the current push message at the low weight configuration level.

[0105] The message push method provided in this embodiment divides the current message to be pushed into the highest weight configuration level, high weight configuration level, medium weight configuration level, and low weight configuration level according to the message push configuration rule. Furthermore, the importance level of the current message to be pushed, that is, the message weight, can be set according to the actual situation of the user himself. Thus, messages with high adaptability can be pushed to the user more efficiently and planned according to the message weight.

[0106] In one implementation manner of this embodiment, as Figure 4 shown, after step S106, that is, after setting the push priority corresponding to the current message to be pushed according to the message weight, the following steps are further included:

[0107] S301. Obtain the corresponding message queue according to the current message to be pushed;

[0108] S302. If there are multiple message queues, obtain the idle degree corresponding to each message queue;

[0109] S303. Set the selection queue priority corresponding to each message queue according to the idle degree, and the idle degree is proportional to the selection queue priority;

[0110] S304. Add the current message to be pushed to the corresponding message queue according to the selection queue priority.

[0111] In actual application, after the push priority corresponding to the current message to be pushed is set, the system push service will create the configured number of message queues. Among them, the information of each user will only be added to one of the queues.

[0112] Further, if there are multiple message queues, obtain the idle degrees corresponding to each message queue. The idle degree refers to the idle situation of each message queue. Set the corresponding selection queue priority according to the idle situation of each message queue. The selection queue priority refers to the priority for inserting the currently to-be-pushed message into the corresponding message queue. Then, according to the above selection queue priority, select the message queue with the lowest idle degree, that is, the currently most idle message queue, and add the currently to-be-pushed message to the corresponding message queue to evenly distribute the pressure on the queue and achieve the timeliness of message pushing.

[0113] Specifically, as Figure 5 shown, it is a message pushing framework diagram. When there is a message to be pushed in the message list, merge and send the messages of the same category and with lower message weights of the current user. For the message structure of the user, in the push service, a buffer area is set up to record the message entities, and only the identification information of the messages is actually stored in the list.

[0114] For the message pushing method provided in this embodiment, when selecting a queue for the user, select the most idle queue according to the idle situation, that is, the idle degree, of the current queue, so as to evenly distribute the pressure on the queue and improve the timeliness of message pushing.

[0115] In one implementation manner of this embodiment, as Figure 6 shown, after step S304, that is, adding the currently to-be-pushed message to the corresponding message queue according to the selection queue priority, the following steps are further included:

[0116] S401. Obtain the number of messages of the currently to-be-pushed message in the message queue;

[0117] S402. Judge whether the number of messages exceeds the upper limit of the number of messages corresponding to the message queue;

[0118] S403. If the number of messages exceeds the upper limit of the number of messages corresponding to the message queue, judge whether there is a new currently to-be-pushed message in the message queue;

[0119] S404. If there is a new currently to-be-pushed message in the message queue, obtain the message weight corresponding to the currently to-be-pushed message;

[0120] S405. Insert the currently to-be-pushed message into the message queue according to the message weight.

[0121] In actual operation, in order to ensure that messages with high message weights are pushed to users first, judge whether the number of messages exceeds the upper limit of the number of messages corresponding to the message queue. The push server sets a message length upper limit for each queue. If the number of messages exceeds the upper limit of the number of messages corresponding to the message queue, it means that the number of messages in the queue has reached the message length upper limit, and the push service will trigger the congestion mode.

[0122] Further, in the congestion mode, if there is a new message to be pushed currently in the message queue, obtain the message weight corresponding to the message to be pushed currently, and then cut in line in the current message queue in combination with the message weight of the message to be pushed currently, ensuring that messages more important to the user can be pushed to them preferentially.

[0123] For the message pushing method provided in this embodiment, if the number of messages exceeds the upper limit of the number of messages corresponding to the message queue, the newly added message to be pushed currently is inserted into the message queue according to its corresponding message weight, thereby ensuring that relatively important messages for the user arrive first and improving the timeliness of pushing important messages.

[0124] In one implementation manner of this embodiment, as Figure 7 shown, after step S107, that is, pushing the message to be pushed currently according to the push priority, the following steps are further included:

[0125] S501. Obtain the response data corresponding to the message to be pushed currently at the same message configuration level;

[0126] S502. Identify the response data and obtain the corresponding response time;

[0127] S503. Set the dynamic weight corresponding to the message to be pushed currently according to the response time, and the response time is inversely proportional to the dynamic weight;

[0128] S504. Update the message push configuration rule corresponding to the same message configuration level according to the dynamic weight.

[0129] In actual application, after the message to be pushed currently is pushed to the user, the push service will capture the response data of the user to the message to be pushed currently, where the response data can be configured according to the actual situation. By identifying the response data, the processing method of the user for various types of messages can be obtained, and the processing method includes the response time, which refers to the interval time between the message to be pushed currently being pushed to the user and the user clicking to open the message to be pushed currently.

[0130] Specifically, set the dynamic weight corresponding to the message to be pushed currently according to the response time, and the response time is inversely proportional to the dynamic weight. The dynamic weight refers to the message weight level set in combination with the response data of the user after the message to be pushed currently is pushed. The longer the response time, the lower the corresponding dynamic weight. Further, update the message push configuration rule corresponding to the same message configuration level according to the dynamic weight. Among them, the data participating in the dynamic weight calculation must be the message to be pushed currently at the same message configuration level.

[0131] Among them, the response data may also include data indicating the user's eagerness for the current message to be pushed, such as the response speed, as well as information such as the periodic patterns of various types of current messages to be pushed, and statistical calculations are performed to obtain the user's eagerness for the current message to be pushed, which is used as an indicator for calculating the dynamic weight. Among them, the change of the dynamic weight will not affect the message configuration level corresponding to the current message to be pushed.

[0132] For example, the response data includes click to view and block and delete. Click to view means that the user clicks to view after receiving the current message to be pushed, and block and delete means that the user directly blocks and deletes the current message to be pushed after receiving it. Among them, click to view corresponds to a positive value, and block and delete corresponds to a negative value. The system records the actual click to view and block and delete data of each time the user processes the current message to be pushed and uses the average value for calculation to obtain the dynamic weight corresponding to the current message to be pushed.

[0133] The message push method provided by the present implementation manner sets the dynamic weight corresponding to the current message to be pushed according to the processing response time of the user for the current message to be pushed, and then the eagerness of the user to obtain the pushed message can be obtained through the dynamic weight. Further, the corresponding message push configuration rule is updated according to the dynamic weight corresponding to the message to be pushed, thereby improving the efficiency of the user to obtain the corresponding important message.

[0134] In one implementation manner of this embodiment, as Figure 8 shown, after step S107, that is, pushing the current message to be pushed according to the push priority, the following steps are further included:

[0135] S601. If the current message to be pushed is in the pushed state, determine whether there is a corresponding message delivery feedback for the current message to be pushed within a preset first time interval;

[0136] S602. If there is no corresponding message delivery feedback for the current message to be pushed within the preset first time interval, re-push the current message to be pushed;

[0137] S603. Determine whether there is a corresponding message delivery feedback for the current message to be pushed within a preset second time interval, and the preset second time interval is longer than the time interval corresponding to the first time interval;

[0138] S604. If there is no corresponding message delivery feedback for the current message to be pushed within the preset second time interval, determine whether the preset second time interval reaches the preset time interval upper limit;

[0139] S605. If the preset second time interval does not reach the preset time interval upper limit, continue to re-push the current message to be pushed;

[0140] S606. If the preset second time interval reaches the upper limit of the preset time interval, calibrate and eliminate the current message to be pushed, and form a corresponding elimination message record.

[0141] In practical applications, the current message to be pushed that is about to be sent may enter a coroutine. After the current message to be pushed is sent in the coroutine, the system will continuously monitor whether a feedback on the message delivery is received, that is, determine whether there is a corresponding message delivery feedback for the current message to be pushed within the preset first time interval.

[0142] Specifically, if there is no corresponding message delivery feedback for the current message to be pushed within the preset first time interval, it means that the current message to be pushed has not been successfully pushed. Then, the current message to be pushed is re-pushed. The preset first time interval refers to the pre-set time interval for receiving the corresponding message delivery feedback of the current message to be pushed.

[0143] Furthermore, determine whether there is a corresponding message delivery feedback for the current message to be pushed within the preset second time interval. The preset second time interval refers to the pre-set time interval for receiving the corresponding message delivery feedback of the current message to be pushed after the current message to be pushed is re-pushed. Among them, the preset second time interval is longer than the time interval corresponding to the first time interval, and its purpose is to relieve the network pressure when network congestion occurs.

[0144] Among them, if the preset second time interval does not reach the upper limit of the preset time interval, continue to re-push the current message to be pushed. The upper limit of the preset time interval refers to the upper limit of the re-sending time interval of the current message to be pushed pre-specified by the system. If the preset second time interval reaches the upper limit of the preset time interval, directly ignore the current message to be pushed, and at the same time calibrate and eliminate the current message to be pushed to form a corresponding elimination message record. Through the elimination message record, the record information of the failure to push the current message to be pushed can be obtained, which is beneficial for the user to trace the current message to be pushed.

[0145] For the message pushing method provided in this embodiment, after the current message to be pushed is sent, the system will continuously monitor whether a feedback on the message delivery is received. If no feedback is received within a certain time, it will be re-pushed, and the corresponding time intervals will increase sequentially. Since the time intervals for initiating the re-push instructions increase sequentially, when network congestion occurs, the corresponding network communication pressure can be relieved.

[0146] In one implementation manner of this embodiment, as Figure 9 shown, after step S103, that is, if the connection result is successful verification, and after obtaining the current user information, the following steps are further included:

[0147] S701. Obtain the connection status between the push server and the network server;

[0148] S702. If the connection status is a disconnection, generate a corresponding reconnection interval;

[0149] S703. According to the reconnection interval, establish a connection between the push server and the network server, generate a corresponding reconnection count, and the reconnection interval increases with the increase in the reconnection count between the push server and the network server;

[0150] S704. If the reconnection count exceeds the preset reconnection configuration upper limit, obtain and establish a connection between the push server and the network server according to the reconnection interval corresponding to the current reconnection count.

[0151] In actual application, when the client network condition is poor or for some other reasons, the connection with the push server is disconnected (i.e., the connection status between the push server and the network server is a disconnection), the client will trigger a reconnection with the server, generate a corresponding reconnection interval, and the reconnection interval refers to the time interval between each reconnection attempt.

[0152] Further, establishing a connection between the push server and the network server according to the reconnection interval means initiating a reconnection instruction between the push server and the network server according to the reconnection interval, generating a corresponding reconnection count, and the reconnection interval increases with the increase in the reconnection count between the push server and the network server. If the reconnection count exceeds the preset reconnection configuration upper limit, obtain and establish a connection between the push server and the network server according to the reconnection interval corresponding to the current reconnection count. The preset reconnection configuration upper limit refers to the upper limit of the reconnection interval duration between the push server and the network server set in advance.

[0153] Specifically, the reconnection interval will increase successively with the reconnection count. When the reconnection interval reaches the preset reconnection configuration upper limit, the reconnection will be triggered at the same time interval. After the reconnection is successful, the push server will actively check whether there is data to be pushed for the current user and then perform a push again.

[0154] The message push method provided in this embodiment increases the interval of initiating reconnections successively according to the reconnection count between the push server and the network server, so as to relieve the corresponding network communication pressure when the network is congested.

[0155] In one implementation manner of this embodiment, the push server creates a connection pool according to the current server CPU core, and each client will calculate which connection pool it belongs to according to its feature code, that is, the unique identification code used to distinguish users, so as to achieve the purpose of reasonably using CPU resources.

[0156] The embodiment of the present application discloses a message push system, as Figure 10 shown, including:

[0157] The first acquisition module 1 is used to acquire a communication key;

[0158] A generation module 2, configured to establish a connection between a push server and a network server according to a communication key, and generate a corresponding verification result;

[0159] A second acquisition module 3, if the verification result is successful connection, the second acquisition module 3 is configured to acquire current user information;

[0160] An identification module 4, configured to identify current user information and acquire a message push configuration rule corresponding to the current user;

[0161] A third acquisition module 5, configured to acquire a message weight corresponding to a current message to be pushed according to the message push configuration rule;

[0162] A setting module 6, configured to set a push priority corresponding to the current message to be pushed according to the message weight;

[0163] A push module 7, configured to push the current message to be pushed according to the push priority.

[0164] For a message push system provided in this embodiment, if the verification result is successful connection, it indicates that the connection between the push server and the network server is successful. Further, the second acquisition module 3 acquires from the client and the identification module 4 identifies the current user information of the user, and obtains the important level division rule, that is, the message push configuration rule, set by the current user for different types of push messages. Then, the third acquisition module 5 performs weight division on the current message to be pushed according to the message push configuration rule, and further acquires the message weight corresponding to the current message to be pushed. Then, the setting module 6 sets the push priority corresponding to the current message to be pushed according to the message weight. The system pushes various current messages to be pushed to the user through the push module 7 according to the message weight. Since the message weight of the current message to be pushed is divided according to the message push configuration rule corresponding to the user and its push priority is set, and the current message to be pushed is pushed to the user according to the push priority of the current message to be pushed in a planned manner, the adaptability of pushing messages to the user is improved.

[0165] It should be noted that a message push system provided in an embodiment of the present application further includes each module and / or corresponding sub-module corresponding to the logical functions or logical steps of any one of the above message push methods, achieving the same effect as each logical function or logical step, and details are not repeated here.

[0166] An embodiment of the present application also discloses a terminal device, including a memory, a processor, and computer instructions stored in the memory and capable of running on the processor. When the processor executes the computer instructions, any one of the message push methods in the above embodiments is adopted.

[0167] Among them, the terminal device can be a computer device such as a desktop computer, a laptop computer, or a cloud server. Moreover, the terminal device includes, but is not limited to, a processor and a memory. For example, the terminal device may further include input / output devices, network access devices, and a bus, etc.

[0168] Among them, the processor can be a central processing unit (CPU). Of course, according to actual usage, other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. can also be used. The general-purpose processor can be a microprocessor or any conventional processor, etc. This application does not make any restrictions in this regard.

[0169] Among them, the memory can be an internal storage unit of the terminal device. For example, the hard disk or memory of the terminal device, or it can also be an external storage device of the terminal device. For example, a plug-in hard disk, a smart media card (SMC), a secure digital card (SD), or a flash card (FC), etc. equipped on the terminal device. Moreover, the memory can also be a combination of the internal storage unit and the external storage device of the terminal device. The memory is used to store computer instructions and other instructions and data required by the terminal device. The memory can also be used to temporarily store data that has been output or will be output. This application does not make any restrictions in this regard.

[0170] Among them, through this terminal device, any one of the message push methods in the above embodiments is stored in the memory of the terminal device, and is loaded and executed on the processor of the terminal device for convenient use.

[0171] An embodiment of this application also discloses a computer-readable storage medium. Moreover, the computer-readable storage medium stores computer instructions. Among them, when the computer instructions are executed by the processor, any one of the message push methods in the above embodiments is adopted.

[0172] Among them, the computer instructions can be stored in a computer-readable medium. The computer instructions include computer instruction codes. The computer instruction codes can be in the form of source code, object code, executable files, or some middleware forms, etc. The computer-readable medium includes any entity or device, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disc, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. that can carry the computer instruction codes. It should be noted that the computer-readable medium includes, but is not limited to, the above components.

[0173] Among them, through this computer-readable storage medium, any one of the message pushing methods in the above embodiments is stored in the computer-readable storage medium and is loaded and executed on a processor to facilitate the storage and application of the above method.

[0174] The above are all preferred embodiments of the present application, and the protection scope of the present application is not limited thereby. Therefore, any equivalent changes made according to the structure, shape, and principle of the present application shall be covered within the protection scope of the present application.

Claims

1. A message push method, characterized in that, Including the following steps: Obtain a communication key; Establish a connection between a push server and a network server based on the communication key, and generate a corresponding verification result; If the verification result is a successful connection, obtain the current user information; Identify the current user information and obtain the message push configuration rule corresponding to the current user; According to the message push configuration rule, obtain the message weight corresponding to the current message to be pushed, including: according to the message push configuration rule, obtain the corresponding message configuration level, and the message configuration level includes the highest weight configuration level, high weight configuration level, medium weight configuration level, and low weight configuration level; divide the current message to be pushed according to the message configuration level, and generate and obtain the message weight corresponding to the current message to be pushed; Set the push priority corresponding to the current message to be pushed according to the message weight, and the message weight is proportional to the push priority; Obtain the corresponding message queue according to the current message to be pushed; If there are multiple message queues, obtain the idle degree corresponding to each message queue; Set the selection queue priority corresponding to each message queue according to the idle degree, and the idle degree is proportional to the selection queue priority; Add the current message to be pushed to the corresponding message queue according to the selection queue priority; Obtain the number of messages of the current message to be pushed in the message queue; Judge whether the number of messages exceeds the upper limit of the number of messages corresponding to the message queue; If the number of messages exceeds the upper limit of the number of messages corresponding to the message queue, judge whether there is a new current message to be pushed in the message queue; If there is a new current message to be pushed in the message queue, obtain the message weight corresponding to the current message to be pushed; The current message to be pushed is inserted into the message queue according to the message weight; Push the current message to be pushed according to the push priority; Obtain the response data corresponding to the current message to be pushed at the same message configuration level; Identify the response data and obtain the corresponding response time; Set the dynamic weight corresponding to the current message to be pushed according to the response time, and the response time is inversely proportional to the dynamic weight; Update the message push configuration rule corresponding to the same message configuration level according to the dynamic weight.

2. The message push method according to claim 1, wherein The method further includes: If the current message to be pushed is in the pushed state, judge whether there is a corresponding message delivery feedback for the current message to be pushed within a preset first time interval; If there is no corresponding message delivery feedback for the current message to be pushed within the preset first time interval, re-push the current message to be pushed; Judge whether there is a corresponding message delivery feedback for the current message to be pushed within a preset second time interval, and the preset second time interval is longer than the time interval corresponding to the first time interval; If there is no corresponding message delivery feedback for the current message to be pushed within the preset second time interval, judge whether the preset second time interval reaches the upper limit of the preset time interval; If the preset second time interval does not reach the upper limit of the preset time interval, continue to re-push the current message to be pushed; If the preset second time interval reaches the upper limit of the preset time interval, mark and eliminate the current message to be pushed to form a corresponding elimination message record.

3. A message push method according to claim 1, characterized in that The method further includes: Obtain the connection status between the push server and the network server; If the connection status is a disconnection, generate a corresponding reconnection interval; Establish a connection between the push server and the network server according to the reconnection interval, and generate a corresponding number of reconnection times. The reconnection interval increases with the number of reconnection times between the push server and the network server; If the number of reconnection times exceeds the upper limit of the preset reconnection configuration, establish a connection between the push server and the network server according to the reconnection interval corresponding to the current number of reconnection times.

4. A terminal device, comprising a memory and a processor, characterized in that, The memory stores computer instructions that can run on the processor. When the processor loads and executes the computer instructions, it executes a message push method according to any one of claims 1 to 3.

5. A computer-readable storage medium storing computer instructions, characterized in that, When the computer instructions are loaded and executed by the processor, it executes a message push method according to any one of claims 1 to 3.

Citation Information

Patent Citations

  • Message pushing method and device based on weight calculation, equipment and storage medium

    CN112565342A