Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 schematically illustrates an exemplary system architecture to which message processing methods and apparatuses may be applied, according to embodiments of the present disclosure.
It should be noted that fig. 1 is only an example of a system architecture to which embodiments of the present disclosure may be applied to assist those skilled in the art in understanding the technical content of the present disclosure, but does not mean that embodiments of the present disclosure may not be used in other devices, systems, environments, or scenarios. For example, in another embodiment, an exemplary system architecture to which the message processing method and apparatus may be applied may include a client, but the client may implement the message processing method and apparatus provided by the embodiments of the present disclosure without interacting with a server.
As shown in fig. 1, a system architecture 100 according to this embodiment may include a client 101, a third party server 102, and a server 103. The network is used as a medium to provide communication links between the client 101 and the server 103, between the client 101 and the third party server 102, and between the third party server 102 and the server 103. The network may include various connection types, such as wired and/or wireless communication links, and the like.
A user may interact with the server 103 through a network using the client 101 to receive or send interaction messages, etc. The client 101 may have installed thereon various communication client applications such as, by way of example only, a knowledge reading class application, a web browser application, a search class application, an instant messaging (INSTANT MESSAGING, IM) tool, office class software, mailbox client and/or social platform software, and the like.
The client 101 may be a variety of electronic devices having a display screen and supporting web browsing, including but not limited to smartphones, tablets, laptop and desktop computers, and the like.
The third party server 102 may be a server that provides services to a third party company, which may be a provider that provides stored value cards. The third party server 102 may be utilized to provide management, logging, etc. services to stored value cards that are in the lifecycle. For example, available resource values, replenishment records, consumption records, etc. of the stored value card may be monitored in real time.
The third party server 102 may send information about the stored value card to the server 103 at regular intervals, or may provide a query interface to the server 103 to communicatively connect with the server 103 through the query interface.
The query interfaces may include at least one of a single card query interface 1021, a batch query interface 1022, and a paging query interface 1023. The single card inquiry interface 1021 may include an inquiry interface for inquiring a stored value card. Batch query interface 1022 may include a query interface that queries all stored value cards at once. Paging query interface 1023 may include a query interface that pages a collection of stored value cards. The server 103 for performing the message processing method may be communicatively coupled to the third party server 102 using a query interface to obtain the available resource value of the stored-value card based on the identification information of the stored-value card, such as the card number.
The server 103 may be a server providing various services, such as a balance reminder of available resource values for a stored-value card held by a user in a manner that sends an interactive message to the user's client 101.
The server 103 may include a reminder module 1031 and a complementary module 1032. The reminder module 1031 can be utilized to obtain a value for available resources from the third party server 102. And based on the available resource value, sending an interaction message to the client 101 corresponding to the target reminding object. The interactive message may be updated according to the interactive operation in response to receiving the interactive operation of the target reminder object from the client 101 using the complementary module 1032.
The message processing method provided by the embodiments of the present disclosure may also be generally performed by the server 103. Accordingly, the message processing apparatus provided by the embodiments of the present disclosure may be generally disposed in the server 103. The message processing method provided by the embodiments of the present disclosure may also be performed by a server or a server cluster that is different from the server 103 and is capable of communicating with the client 101 and/or the server 103. Accordingly, the message processing apparatus provided by the embodiments of the present disclosure may also be provided in a server or a server cluster different from the server 103 and capable of communicating with the client 101 and/or the server 103.
For example, the server 103 determines available resource values for the object by the third party server 102 in response to detecting the message alert instruction. And determining candidate reminding objects based on the available resource values. Under the condition that the candidate reminding object is determined to be the target reminding object according to the preset reminding strategy, generating an interaction message corresponding to the target reminding object according to the available resource value. During the predetermined alert period, an interactive message is transmitted to the client 101 corresponding to the target alert object so that the client 101 displays the interactive message.
It should be understood that the number of clients, networks, and servers in fig. 1 is merely illustrative. There may be any number of clients, networks, and servers, as desired for implementation.
It should be noted that the sequence numbers of the respective operations in the following methods are merely representative of the operations for the purpose of description, and should not be construed as representing the order of execution of the respective operations. The method need not be performed in the exact order shown unless explicitly stated.
Fig. 2 schematically illustrates a flow chart of a message processing method according to an embodiment of the present disclosure.
As shown in fig. 2, the method 200 includes operations S210 to S230.
In response to detecting the message alert instruction, a candidate alert object is determined in operation S210. Candidate alert objects are objects having an available resource value less than or equal to a first predetermined threshold.
In operation S220, in case that it is determined that the candidate reminder object is the target reminder object according to the predetermined reminder policy, an interaction message corresponding to the target reminder object is generated according to the available resource values. The predetermined reminder policy is used to determine whether the candidate reminder object is a target reminder object.
In operation S230, an interactive message is transmitted to the client corresponding to the target reminder object for a predetermined reminder period so that the client displays the interactive message.
According to embodiments of the present disclosure, the message alert instruction may be a message alert instruction for a stored value card. A stored value card may refer to a card having a complementary, consumable function. Such as movie cards, meal cards, game cards, etc. The message reminding instruction is divided according to the triggering sources, and can comprise a message reminding instruction automatically triggered by the server or a message reminding instruction triggered based on a message reminding request of the client. The message reminding instruction is divided according to the generation time, and can be a message reminding instruction generated according to a preset time interval or a message reminding instruction generated randomly.
According to another embodiment of the present disclosure, the message alert instructions may also be generated based on the available resource values within the stored value card. For example, the available resource value of each stored-value card is monitored in real time, and a message alert instruction is generated if the available resource value of any stored-value card is determined to be less than or equal to a first predetermined threshold.
According to embodiments of the present disclosure, the candidate reminder object may be a user holding a stored-value card and having available resource values stored within the stored-value card that are less than or equal to a first predetermined threshold. A candidate reminder object having an available resource value for the stored-value card less than or equal to a first predetermined threshold may be determined based on a mapping between the identification of the stored-value card and the user identification.
According to embodiments of the present disclosure, the available resource value may refer to the amount of value of a resource that may be traded or consumed. For example, the stored value card is a meal card and the available resource value may characterize the amount that can be redeemed for food. For example, the stored value card is a movie card and the available resource value may characterize the number of movie tickets that can be purchased. The more available resource values, the greater the value thereof, and the less available resource values, the less the value thereof. The first preset threshold value can be preset according to actual conditions, and the value of the available resource value in the stored value card can be measured by using the first preset threshold value. In the event that the available resource value is less than or equal to the first predetermined threshold, determining that the stored value card is insufficient, there may be a problem of a transaction redemption operation failing when the transaction redemption or consumption is made using the available resource value in the stored value card.
Taking the stored value card as an example, under the condition that the available resource value in the stored value card is smaller, the problem that the available resource value is insufficient when the card swiping purchase is carried out is easily encountered, and further the problem that the dining team is blocked or needs to be supplemented in a long team at a supplement place due to insufficient balance in the stored value card is easily caused.
According to the embodiment of the disclosure, candidate reminding objects can be screened according to a preset reminding strategy, and whether the candidate reminding objects are target reminding objects or not is determined. The target reminder object may refer to: and when the use frequency of the stored-value card is higher than the preset frequency threshold value, and the value of the available resources is smaller than or equal to the first preset threshold value. And under the condition that the candidate reminding object is determined to be the target reminding object, sending an interaction message to the client corresponding to the target reminding object in a preset reminding period. The interactive message may be used to characterize messages that have an available resource value less than or equal to a first predetermined threshold, or that are semantically "available resource value less, will affect use", etc. So that the client side can timely display the interaction message to the target reminding object to remind the target reminding object to timely supplement.
According to the embodiment of the disclosure, with the predetermined reminding policy, the target reminding objects with smaller available resource values, such as smaller than or equal to a first predetermined threshold value, and higher liveness, such as frequent use of the stored value cards, can be determined, and the objects with smaller available resource values, such as lower liveness than the predetermined frequency threshold value, are prevented from being mistakenly determined as the target reminding objects, and interactive messages are sent to the objects with lower use frequency of some stored value cards, so that message interference is caused.
According to an embodiment of the present disclosure, the predetermined reminding period may be a predetermined reminding period, taking the stored value card as a meal card as an example, and the predetermined reminding period may be a previous period of lunch time or a previous period of dinner time. And in a preset reminding period, sending an interactive message to the client corresponding to the target reminding object, and playing a role in timely reminding while ensuring that the target reminding object is not influenced by work, study and life according to actual conditions.
By using the message processing method provided by the embodiment of the disclosure, the target reminding object can be timely reminded of the available resource value by using the interactive message, so that the problem that the user fails in the transaction exchange process is avoided, and the convenience and experience of the user are improved.
According to an embodiment of the present disclosure, for operation S210 as shown in fig. 2, determining a candidate alert object in response to detecting a message alert instruction may include the following operations.
For example, in response to detecting a message alert instruction, an available resource value of the stored-value card is determined. And under the condition that the available resource value is less than or equal to a first preset threshold value, determining that the user holding the stored value card is a candidate reminding object.
According to embodiments of the present disclosure, determining the available resource value of the stored-value card may include pushing the acquisition means. For example, the available resource value sent from the third party server for the stored-value card is received. But is not limited thereto and may include a pull acquisition mode. For example, the available resource value for the stored-value card is obtained through the query interface using a query interface provided by the third-party server.
According to an embodiment of the present disclosure, the query interface includes at least one of a single card query interface, a batch query interface, and a paging query interface. The single card inquiry interface may include an inquiry interface for inquiring one stored value card. The batch query interface may include a query interface that queries all stored value cards at once. The paging query interface may include a query interface that pages a collection of stored value cards. The server for performing the message processing method may be communicatively coupled to a third party server using a query interface to obtain the available resource value of the stored-value card based on the identification information of the stored-value card, such as the card number.
According to the embodiment of the disclosure, the pushing and acquiring mode is utilized, so that the synchronization can be realized in a plurality of servers, and the instantaneity of the acquired available resource value is further met. The pull acquisition mode can meet the diversity of the mode for acquiring the available resource value.
According to another embodiment of the present disclosure, in a case where it is determined that the available resource value of the user is less than or equal to the first predetermined threshold, the user may be regarded as a candidate reminder object. And directly taking the candidate reminding object as a target reminding object. And generating an interaction message corresponding to the target reminding object according to the available resource value. And sending the interaction message to the client corresponding to the target reminding object in a preset period.
According to the embodiment of the disclosure, compared with the method of directly taking the candidate reminding object as the target reminding object, the method of determining that the candidate reminding object is the target reminding object according to the preset reminding strategy can exclude the candidate reminding object with low activity, and accurate reminding is achieved.
Taking the stored-value card as an example of a meal card, the user holding the stored-value card never eats at the corresponding restaurant, takes a meal or takes a take-out from the restaurant. The user activity of such stored value cards is low. And comparing the first preset threshold value with the available resource value, wherein the available resource value in the stored value card of the user is always smaller than the first preset threshold value. The object is directly used as a target reminding object, and an interactive message is sent to a client corresponding to the target reminding object, so that the user of the stored value card is disturbed. Also, for example, a user holding a stored-value card with high activity may not be dining in a restaurant during, for example, a non-workday time such as a weekend, holiday, or business trip. In this case, therefore, such users need not be targeted for reminding even if the available resource value in the stored-value card is always less than the first predetermined threshold.
According to the embodiment of the disclosure, the candidate reminding objects in the above situation can be eliminated by using the preset reminding policy, and the remaining candidate reminding objects are used as target reminding objects, so that the sending amount of the interactive message is simplified, and meanwhile, the message interference to unnecessary users is avoided.
The predetermined alert strategy will be described in detail below.
According to another embodiment of the present disclosure, for operation S220 as shown in fig. 2, in the case where it is determined that the candidate reminder object is the target reminder object according to the predetermined reminder policy, generating the interactive message corresponding to the target reminder object according to the available resource values may include the following operations.
For example, the matching condition is determined according to a predetermined alert policy. And determining the candidate reminding objects meeting the matching conditions as target reminding objects. And generating an interaction message corresponding to the target reminding object according to the available resource value.
According to an embodiment of the present disclosure, the matching condition includes at least one of: inquiring a time matching condition, an execution success time matching condition and an available resource numerical value matching condition.
According to an embodiment of the present disclosure, the query time matching condition may include: matching conditions between actual query time and expected query time. For example, the actual query time matches the expected query time, and the actual query time satisfies the query time matching condition; and if the actual query time is not matched with the expected query time, the actual query time does not meet the query time matching condition. The actual query time characterizes an actual execution time of the first predetermined query task and the expected query time characterizes a theoretical execution time of the first predetermined query task. The first predetermined query task characterizes a first predetermined round of tasks for querying available resource values of candidate alert objects.
According to an embodiment of the disclosure, the actual reminding time characterizes an actual execution time of the predetermined reminding task, the target querying time characterizes an actual execution time of the second predetermined querying task, the predetermined reminding task characterizes a task of a first predetermined round for reminding an available resource value of the target to the reminding object, the second predetermined querying task characterizes a task of a second predetermined round for querying an available resource value of the candidate reminding object, the second predetermined round is a round after the first predetermined round.
According to embodiments of the present disclosure, a message processing method may include a query task and a reminder task. The query task is used to query available resource values. The reminder task is used to send interactive messages. The occurrence time of the query task is earlier than the reminding task of the same round.
Taking as an example the operation of the message processing method that needs to be performed twice a day. The first predetermined query task occurs in the morning, and characterizes a first predetermined round of tasks for querying available resource values of candidate alert objects. The second predetermined query task occurs in the afternoon, characterizing a second predetermined round of tasks for querying available resource values of candidate alert objects. The first predetermined query task may be a theoretically executed query task that was last executed with the second predetermined query task. For example, the expected query time may be a theoretical execution time at which the first predetermined query task is executed. For example, the expected query time is 10 a.m.: 50. the actual query time is the actual execution time of executing the first predetermined query task. For example, the actual query time is 10:51. the actual reminding time characterizes the actual execution time of the predetermined reminding task, for example, the actual reminding time is 11:01. the target query time is the actual execution time of executing the second predetermined query task, for example, 4 pm: 51.
According to embodiments of the present disclosure, the resource values to be compared may refer to available resource values at historical moments. The available resource value may refer to the available resource value at the current time. Taking the second predetermined query task as an example, the available resource value obtained by querying through the second predetermined query task. And (3) inquiring the resource values to be compared by executing the first preset inquiring task relative to the first preset inquiring task.
It should be noted that, the matching between the actual query time and the expected query time may be that the actual query time is the same as the expected query time, but is not limited thereto, and may be that a time interval between the actual query time and the expected query time is less than or equal to a predetermined time interval threshold. Otherwise, if the time interval between the actual query time and the expected query time is greater than the preset time interval threshold, the actual query time and the expected query time are not matched.
According to an embodiment of the present disclosure, performing a successful time matching condition may include: matching conditions between the actual execution success time and the expected execution success time. For example, the actual execution success time matches the expected execution success time, and the actual execution success time satisfies the execution success time matching condition; and if the actual execution success time is not matched with the expected execution success time, the actual execution success time does not meet the execution success time matching condition.
According to embodiments of the present disclosure, the expected execution success time may refer to a theoretical execution success time of executing the task of sending the interactive message, for example, the expected execution success time is 11 points. The actual execution success time is 11:05.
According to the embodiment of the present disclosure, the determination manner of the match between the actual execution success time and the expected execution success time is similar to the determination manner of the match between the actual query time and the expected query time, and will not be described herein.
According to an embodiment of the present disclosure, the available resource value matching condition may include: matching conditions between the available resource values and the resource values to be compared. For example, if the available resource value is matched with the resource value to be compared, the available resource value meets the available resource value matching condition; and if the available resource value is not matched with the resource value to be compared, the available resource value does not meet the available resource value matching condition.
According to an embodiment of the present disclosure, the matching between the available resource value and the resource value to be compared may be understood as: the available resource value is the same as the resource value to be compared. Conversely, the mismatch between the available resource value and the resource value to be compared can be understood as: the available resource value is not the same as the resource value to be compared.
According to an embodiment of the present disclosure, the predetermined alert policy may include any one of an alert policy using a query time matching condition, an alert policy executing a success time matching condition, and an alert policy of an available resource value matching condition. But is not limited thereto, the predetermined reminding policy may further include any two or three of a reminding policy using a query time matching condition, a reminding policy executing a successful time matching condition, and a reminding policy of an available resource value matching condition.
For example, according to a predetermined alert policy, the determining matching conditions includes a query time matching condition, an execution success time matching condition, and an available resource value matching condition. The predetermined alert strategy includes: and under the condition that the actual query time of the candidate reminding object does not meet the query time matching condition, determining whether the actual execution success time meets the execution success time matching condition. And under the condition that the actual execution success time of the candidate reminding object is determined to meet the execution success time matching condition, determining the candidate reminding object as a target reminding object. And under the condition that the actual execution success time of the candidate reminding object is determined to not meet the execution success time matching condition, determining whether the available resource value meets the available resource value matching condition. And under the condition that the available resource value does not meet the available resource value matching condition, determining the candidate reminding object as a target reminding object. And under the condition that the available resource value meets the available resource value matching condition, determining whether the relation between the actual reminding moment and the target inquiring moment meets the preset condition. And under the condition that the available resource value is matched with the resource value to be compared and the relation between the actual reminding time and the target inquiring time meets the preset condition, determining that the candidate reminding object is the target reminding object.
According to an embodiment of the present disclosure, the predetermined reminder policy further includes: and under the condition that the actual query time of the candidate reminding object meets the query time matching condition, determining whether the available resource value meets the available resource value matching condition. And under the condition that the available resource value meets the available resource value matching condition, determining whether the relation between the actual reminding moment and the target inquiring moment meets the preset condition. And under the condition that the available resource value is matched with the resource value to be compared and the relation between the actual reminding time and the target inquiring time meets the preset condition, determining that the candidate reminding object is the target reminding object. And stopping operation under the condition that the available resource value is matched with the resource value to be compared and the relation between the actual reminding time and the target inquiring time does not meet the preset condition.
FIG. 3 schematically illustrates a flow chart for determining a targeted reminder object in accordance with another embodiment of the present disclosure.
As shown in fig. 3, the method 300 includes operations S301 to S308.
In operation S301, in response to detecting the message alert instruction, a candidate alert object is determined.
In operation S302, it is determined whether the actual query time matches the expected query time. In the case where it is determined that the actual query time does not match the expected query time, operation S303 is performed, and in the case where it is determined that the actual query time matches the expected query time, operation S304 is performed.
According to an embodiment of the present disclosure, determining that the actual query time does not match the expected query time may be understood as: and determining that the actual query time does not meet the query time matching condition. The query task may be initially determined to have a service failure problem or the candidate alert object may be an inactive user.
In operation S303, it is determined whether the actual execution success time matches the expected execution success time. In the case where it is determined that the actual execution success time matches the expected execution success time, operation S307 is performed. In case it is determined that the actual execution success time does not match the expected execution success time, operation S304 is performed.
According to an embodiment of the present disclosure, the actual execution success time matches the expected execution success time, which can be understood as: and determining that the actual execution success time meets the execution success time matching condition. It may be determined that the query task may be a service failure problem, excluding the possibility that the candidate alert object is an inactive user.
In operation S304, it is determined whether the available resource value matches the resource value to be compared. In case it is determined that the available resource value does not match the resource value to be compared, operation S307 is performed. In case it is determined that the available resource value matches the resource value to be compared, operation S305 is performed.
According to an embodiment of the present disclosure, determining that the available resource value does not match the resource value to be compared may be understood as: and determining that the available resource value does not meet the available resource value matching condition. It is determined that the candidate reminder object may have been used to supplement or consume the stored value card. The possibility that the candidate alert object is an inactive user is precluded. And determining that the candidate reminding object is a target reminding object.
In operation S305, it is determined whether there is an actual alert time. In the case where it is determined that there is an actual reminding time, operation S306 is performed. In the case where it is determined that there is no actual reminding time, operation S308 is performed.
In operation S306, it is determined whether the relationship between the actual reminding time and the target inquiring time satisfies a predetermined condition. In a case where it is determined that the relationship between the actual reminding time and the target inquiring time satisfies the predetermined condition, operation S307 is performed. In a case where it is determined that the relationship between the actual reminding time and the target inquiring time does not satisfy the predetermined condition, operation S308 is performed.
According to an embodiment of the present disclosure, the actual alert time characterizes an actual execution time of the predetermined alert task, the target alert time characterizes an actual execution time of the second predetermined alert task, the predetermined alert task characterizes a task of a first predetermined round for alerting an available resource value of the target alert object, the second predetermined alert task characterizes a task of a second predetermined round for querying an available resource value of the candidate alert object, the second predetermined round is a round after the first predetermined round.
According to an embodiment of the present disclosure, the relationship between the actual alert time and the target query time may include: the preset reminding task corresponding to the actual reminding moment is the task of the previous round of the preset inquiring task corresponding to the target inquiring moment or the preset reminding task corresponding to the actual reminding moment is the task of the previous rounds of the preset inquiring task corresponding to the target inquiring moment.
For example, the actual reminding time is 5 pm yesterday. The preset reminding task corresponding to the actual reminding moment is the second reminding task of yesterday. The target inquiry time is 10 am today: 51. the preset query task corresponding to the target query time is the first query task today. The two are adjacent rounds. And determining that the preset reminding task corresponding to the actual reminding moment is the task of the previous round of the preset inquiring task corresponding to the target inquiring moment.
And under the condition that the preset reminding task corresponding to the actual reminding moment is the task of the previous round of the preset inquiring task corresponding to the target inquiring moment, determining that the relation between the actual reminding moment and the target inquiring moment meets the preset condition.
According to the embodiment of the disclosure, the time when the last reminding task successfully runs is recorded, and when the current inquiring task is executed, the theoretical relationship between the time of the last reminding task and the time of the current inquiring task is compared, so that the situation that an inactive user is misjudged as an active user is avoided.
In operation S307, it is determined that the candidate reminder object is a target reminder object.
In operation S308, it is determined that the candidate reminder object is not the target reminder object.
According to the embodiment of the disclosure, the predetermined reminding strategy is utilized, so that the situation that the inactive user is determined to be the active user with the supplementary operation or the consumption operation due to the service failure problem is avoided, and the interactive message is sent to the active user to disturb the inactive user, and the use experience is improved.
According to an embodiment of the present disclosure, between operation S301 and operation S302 as shown in fig. 3, the following operations may also be performed. For example, a determination is made as to whether a stored value card of the candidate reminder object has a business record. In the case where it is determined that there is no service record, operation S307 is performed; in case it is determined that the service record exists, operation S302 is performed.
According to embodiments of the present disclosure, business records may be stored in a database in the form of logs. The business records may include one or more of available resource value records, consumption records, replenishment records, records of sending interactive messages to clients.
According to embodiments of the present disclosure, if the stored-value card does not have a business record, the stored-value card may be described as a newly transacted stored-value card. And determining the candidate reminding object holding the stored-value card as a target reminding object for the newly transacted stored-value card under the condition that the available resource value is lower than or equal to a first preset threshold value.
According to an embodiment of the present disclosure, after performing operation S230 as shown in fig. 2, transmitting an interactive message to a client corresponding to the target reminder object for a predetermined reminder period, the message processing method may further include the operations of: updating the actual execution success time corresponding to the target reminding object.
According to an embodiment of the present disclosure, updating the actual execution success time corresponding to the target reminder object may include: the latest actual execution success time is replaced with the actual execution success time of the history. The actual execution success time is not limited as long as the latest time is ensured.
According to the embodiment of the disclosure, the real-time performance of the real-time execution success time corresponding to the target reminding object can be ensured by updating the real-time execution success time corresponding to the target reminding object, so that the auxiliary reservation reminding strategy is facilitated, and the accuracy of determining the target reminding object from the candidate reminding objects is improved.
According to an embodiment of the present disclosure, after transmitting the interactive message to the client corresponding to the target reminder object for the predetermined reminder period in operation S230 as shown in fig. 2, the message processing method may further include the operations of: feedback information regarding the interactive message is received. Based on the feedback information, it is determined whether the interactive message was sent successfully.
According to the embodiment of the disclosure, in the case that the interactive message is determined to be unsuccessfully transmitted to the client corresponding to the target reminding object, in the case that the time difference between the actual execution failure time is determined to reach the second preset threshold, the interactive message is re-transmitted to the client corresponding to the target reminding object.
According to embodiments of the present disclosure, the interaction message may not be successfully transmitted to the client corresponding to the target reminder object due to network jitter, downstream service failure, or request timeout, etc.
According to the embodiment of the disclosure, when it is determined that the interactive message is not successfully transmitted to the client corresponding to the target reminding object, the actual execution failure time is recorded. And recording the time difference between the current time and the actual execution failure time. And under the condition that the time difference between the actual execution failure time and the actual execution failure time reaches a second preset threshold value, sending the interaction message to the client corresponding to the target reminding object again.
According to the embodiment of the disclosure, whether the interactive message is successfully sent or not can be determined by utilizing the feedback information, and the interactive message is sent again to the client corresponding to the target reminding object under the condition that the interactive message is not successfully sent to the client corresponding to the target reminding object. Multiple transmissions may be utilized to ensure that the interactive message transmission is successful.
According to the embodiment of the disclosure, the second predetermined threshold value can be utilized to control the transmission time interval between two adjacent interactive information. And when the successful sending of the interactive message is ensured, the sending frequency of the interactive message is controlled, and the operation of sending the interactive message is prevented from being frequently executed for a plurality of times.
According to the embodiment of the disclosure, the interactive message of the actual execution failure can be used as a task of the transmission failure, the task of the transmission failure is submitted to the delay task pool, and after the time difference between the actual execution failure time and the time of the actual execution failure is determined to reach the second preset threshold, the task of the transmission is re-executed, for example, the interactive message is re-transmitted to the client corresponding to the target reminding object, and the corresponding task log is configured.
According to an embodiment of the present disclosure, in a case where it is determined that the time difference between the actual execution failure time and the second predetermined threshold is reached, re-sending the interaction message to the client corresponding to the target reminder object may further include the following operations.
For example, the number of execution failures to send the interactive message is recorded. And when the execution failure times are less than or equal to a third preset threshold value, sending the interaction message to the client corresponding to the target reminding object again when the time difference between the actual execution failure times reaches the second preset threshold value. And stopping sending the interaction message to the client corresponding to the target reminding object under the condition that the execution failure times are determined to be larger than a third preset threshold value.
According to the embodiment of the disclosure, with the third predetermined threshold, the problem of resource waste caused by continuously sending the interactive message can be avoided under the condition that the successful sending of the interactive message cannot be realized even by repeatedly sending the interactive message.
According to embodiments of the present disclosure, the interactive message may include text, pictures, links, etc. for displaying the available resource values without interactive capability. But is not limited thereto, the interactive message may also include an interactive control. The interactive control may be a control for embodying an object interactive instruction. The interactive controls include one or more of buttons, input boxes, selection boxes, and the like.
According to embodiments of the present disclosure, an object may automatically perform interactive operations such as history queries, available resource value queries, and supplements using interactive controls. The interactive message can be a dynamic interactive message card, and corresponding message update can be generated according to the object interactive instruction.
Fig. 4 schematically illustrates an interactive message card schematic according to an embodiment of the present disclosure.
As shown in fig. 4, the interactive message may be presented in the form of an interactive message card 400. The interaction information divides includes, for example, a value "you's available resources value" for indicating the available resources value: in addition to the text of x ", a supplemental control may be included. The supplemental control may include a supplemental value selection box 401 and may also include a supplemental confirmation box 402.
According to the embodiment of the disclosure, the interactive message not only comprises a text or picture type message, but also comprises an interactive control, and when the available resource value is displayed, the interactive message provides the supplementary service, so that the situation that a target reminding object needs to return to operation, log in a supplementary interface and the like under the condition that the balance is insufficient and the target reminding object needs to be supplemented is avoided, and convenience of a user is improved.
According to an embodiment of the present disclosure, after the interactive message is transmitted to the client corresponding to the target reminder object in the predetermined reminder period in operation S230, the message processing method may further include the operations of: and in response to receiving the interactive operation of the target reminding object from the client, updating the interactive message according to the interactive operation.
According to the embodiment of the disclosure, after the client sees the interactive message, the target reminding object can perform interactive operation, such as supplementary interactive operation, by using the interactive control in the interactive message. The server may update the interaction message according to the interaction in response to receiving the interaction from the target reminder object of the client. For example, the available resource values in the interaction message are updated.
According to the embodiment of the disclosure, the interactive information is updated in response to the receiving of the interactive operation of the target reminding object from the client, so that the available resource value of the target reminding object can be updated in real time, and the instantaneity and the safety of the available resource are ensured.
According to an embodiment of the present disclosure, after operation S230 as shown in fig. 2, the message processing method may further include the operations of: and adding the target reminding object to the gray scale test object set under the condition that the target reminding object is determined to be the preset gray scale test object. The gradation test object set is an object set for performing gradation test.
According to embodiments of the present disclosure, gray scale testing may refer to a small flow verification test performed by a predetermined version of an application program before it is online. The predetermined version of the application may refer to an application for processing an upgraded version of the message processing method of the embodiments of the present disclosure. The effect of the business services provided by the predetermined version of the application may be determined by gray scale testing.
According to embodiments of the present disclosure, object filtering rules may be preset. And determining whether the target reminding object is a preset gray scale test object based on the object screening rule. The object screening rules may include: liveness rules, available resource numerical rules, and other object attribute rules. The liveness rule may include: and determining that the target reminding object is a preset gray scale test object under the condition that the activity degree of the target reminding object is higher than a preset activity degree threshold value. And otherwise, determining that the target reminding object is a non-preset gray scale test object. The available resource numerical rules may include: and under the condition that the available resource value is larger than the preset resource threshold value, determining that the target reminding object is a preset gray scale test object. And otherwise, determining that the target reminding object is a non-preset gray scale test object. And adding the target reminding object into the gray test object set under the condition that the target reminding object is determined to be the preset gray test object. And carrying out gray level test on the objects in the gray level test object set according to the gray level test object set. In order to collect feedback from objects in the greyscale test object set and determine the greyscale test effect based on the feedback.
According to the embodiment of the disclosure, the predetermined gray test object can be determined from the target reminding object, and the gray test can be performed, so that the gray test effect is representative and the accuracy of the gray test result is improved while the data quantity of the gray test set is controlled to be small and the processing quantity is reduced.
According to another embodiment of the present disclosure, a message processing method may be applied to a server group. The server group includes a plurality of servers. The plurality of servers can simultaneously execute the message processing method with each other, thereby avoiding the problem that the message processing method is not executable because a single server fails. To avoid multiple servers executing a reminder task for the same target reminder object at the same time, a distributed lock mechanism may be used to determine a target server from among the multiple servers to execute the reminder task for the target reminder object. Meanwhile, in the task, in order to avoid the situation that the whole reminding task fails due to faults when the reminding task of a certain target reminding object is processed, the execution logic between the target reminding object and the target reminding object can be separated.
In the technical scheme of the disclosure, the related processes of collecting, storing, using, processing, transmitting, providing, disclosing and the like of the personal information of the user accord with the regulations of related laws and regulations, and the public order colloquial is not violated.
Fig. 5 schematically shows a block diagram of a message processing apparatus according to an embodiment of the present disclosure.
As shown in fig. 5, the message processing apparatus 500 includes: a response module 510, a generation module 520, and a transmission module 530.
And a response module 510, configured to determine a candidate alert object in response to detecting the message alert instruction. Candidate alert objects are objects having an available resource value less than or equal to a first predetermined threshold.
The generating module 520 is configured to generate an interaction message corresponding to the target reminding object according to the available resource value when it is determined that the candidate reminding object is the target reminding object according to the predetermined reminding policy. The predetermined reminder policy is used to determine whether the candidate reminder object is a target reminder object.
And the sending module 530 is configured to send the interaction message to the client corresponding to the target reminding object in the predetermined reminding period, so that the client displays the interaction message.
According to an embodiment of the present disclosure, the generating module includes: the first determining sub-module, the second determining sub-module and the generating sub-module.
And the first determining submodule is used for determining the matching condition according to a preset reminding strategy. The matching condition includes at least one of: inquiring a time matching condition, an execution success time matching condition and an available resource numerical value matching condition.
And the second determining submodule is used for determining the candidate reminding objects meeting the matching condition as target reminding objects.
And the generation sub-module is used for generating the interaction message corresponding to the target reminding object according to the available resource value.
According to an embodiment of the present disclosure, in case it is determined that the actual query time does not match the expected query time, the second determination submodule comprises: a first determination unit and a second determination unit.
And the first determining unit is used for determining that the candidate reminding object is the target reminding object under the condition that the actual execution success time is matched with the expected execution success time.
A second determining unit, configured to determine that the candidate reminding object is a target reminding object when it is determined that the available resource value does not match the resource value to be compared in the case that it is determined that the actual execution success time does not match the expected execution success time,
According to an embodiment of the present disclosure, the actual query time characterizes an actual execution time of the first predetermined query task, the expected query time characterizes a theoretical execution time of the first predetermined query task, and the first predetermined query task characterizes a first predetermined round of tasks for querying available resource values of the candidate reminder object.
According to an embodiment of the present disclosure, in a case where it is determined that the actual query time matches the expected query time, the message processing apparatus further includes: the first determining module and the second determining module.
And the first determining module is used for determining that the candidate reminding object is a target reminding object under the condition that the available resource value is not matched with the resource value to be compared.
A second determining module, configured to determine that the candidate reminding object is a target reminding object when it is determined that the available resource value matches the resource value to be compared and the relationship between the actual reminding time and the target query time satisfies a predetermined condition,
According to an embodiment of the disclosure, the actual reminding time characterizes an actual execution time of the predetermined reminding task, the target querying time characterizes an actual execution time of the second predetermined querying task, the predetermined reminding task characterizes a task of a first predetermined round for reminding an available resource value of the target to the reminding object, the second predetermined querying task characterizes a task of a second predetermined round for querying an available resource value of the candidate reminding object, the second predetermined round is a round after the first predetermined round.
According to an embodiment of the present disclosure, the message processing apparatus further includes: and adding a module.
And the adding module is used for adding the target reminding object to a gray test object set under the condition that the target reminding object is determined to be a preset gray test object, wherein the gray test object set is an object set for gray test.
According to an embodiment of the present disclosure, the message processing apparatus further includes: a first update module.
And the first updating module is used for updating the actual execution success time corresponding to the target reminding object.
According to an embodiment of the present disclosure, in a case where it is determined that the interactive message is not successfully transmitted to the client corresponding to the target reminder object, the message processing apparatus further includes: and (5) retransmitting the module.
And the retransmission module is used for retransmitting the interaction message to the client corresponding to the target reminding object under the condition that the time difference between the actual execution failure moment and the actual execution failure moment reaches a second preset threshold value.
According to an embodiment of the present disclosure, in a case where it is determined that the number of execution failures is less than or equal to a third predetermined threshold, the retransmission module includes: and a retransmission unit.
And the retransmission unit is used for retransmitting the interaction message to the client corresponding to the target reminding object under the condition that the time difference between the actual execution failure moment and the actual execution failure moment reaches a second preset threshold value.
According to an embodiment of the present disclosure, the message processing apparatus further includes: and a second updating module.
And the second updating module is used for responding to the received interactive operation of the target reminding object from the client and updating the interactive message according to the interactive operation.
According to an embodiment of the present disclosure, the interaction message includes an interaction control.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
According to an embodiment of the present disclosure, an electronic device includes: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executable by the at least one processor to enable the at least one processor to perform the method as described above.
According to an embodiment of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method as described above.
According to an embodiment of the present disclosure, a computer program product comprising a computer program which, when executed by a processor, implements a method as described above.
Fig. 6 schematically illustrates a block diagram of an electronic device adapted to implement a message processing method according to an embodiment of the disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 6, the electronic device 600 includes a computing unit 601 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM) 602 or a computer program loaded from a storage unit 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic device 600 can also be stored. The computing unit 601, ROM 602, and RAM 603 are connected to each other by a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
A number of components in the electronic device 600 are connected to the I/O interface 605, including: an input unit 606 such as a keyboard, mouse, etc.; an output unit 607 such as various types of displays, speakers, and the like; a storage unit 608, such as a magnetic disk, optical disk, or the like; and a communication unit 609 such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows the electronic device 600 to exchange information/data with other devices through a computer network, such as the internet, and/or various telecommunication networks.
The computing unit 601 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 601 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 601 performs the various methods and processes described above, such as a message processing method. For example, in some embodiments, the message processing method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 600 via the ROM 602 and/or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the message processing method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform the message processing method in any other suitable way (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), complex Programmable Logic Devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), and the internet.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server incorporating a blockchain.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel or sequentially or in a different order, provided that the desired results of the technical solutions of the present disclosure are achieved, and are not limited herein.
The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.