Message push processing methods, devices, equipment, storage media and program products
By acquiring relevant information from the client and the push server, predictive models are used to select the best push server or offline methods are employed to resolve message push failures, thereby improving the success rate of message pushes and the user experience.
Patent Information
- Application Number
- CN202410429819.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-10
- Publication Date
- 2025-12-02
- Estimated Expiration
- 2044-04-10
AI Technical Summary
In some push notification scenarios, there is a problem of untimely and unsuccessful push notifications, especially when users are in a weak network or have no network, which affects user experience and the efficiency of business transaction loop.
By obtaining the client's location information, identification information, and the push server's identification information, the success probability of each push server is calculated using a message push prediction model. The server with the highest success probability is selected for push, or the server with a success probability greater than a set threshold is selected for push. If no successful server is found, offline push is performed via SMS, email, or telephone.
It improved the success rate of message push, achieved better real-time push effects, and enhanced user experience and the closed-loop efficiency of business transactions.
Smart Images

Figure CN118200395B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of financial technology or other related fields, and in particular to a message push processing method, apparatus, device, storage medium and program product. Background Technology
[0002] With the development of mobile internet technology, more and more application scenarios require servers to push messages to clients. The industry already has many flexible, efficient, and accurate message push tools and services.
[0003] In related technologies, when pushing messages to a client, a load balancing strategy is first used to determine the push server to which the message will be sent, and then the message is pushed to the client through that push server. However, in some scenarios, messages may fail to be pushed successfully in a timely manner. Summary of the Invention
[0004] This application provides a message push processing method, apparatus, device, storage medium, and program product to solve the technical problem that messages cannot be successfully pushed in a timely manner in some message push scenarios.
[0005] In a first aspect, this application provides a message push processing method, comprising: obtaining relevant information for pushing messages to a client, the relevant information including the client's current location information, the client's client identification information, the push time period, and server identification information corresponding to at least two push servers respectively; determining the success probability of each of the at least two push servers pushing messages to the client based on the relevant information; determining a target push server among the at least two push servers based on the success probability; and pushing messages to the client through the target push server.
[0006] In one possible implementation, determining the success probability of each of the application's at least two push servers sending a message to the client, based on relevant information, includes: inputting relevant information into a message push prediction model to predict the success probability of each of the application's at least two push servers sending a message to the client.
[0007] In one possible implementation, among at least two push servers, the target push server is determined based on the success probability, including: among at least two push servers, the push server with the highest success probability is determined as the target push server; or, among at least two push servers, it is determined whether there is a push server with a success probability greater than a set threshold, and if so, the target push server is determined from the push servers with a success probability greater than the set threshold.
[0008] In one possible implementation, determining the target push server among push servers with a success probability greater than a set threshold includes: determining the push server with the highest success probability as the target push server among push servers with a success probability greater than the set threshold; or, determining the target push server among push servers with a success probability greater than the set threshold based on a load balancing strategy.
[0009] In one possible implementation, the message push processing method further includes: if there is no push server with a success probability greater than a set threshold among at least two push servers, the application sets a push method to push offline messages to the client, and the set push method includes one or more of SMS, email and telephone.
[0010] In one possible implementation, after pushing a message to the client via the target push server, the message push processing method further includes: when a message push failure is detected, the application sets a push method to push the message to the client offline, which includes one or more of SMS, email, and telephone push methods.
[0011] In one possible implementation, the SMS method includes: sending a transaction encrypted string to the client via an SMS system; the client decrypting the transaction encrypted string according to encryption and decryption rules to obtain business information, which includes a user identifier, a message template identifier, and transaction information; verifying user information based on the user identifier; after successful user information verification, filling the corresponding message template with the transaction information to obtain a push message, and displaying the push message; and / or sending the message content contained in the push message to the client via the SMS system.
[0012] In one possible implementation, if a transaction encryption string is sent to the client via an SMS system, the method further includes: obtaining the offline push result of the application setting to push messages to the client offline; and updating the trained message push prediction model based on the offline push result.
[0013] In one possible implementation, the message push prediction model is obtained as follows: Historical push samples are acquired, including the location information of the push client, the client identifier information of the push client, the push time period, the push server identifier information, and whether the message push was successful; the location information of the push client, the client identifier information of the push client, the push time period, and the push server identifier are used as feature variables, and the success of the message push is used as the label; a message push prediction model is constructed based on machine learning; and the message push prediction model is trained based on the historical push samples.
[0014] Secondly, this application provides a message push processing device, comprising:
[0015] The acquisition module is used to acquire relevant information for message push to the client. This relevant information includes the client's current location information, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers.
[0016] The first determining module is used to determine the probability of success of each of the application's at least two push servers sending messages to the client, based on relevant information.
[0017] The second determining module is used to determine the target push server based on the success probability among at least two push servers;
[0018] The message push module is used to push messages to clients through the target push server.
[0019] In one possible implementation, the first determining module is specifically used to: input relevant information into the message push prediction model to predict the success probability of each of the application's at least two push servers sending a message to the client.
[0020] In one possible implementation, the second determining module is specifically used to: determine the push server with the highest success probability among at least two push servers as the target push server; or, determine whether there is a push server with a success probability greater than a set threshold among at least two push servers, and if so, determine the target push server among the push servers with a success probability greater than the set threshold.
[0021] In one possible implementation, the second determining module is further configured to: determine the push server with the highest success probability as the target push server among push servers with a success probability greater than a set threshold; or, determine the target push server among push servers with a success probability greater than a set threshold based on a load balancing strategy.
[0022] In one possible implementation, the message push module is further used to: if there is no push server with a success probability greater than a set threshold among at least two push servers, the application sets a push method to push offline messages to the client, and the set push method includes one or more of SMS, email and telephone.
[0023] In one possible implementation, after pushing a message to the client via the target push server, the message push module is further configured to: when a message push failure is detected, the application sets a push method to push an offline message to the client, which includes one or more of SMS, email, and telephone push methods.
[0024] In one possible implementation, the SMS method includes: sending a transaction encrypted string to the client via an SMS system; the client decrypting the transaction encrypted string according to encryption and decryption rules to obtain business information, which includes a user identifier, a message template identifier, and transaction information; verifying user information based on the user identifier; after successful user information verification, filling the corresponding message template with the transaction information to obtain a push message, and displaying the push message; and / or sending the message content contained in the push message to the client via the SMS system.
[0025] In one possible implementation, if a transaction encryption string is sent to the client via an SMS system, the acquisition module is further used to: acquire the offline push results of the offline message push sent to the client using the push method set by the application; and update the trained message push prediction model based on the offline push results.
[0026] In one possible implementation, the message push prediction model is obtained as follows: Historical push samples are acquired, including the location information of the push client, the client identifier information of the push client, the push time period, the push server identifier information, and whether the message push was successful; the location information of the push client, the client identifier information of the push client, the push time period, and the push server identifier are used as feature variables, and the success of the message push is used as the label; a message push prediction model is constructed based on machine learning; and the message push prediction model is trained based on the historical push samples.
[0027] Thirdly, embodiments of this application provide an electronic device, including: a processor, and a memory communicatively connected to the processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to implement the message push processing method provided in the first aspect.
[0028] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the message push processing method provided in the first aspect.
[0029] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the message push processing method provided in the first aspect.
[0030] The message push processing method, apparatus, device, storage medium, and program product provided in this application obtain relevant information such as the current location information of the client sending message pushes to the client, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers. Based on the relevant information, the application determines the success probability of each of the at least two push servers sending a message to the client. Among the at least two push servers, a target push server is determined based on the success probability, and the message is sent to the client through the target push server. This application improves the success rate of message pushes and achieves better real-time push effects by optimizing the network processing of the servers sending message pushes to the client. Attached Figure Description
[0031] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0032] Figure 1 A schematic diagram of the message push processing system provided in the embodiments of this application;
[0033] Figure 2 A flowchart illustrating a message push processing method provided in an embodiment of this application;
[0034] Figure 3 A method for obtaining a message push prediction model provided in one embodiment of this application;
[0035] Figure 4 A schematic diagram of a message push processing device provided in an embodiment of this application;
[0036] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0037] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0038] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0039] First, the technical terms used in the embodiments of this application will be explained:
[0040] Client-side push notification system: Pushing messages from the server to the mobile client, the most common methods currently used are polling and long connections.
[0041] Distributed messaging system: A distributed, segmented, multi-replica distributed messaging system that is coordinated by a distributed application coordination service.
[0042] Distributed message producer: Produces (writes) messages to the distributed messaging system.
[0043] Distributed message consumer: consumes (reads) messages from a distributed messaging system.
[0044] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use, processing, transmission, provision, disclosure, and application of the relevant data all comply with the relevant laws, regulations, and standards of the relevant countries and regions, have taken necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation portals for users to choose to authorize or refuse.
[0045] It should be noted that the message push processing method, apparatus, device, storage medium and program product of this application can be used in the field of financial technology, or in any field other than financial technology. The application field of the message push processing method, apparatus, device, storage medium and program product of this application is not limited.
[0046] In related technologies, client-side push notification technology relies on the client's network conditions. When users are in a weak or no-network situation, they will not be able to receive or receive push notifications in a timely manner. In scenarios where push notifications are sent for highly important messages, such as when a user presents an offline payment code or transit code on their client-side device, and the merchant / public transport gate recognizes and deducts payment, users in weak or no-network situations will not be able to receive payment information in a timely manner via client-side push notifications, resulting in a poor user experience and low efficiency in the business transaction loop.
[0047] Based on the problems existing in related technologies, this application provides a message push processing method, apparatus, device, storage medium, and program product. By determining the success probability of each push server that pushes messages to the client, and selecting the optimal push server to push messages to the client based on the success probability, the success rate of message push is improved by performing network optimization processing on the servers that push messages to the client, thereby achieving a better real-time push effect.
[0048] Figure 1 This is a schematic diagram of a message push processing system provided in an embodiment of this application. Figure 1 As shown, the message push processing system includes a client 11 and a server 12. The client 11 and the server 12 are connected via a communication connection.
[0049] For example, client 11 can be a mobile client, i.e., an application installed on a mobile device.
[0050] For example, mobile devices can be mobile phones, tablets, and smart wearable devices.
[0051] For example, the user interface provided by client 11 enables interaction between the user and server 12.
[0052] For example, server 12 includes at least two push servers 13 for pushing messages to clients.
[0053] Specifically, after obtaining relevant information such as the client's current location information, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers for pushing messages to the client 11, the server 12 can determine the success probability of each push server pushing messages to the client 11 based on this relevant information, and determine the target push server for pushing messages to the client based on the success probability.
[0054] It should be understood that Figure 1 This is merely a schematic diagram illustrating one application scenario provided by an embodiment of this application. This embodiment does not necessarily represent... Figure 1 The types and number of clients included, as well as the number of push servers in the server-side, are limited. For example, in Figure 1 The application scenarios shown may also include data storage devices for storing business data. These data storage devices can be external storage devices or internal storage devices integrated into the corresponding mobile devices on the client or the server.
[0055] The following is based on Figure 1 The server shown is the execution entity. Specific embodiments are used to describe the technical solution of this application and how it solves the aforementioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0056] Figure 2 This is a flowchart illustrating a message push processing method provided in an embodiment of this application. Figure 2As shown, the message push processing method includes the following steps:
[0057] S201, Obtain relevant information for message push to the client, including the client's current location information, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers.
[0058] For example, the client's current location information can be the client's current latitude and longitude location information.
[0059] For example, the client identification information can be the mobile device model corresponding to the client.
[0060] For example, server identification information can be the server's Internet Protocol (IP) address.
[0061] S202, Based on relevant information, determine the probability of success for each of the application's at least two push servers to send a message to the client.
[0062] In one possible implementation, based on a message push prediction model, the probability of each of the application's at least two push servers successfully pushing messages to the client is calculated according to the aforementioned relevant information.
[0063] S203, among at least two push servers, determine the target push server based on the success probability.
[0064] In one possible implementation, among at least two push servers, the push server with the highest success probability is determined as the target push server;
[0065] In another possible implementation, among at least two push servers, it is determined whether there is a push server with a success probability greater than a set threshold. If so, the target push server is determined from among the push servers with a success probability greater than the set threshold.
[0066] Optionally, when determining the target push server among push servers with a success probability greater than a set threshold, one possible implementation is to determine the push server with the highest success probability among the push servers with a success probability greater than the set threshold as the target push server; another possible implementation is to determine the target push server among push servers with a success probability greater than the set threshold based on a load balancing strategy.
[0067] S204 pushes messages to the client through the target push server.
[0068] In this embodiment, the application obtains information such as the current location of the client sending message pushes, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers. Based on this information, it determines the success probability of each of the at least two push servers sending a message to the client. Among the at least two push servers, a target push server is determined based on the success probability, and the message is sent to the client through the target push server. This application improves the success rate of message pushes and achieves better real-time push effects by performing network optimization on the servers sending message pushes to the client.
[0069] Optionally, if there is no push server with a success probability greater than a set threshold among at least two push servers, the application sets a push method to send offline messages to the client. The set push method includes one or more of SMS, email, and telephone.
[0070] For example, offline message push can be performed solely via SMS, or via SMS and email, or via SMS and telephone, or via email and telephone, or via SMS, email, and telephone.
[0071] It should be noted that the message push processing method provided in this application does not limit the number or type of push methods set when performing offline message push; it can be determined according to actual needs.
[0072] Optionally, the SMS method includes: sending a transaction encrypted string to the client via an SMS system, the client decrypting the transaction encrypted string according to encryption and decryption rules to obtain business information, the business information including a user identifier, a message template identifier, and transaction information; verifying user information based on the user identifier, and after the user information verification is successful, filling the corresponding message template with the transaction information to obtain a push message and displaying the push message; and / or sending the message content contained in the push message to the client via an SMS system.
[0073] In some embodiments, the SMS method may be to send the transaction encryption string to the client only through the SMS system; in some embodiments, the SMS method may be to send the message content contained in the push message to the client only through the SMS system; in some embodiments, the SMS method may be to send the message content contained in the push message to the client through the SMS system, and to send the message content contained in the push message to the client through the SMS system.
[0074] It is understandable that if there is no push server with a success rate greater than the set threshold, it means that the user's connection is abnormal at the current location and during the push period, and the user is in a weak network or no network connection state. Therefore, messages can be pushed to the client through offline message push to achieve a real-time push effect.
[0075] Optionally, the success probability in step S202 can be calculated by inputting relevant information into the message push prediction model to predict the success probability of each of the application's at least two push servers sending a message to the client.
[0076] The following is combined with Figure 3 This section provides a detailed explanation of how the message push prediction model is obtained.
[0077] Figure 3 This application describes a method for obtaining a message push prediction model according to an embodiment of the present application. For example... Figure 3 As shown, the method for obtaining this message push prediction model includes the following steps:
[0078] S301, Obtain historical push samples, which include the location information of the push client, the client identification information of the push client, the push time period, the push server identification information, and whether the message push was successful.
[0079] Optionally, the above Figure 1 The server shown may also include a message push feedback module, which is used to write messages that failed to push for different reasons, messages that went offline, messages that were successfully pushed, and related information for each push message into a distributed message queue as a producer.
[0080] For example, the "going offline" message could be a message indicating that the current user is offline and cannot receive push notifications. In one possible implementation, the server pushing messages to clients can first store the "going offline" message and then, upon detecting a normal user connection, send the push notification to the client through the server.
[0081] For example, the relevant information includes, but is not limited to, the following fields:
[0082] CMNO: Client Identification Information
[0083] PUSHTIMES: Number of push notifications
[0084] PUSHTYPE: Message type
[0085] PUSHSTATE: Message push status
[0086] PUSHREASON: Reason for Push Notification
[0087] PUSHTIME: Push time
[0088] PUSHCONTENT: Push Content
[0089] For example, the message type can be the business type corresponding to the message, such as payment business, refund business, and user account change, etc.
[0090] For example, the message push status can be pushed to offline, pushed successfully, or pushed failed.
[0091] For example, push notifications may be blocked due to network anomalies, client system malfunctions, etc.
[0092] For example, the relevant information may also include: the client's location information, the push time period, the push server identification information, and whether the message push was successful.
[0093] Optionally, the above Figure 1 The server shown may also include a distributed queue message consumption module. In one possible implementation, this distributed queue message consumption module is used to read historical push samples from a distributed message queue in real time or periodically to build and train or update the training message push prediction model.
[0094] Understandably, the distributed queue message consumption module acquires messages and related information from the distributed message queue in real-time or periodically to establish a message push prediction model. On the one hand, it can optimize the push network to achieve better real-time push results; on the other hand, it can perform message supplementation processing for failed pushes, i.e., push messages to clients by setting push methods to improve the timeliness of message pushes and the efficiency of business transaction closure. Furthermore, if push failures are caused by client system anomalies, it can notify marketing or operations personnel for timely intervention to achieve timely repair of the client system.
[0095] S302 uses the location information of the push client, the client identification information of the push client, the push time period, and the push server identification as feature variables, and uses whether the message push is successful as a label to build a message push prediction model based on machine learning.
[0096] For example, machine learning methods can be one or more of Support Vector Machine (SVM), Logistic Regression (LR), and Decision Tree.
[0097] The following sections will explain SVM, LR, and decision trees respectively.
[0098] SVM is a commonly used machine learning method for solving classification problems. Different kernel functions can be selected for linearly separable and non-linearly separable data. Commonly used kernel functions include the linear kernel, polynomial kernel, Gaussian kernel, and Sigmoid kernel. The message push prediction model provided in this application embodiment can be trained and analyzed using these four kernel functions.
[0099] Logistic Regression (LR) is based on linear regression and uses the Sigmoid function to introduce nonlinear factors to solve binary classification problems, and is used to estimate the probability of something.
[0100] Decision trees are an instance-based inductive learning method that trains specific rules based on the characteristics of samples. They achieve classification by splitting unordered samples into different branches.
[0101] For example, when the message push prediction model provided in this application embodiment is trained using a decision tree, the maximum number of decision tree layers can be set to 4.
[0102] It should be noted that the above setting of the maximum number of decision tree layers is only an example. In the message push processing method provided in this application embodiment, the number of decision tree layers when training the message push prediction model using decision trees is not limited. The specific number of decision tree layers can be determined according to actual needs.
[0103] S303, a message push prediction model is trained based on historical push samples.
[0104] For example, when training a message push prediction model, recall, precision, accuracy, and F1-score can be calculated using a confusion matrix, and one or more of the calculated recall, precision, accuracy, and F1-score can be used to adjust the model parameters.
[0105] Optionally, the trained message push prediction model can be used to make predictions based on the prediction set samples.
[0106] In one possible implementation, historical push samples are divided into a training set and a prediction set according to a certain ratio. The message push prediction model is trained using the training set, and the trained message push prediction model is used to make predictions using the prediction set.
[0107] In this embodiment, a message push prediction model is constructed based on machine learning. This model is obtained by acquiring historical push samples, including the location information of the push client, the client identifier information of the push client, the push time period, the push server identifier information, and whether the message push was successful. The location information of the push client, the client identifier information of the push client, the push time period, and the push server identifier are used as feature variables, and the success rate of the message push is used as the label. The model is further trained using historical push samples. By applying this message push prediction model to calculate the success rate of pushes from different push servers, the push network is optimized.
[0108] It should be noted that the message push prediction model provided in this application embodiment can be updated and trained using real-time push samples. Optionally, when sending a transaction encryption string to the client via an SMS system, the message push processing method provided in this application embodiment further includes: obtaining the offline push result of the application setting the push method to send offline messages to the client; and updating the trained message push prediction model based on the offline push result.
[0109] It is understandable that there can be various reasons for message push failures to clients, such as the user being in a weak or no network state, or client system failures. Therefore, when the user's network is good but message push to the client fails, the possible reason is a client system failure. Based on this scenario, optionally, the message push processing method provided in this application embodiment, after pushing a message to the client through the target push server, further includes: when message push failure is detected, the application sets a push method to push the message to the client offline, and the set push method includes one or more of SMS, email, and telephone.
[0110] Specifically, the implementation of SMS push notifications is similar to that described above, and will not be repeated here.
[0111] For example, in response to the cause of a client system failure, timely intervention can be achieved by notifying marketing or operations personnel to restore the client system in a timely manner.
[0112] It should be noted that the message push processing method provided in this application embodiment uses flexible processing rules. Specifically, if there is no push server with a success probability greater than a set threshold among at least two push servers, the application uses a set push method to push offline messages to the client. Also, after pushing messages to the client through the target push server, if a message push failure is detected, the application uses a set push method to push offline messages to the client. This ensures that users can receive push messages in a timely manner, improving the timeliness of message push, the closed-loop efficiency of business transactions, and the user experience.
[0113] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.
[0114] Figure 4 This is a schematic diagram of a message push processing device provided in an embodiment of this application. Figure 4 As shown, the message push processing device 40 includes an acquisition module 410, a first determination module 420, a second determination module 430, and a message push module 440.
[0115] The acquisition module 410 is used to acquire relevant information for message push to the client. This relevant information includes the client's current location information, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers.
[0116] The first determining module 420 is used to determine the success probability of each of the at least two push servers of the application sending a message to the client, based on relevant information.
[0117] The second determining module 430 is used to determine the target push server based on the success probability among at least two push servers;
[0118] The message push module 440 is used to push messages to the client through the target push server.
[0119] In one possible implementation, the first determining module 420 is specifically used to: input relevant information into the message push prediction model to predict the success probability of each of the at least two push servers of the application sending a message to the client.
[0120] In one possible implementation, the second determining module 430 is specifically used to: determine the push server with the highest success probability among at least two push servers as the target push server; or, determine whether there is a push server with a success probability greater than a set threshold among at least two push servers, and if so, determine the target push server among the push servers with a success probability greater than the set threshold.
[0121] In one possible implementation, the second determining module 430 is further configured to: determine the push server with the highest success probability as the target push server among push servers with a success probability greater than a set threshold; or, determine the target push server among push servers with a success probability greater than a set threshold based on a load balancing strategy.
[0122] In one possible implementation, the message push module 440 is further configured to: if there is no push server with a success probability greater than a set threshold among at least two push servers, the application sets a push method to push offline messages to the client, the set push method including one or more of SMS, email and telephone methods.
[0123] In one possible implementation, after pushing a message to the client via the target push server, the message push module 440 is further configured to: when a message push failure is detected, the application sets a push method to push an offline message to the client, wherein the set push method includes one or more of SMS, email, and telephone.
[0124] In one possible implementation, the SMS method includes: sending a transaction encrypted string to the client via an SMS system; the client decrypting the transaction encrypted string according to encryption and decryption rules to obtain business information, which includes a user identifier, a message template identifier, and transaction information; verifying user information based on the user identifier; after successful user information verification, filling the corresponding message template with the transaction information to obtain a push message, and displaying the push message; and / or sending the message content contained in the push message to the client via the SMS system.
[0125] In one possible implementation, if a transaction encryption string is sent to the client via an SMS system, the acquisition module 410 is further configured to: acquire the offline push result of the application setting the push method to push offline messages to the client; and update the trained message push prediction model based on the offline push result.
[0126] In one possible implementation, the message push prediction model is obtained as follows: Historical push samples are acquired, including the location information of the push client, the client identifier information of the push client, the push time period, the push server identifier information, and whether the message push was successful; the location information of the push client, the client identifier information of the push client, the push time period, and the push server identifier are used as feature variables, and the success of the message push is used as the label; a message push prediction model is constructed based on machine learning; and the message push prediction model is trained based on the historical push samples.
[0127] It should be understood that the message push processing device 40 provided in this application embodiment can be applied to the technical solutions in the above-described message push processing method embodiments, and its implementation principle and technical effect are similar, so it will not be described again here.
[0128] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 5As shown, the electronic device 50 includes a processor 501, a memory 502, a communication interface 503, and a system bus 504.
[0129] The memory 502 and the communication interface 503 are connected to the processor 501 via the system bus 504 and communicate with each other. The memory 502 is used to store computer execution instructions, the communication interface 503 is used to communicate with other devices, and the processor 501 is used to call the computer execution instructions in the memory to execute the speech-driven image synthesis method as described in the above method embodiment, and / or to execute the parameter estimation network training method as described in the above method embodiment.
[0130] Specifically, processor 501 may include one or more processing units. For example, processor 501 may be a Central Processing Unit (CPU), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules within the processor.
[0131] Memory 502 can be used to store computer-executed instructions. Memory 502 may include a program storage area and a data storage area. The program storage area may store the operating system, application programs required for at least one function (such as sound playback), etc. The data storage area may store data created during the use of electronic device 50 (such as audio data), etc. In addition, memory 502 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. Processor 501 executes various functional applications and data processing of electronic device 50 by running computer-executed instructions stored in memory 502.
[0132] Communication interface 503 can provide solutions for wireless communication applications including 2G / 3G / 4G / 110G on electronic device 50. Communication interface 503 can receive electromagnetic waves via an antenna, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. Communication interface 503 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via the antenna. In some embodiments, at least some functional modules of communication interface 503 can be housed in processor 501. In some embodiments, at least some functional modules of communication interface 503 and at least some modules of processor 501 can be housed in the same device.
[0133] System bus 504 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This system bus 504 can be divided into address bus, data bus, control bus, etc. For ease of illustration, it is represented by only one thick line in the diagram, but this does not indicate that there is only one bus or one type of bus.
[0134] It should be noted that the number of memory 502 and processor 501 is not limited in this embodiment; there can be one or more of them. Figure 5 The illustration shows an example; the memory 502 and the processor 501 can be connected via wired or wireless means, such as a bus connection. In practical applications, this electronic device 50 can be various forms of computers or mobile terminals. Computers include, for example, laptops, desktop computers, workbenches, servers, blade servers, mainframe computers, etc.; mobile terminals include, for example, personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices.
[0135] The electronic device in this embodiment can be used to execute the technical solutions in the above method embodiments. Its implementation principle and technical effect are similar, and will not be repeated here.
[0136] This application also provides a computer-readable storage medium storing computer-executable instructions. When these computer-executable instructions are executed by a processor, they implement the message push processing method as described in any of the above embodiments.
[0137] This application also provides a computer program product, including: a computer program, which, when executed by a processor, implements the message push processing method as described in any of the above embodiments.
[0138] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily essential to this application.
[0139] It should be further noted that although the steps in the flowchart are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0140] It should be understood that the above-described device embodiments are merely illustrative, and the device of this application can also be implemented in other ways. For example, the division of units / modules in the above embodiments is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units, modules, or components may be combined, or integrated into another system, or some features may be ignored or not executed.
[0141] Furthermore, unless otherwise specified, the functional units / modules in the various embodiments of this application can be integrated into one unit / module, or each unit / module can exist physically separately, or two or more units / modules can be integrated together. The integrated units / modules described above can be implemented in hardware or as software program modules.
[0142] When integrated units / modules are implemented in hardware, the hardware can be digital circuits, analog circuits, etc. The physical implementation of the hardware structure includes, but is not limited to, transistors, memristors, etc. Unless otherwise specified, the processor can be any suitable hardware processor, such as a CPU, GPU, FPGA, DSP, and ASIC, etc. Unless otherwise specified, the storage unit can be any suitable magnetic or magneto-optical storage medium, such as Resistive Random Access Memory (RRAM), Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Enhanced Dynamic Random Access Memory (EDRAM), High-Bandwidth Memory (HBM), Hybrid Memory Cube (HMC), etc.
[0143] If the integrated unit / module is implemented as a software program module and sold or used as an independent product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.
[0144] In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as these combinations of technical features do not contradict each other, they should be considered within the scope of this specification.
[0145] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the following claims.
[0146] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.
Claims
1. A message push processing method, characterized in that, include: Obtain relevant information for message push to the client, including the client's current location information, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers; Based on the relevant information, determine the probability of successfully pushing messages to the client using each of the at least two push servers; Among the at least two push servers, the target push server is determined based on the success probability; Messages are pushed to the client through the target push server; If none of the at least two push servers has a success rate greater than a set threshold, the application will push offline messages to the client using a set push method, which includes one or more of SMS, email, and telephone methods. Alternatively, after pushing a message to the client through the target push server, the method further includes: When a message push failure is detected, the application sets a push method to send offline messages to the client. The set push method includes one or more of SMS, email, and telephone. The SMS method includes: The system sends a transaction encrypted string to the client via SMS. The client decrypts the transaction encrypted string according to encryption and decryption rules to obtain business information, which includes a user identifier, a message template identifier, and transaction information. The system then verifies the user information based on the user identifier. After the user information is verified, the system fills the transaction information into the message template corresponding to the message template identifier to obtain a push message, which is then displayed.
2. The method according to claim 1, characterized in that, Determining the success probability of sending a message to the client using each of the at least two push servers based on the relevant information includes: The relevant information is input into the message push prediction model to predict the probability of successfully pushing messages to the client using each of the at least two push servers.
3. The method according to claim 2, characterized in that, The step of determining the target push server based on the success probability among the at least two push servers includes: Among the at least two push servers, the push server with the highest success probability is determined as the target push server; Alternatively, among the at least two push servers, determine whether there is a push server with a success probability greater than a set threshold. If so, determine the target push server among the push servers with a success probability greater than the set threshold.
4. The method according to claim 3, characterized in that, The step of determining the target push server from push servers with a success probability greater than a set threshold includes: Among the push servers with a success probability greater than a set threshold, the push server with the highest success probability is identified as the target push server. Alternatively, based on a load balancing strategy, the target push server can be determined from push servers with a success probability greater than a set threshold.
5. The method according to claim 2, characterized in that, If the transaction encryption string is sent to the client via an SMS system, it also includes: Obtain the offline push results of the application's push settings to send offline messages to the client; Based on the offline push results, update and train the message push prediction model.
6. The method according to any one of claims 2 to 5, characterized in that, The message push prediction model was obtained through the following method: Obtain historical push samples, which include the location information of the push client, the client identification information of the push client, the push time period, the push server identification information, and whether the message push was successful; Using the location information of the push client, the client identification information of the push client, the push time period, and the push server identification as feature variables, and the success or failure of the message push as a label, a message push prediction model is constructed based on machine learning. Based on the historical push samples, a message push prediction model is trained.
7. A message push processing device, characterized in that, include: The acquisition module is used to acquire relevant information for message push to the client. The relevant information includes the client's current location information, the client's client identification information, the push time period, and the server identification information corresponding to at least two push servers. The first determining module is used to determine the probability of successfully pushing a message to the client by each of the at least two push servers based on the relevant information. The second determining module is used to determine the target push server among the at least two push servers based on the success probability; The message push module is used to push messages to the client through the target push server; The message push module is also used to push offline messages to the client using a set push method if there is no push server with a success probability greater than a set threshold among the at least two push servers. The set push method includes one or more of SMS, email and telephone. Alternatively, after pushing a message to the client via the target push server, the message push module is further configured to: When a message push failure is detected, the application sets a push method to send offline messages to the client. The set push method includes one or more of SMS, email, and telephone. The SMS method includes: The system sends a transaction encrypted string to the client via SMS. The client decrypts the transaction encrypted string according to encryption and decryption rules to obtain business information, which includes a user identifier, a message template identifier, and transaction information. The system then verifies the user information based on the user identifier. After the user information is verified, the system fills the transaction information into the message template corresponding to the message template identifier to obtain a push message, which is then displayed.
8. An electronic device, characterized in that, include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1 to 6.
10. A computer program product, characterized in that, include: A computer program that, when executed by a processor, implements the method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Message pushing method and device, equipment and medium
CN110855792A
Short message channel determination method and related device
CN117835169A