Service message pushing method and device, equipment, storage medium and program product

By querying the login status of the user terminal device and selecting an appropriate push channel, the problem of delay or loss of message push in the prior art is solved, and a more efficient message arrival rate is achieved.

CN119996505APending Publication Date: 2025-05-13BIGO TECH PTE LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510144436.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-10
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

The prior art cannot adapt to user's different login status to push messages, resulting in delay or loss of message push, and the arrival rate of service messages cannot be guaranteed.

Method used

By obtaining the target user ID and the service message to be sent, query the user login status of the target terminal device. If online, establish a connection to send a message; if offline, query the user channel database to obtain the available push channels, and send the message to the corresponding push server.

Benefits of technology

It realizes that different message push channels are deployed for users with different login status, efficiently integrating multiple message push channels, and improving the message arrival rate of business applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119996505A_ABST
    Figure CN119996505A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a service message pushing method and device, equipment, a storage medium and a program product, and the method comprises the steps: obtaining a target user identifier and a to-be-sent first service message, querying a user login state of a corresponding target terminal device according to the target user identifier, and pushing the to-be-sent first service message to the target terminal device when the user login state is online. Establishing a connection with a target terminal device, sending a first service message to the target terminal device, when the user login state is offline, querying from a set user channel database according to the target user identifier to obtain at least one first candidate channel identifier, and sending the at least one first candidate channel identifier to the target terminal device; and determining a first target channel identifier from the at least one first candidate channel identifier, and sending the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device. According to the scheme, the message arrival rate of the service application can be remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of computer technology, and in particular, to a method, apparatus, device, storage medium, and program product for pushing a business message. Background Art

[0002] With the rapid development of Internet technology, various business applications have gradually enriched people's daily lives and improved work efficiency and service quality. Among them, message push is an important function of business applications, which can not only push the latest developments and important information of business applications to users, but also recommend personalized content and experience feedback to users, which is conducive to improving user experience, enhancing user stickiness and promoting product activity.

[0003] In the related technology, the message push of business applications depends on online push channels, and the user must be logged in online before the business messages can be pushed to the user's terminal device. It cannot adapt to the different login states of users for message push, and is prone to message push delays or losses, and cannot guarantee the message arrival rate of business applications. Summary of the invention

[0004] The embodiments of the present application provide a business message push method, apparatus, equipment, storage medium and program product, which solve the problems that the related technology cannot adapt to the different login states of users for message push, is prone to message push delays or losses, and cannot guarantee the arrival rate of business messages. It realizes the deployment of different message push channels for users with different login states, efficiently integrates multiple message push methods for message push, and improves the message arrival rate of business applications.

[0005] In a first aspect, an embodiment of the present application provides a service message push method, the method comprising:

[0006] Obtaining a target user identifier and a first service message to be sent, and querying a user login status of a corresponding target terminal device according to the target user identifier;

[0007] When the user login status is online, establishing a connection with the target terminal device and sending the first service message to the target terminal device;

[0008] When the user login status is offline, querying from a set user channel database according to the target user identifier to obtain at least one first candidate channel identifier, where the first candidate channel identifier represents an available push channel corresponding to the target terminal device and provided by a candidate push server;

[0009] A first target channel identifier is determined from the at least one first candidate channel identifier, and the first service message and the first target channel identifier are sent to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0010] In a second aspect, an embodiment of the present application further provides a service message push device, the device comprising:

[0011] A login status determination module, configured to obtain a target user identifier and a first service message to be sent, and query a user login status of a corresponding target terminal device according to the target user identifier;

[0012] A first message push module, configured to establish a connection with the target terminal device and send the first service message to the target terminal device when the user login status is online;

[0013] a channel identification determination module configured to, when the user login state is offline, query at least one first candidate channel identification from a set user channel database according to the target user identification, wherein the first candidate channel identification represents an available push channel corresponding to the target terminal device and provided by the candidate push server;

[0014] The second message push module is configured to determine a first target channel identifier from the at least one first candidate channel identifier, and send the first business message and the first target channel identifier to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device.

[0015] In a third aspect, an embodiment of the present application further provides a service message push device, the device comprising:

[0016] one or more processors;

[0017] a storage device configured to store one or more programs,

[0018] When the one or more programs are executed by the one or more processors, the one or more processors implement the service message pushing method described in the embodiment of the present application.

[0019] In a fourth aspect, an embodiment of the present application further provides a non-volatile storage medium storing computer executable instructions, wherein the computer executable instructions, when executed by a computer processor, are configured to execute the service message push method described in the embodiment of the present application.

[0020] In the fifth aspect, an embodiment of the present application also provides a computer program product, which includes a computer program, which is stored in a computer-readable storage medium, and at least one processor of the device reads and executes the computer program from the computer-readable storage medium, so that the device executes the business message push method described in the embodiment of the present application.

[0021] In an embodiment of the present application, by obtaining a target user identifier and a first business message to be sent, the user login status of the corresponding target terminal device is queried according to the target user identifier, and when the user login status is online, a connection is established with the target terminal device, and the first business message is sent to the target terminal device. When the user login status is offline, at least one first candidate channel identifier is queried from a set user channel database according to the target user identifier, and a first target channel identifier is determined from the at least one first candidate channel identifier, and the first business message and the first target channel identifier are sent to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device. In the above scheme, by querying the user login status of the corresponding target terminal device according to the target user identifier, the current user login status can be effectively determined. When the user login status is online, the first business message can be sent by establishing a long connection with the target terminal device, and the corresponding long connection channel can be effectively deployed for the active logged-in users who are online. When the user login status is offline, the first business message and the first target channel identifier can be sent to the first target push server corresponding to the determined first target channel identifier, so that the first target push server sends the first business message to the target terminal device, and the corresponding third-party push channel is effectively deployed for inactive users who are offline. Multiple message push channels are efficiently integrated for message push, thereby improving the message arrival rate of business applications. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 A flowchart of a method for pushing business messages provided in an embodiment of the present application;

[0023] Figure 2 A flowchart of a service message push method including a process of resending a service message in response to a message pull request provided in an embodiment of the present application;

[0024] Figure 3 A flowchart of a service message push method including a process of replacing a target push server to send service messages provided in an embodiment of the present application;

[0025] Figure 4 A flowchart of a method for pushing a business message including a process for updating a candidate channel identifier provided in an embodiment of the present application;

[0026] Figure 5 A flowchart of a service message pushing method including a process of resending a first service message provided in an embodiment of the present application;

[0027] Figure 6 A flowchart of a service message push method including a process of processing a first service message provided in an embodiment of the present application;

[0028] Figure 7 A flowchart of another method for pushing a service message including a process of processing a first service message provided in an embodiment of the present application;

[0029] Figure 8 A schematic diagram of a process of pushing messages using a service message push method of a message push system provided in an embodiment of the present application;

[0030] Fig. 9 A schematic diagram of a process of pulling messages using a service message push method of a message push system provided in an embodiment of the present application;

[0031] Fig.10 A schematic diagram of a process for confirming a message using a service message push method of a message push system provided in an embodiment of the present application;

[0032] Fig.11 A schematic diagram of a process of resending a message using a service message push method of a message push system provided in an embodiment of the present application;

[0033] Fig.12 A schematic diagram of a process of multi-channel push using a service message push method of a message push system provided in an embodiment of the present application;

[0034] Fig.13 A schematic diagram of a process of updating a push channel by applying a service message push method to a message push system provided in an embodiment of the present application;

[0035] Fig.14 A schematic diagram of a process of updating multiple push channels using a service message push method of a message push system provided in an embodiment of the present application;

[0036] Fig.15 A structural block diagram of a service message push device provided in an embodiment of the present application;

[0037] Fig.16 A structural diagram of a business message push device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0038] The embodiments of the present application are further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the embodiments of the present application, rather than to limit the embodiments of the present application. It should also be noted that, for ease of description, only parts related to the embodiments of the present application are shown in the accompanying drawings, rather than all structures.

[0039] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.

[0040] The service message push method provided in the embodiment of the present application can adapt to the different user login states of the terminal device to select the corresponding available push channel for service message push, thereby ensuring the message arrival rate of the service application. The relevant application scenarios include network operation activities, live webcasts, short videos, and instant messaging, etc. The aforementioned application scenarios are only exemplary and explanatory. In actual applications, the service message push method can also be used in service message push in other scenarios, and the embodiment of the present application does not limit this.

[0041] In the service message push method provided in the embodiment of the present application, the executor of each step can be a computer device, which refers to any electronic device with data calculation, processing and storage capabilities, such as a server and other devices, and the embodiment of the present application does not limit this.

[0042] Figure 1 The flowchart of a service message push method provided in the embodiment of the present application. The execution subject of the service message push method can be a server, such as Figure 1 As shown, the following steps are included:

[0043] Step S101: Obtain a target user identifier and a first service message to be sent, and query the user login status of the corresponding target terminal device according to the target user identifier.

[0044] The target user identifier may be a target user who needs to receive the first service message, and the first service message may be the latest dynamic content, personalized recommendation content, etc. related to service applications such as live webcasts, short videos, and instant messaging. Based on the target user identifier, the associated target terminal device can be queried to obtain the user login status of the target terminal device. If the target terminal device is currently running a service application and the user has completed the login operation, the user login status obtained by the query is online. If the target terminal device is not currently running a service application or the user has not completed the login operation, the user login status obtained by the query is offline.

[0045] Step S102: When the user login status is online, establish a connection with the target terminal device and send a first service message to the target terminal device.

[0046] Among them, if the user's login status is online, a connection can be established with the target terminal device, which is equivalent to building a long connection channel between the server and the target terminal device. The server can maintain the validity of the long connection channel to send the first business message to the target terminal device in real time, and the first business message can be displayed to the user in the business application. This long connection channel is mainly deployed for active logged-in users and can have a higher message arrival rate.

[0047] Step S103: when the user login status is offline, query at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0048] Among them, if the user login status is offline, the first candidate channel identifier corresponding to the target user identifier can be queried from the user channel database. The first candidate channel identifier represents the available push channel corresponding to the target terminal device provided by the candidate push server. It is specifically generated by the candidate push server when the user registers the terminal device or connects for the first time, and is fed back to the current server for storage in the user channel database. The available push channel is a third-party push channel provided by different third-party mobile services. It can directly establish a connection with the terminal device for message push. It is mainly deployed for inactive users and can further ensure the message arrival rate.

[0049] Step S104: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0050] In one embodiment, a first candidate channel identifier is obtained by querying from the user channel database, and the first candidate channel identifier can be directly determined as the first target channel identifier. In one embodiment, multiple first candidate channel identifiers are obtained by querying from the user channel database, and the first candidate channel identifier with the highest priority or the highest frequency of use can be determined as the target channel identifier from the multiple first candidate channel identifiers. The priority indicates the priority order of use of multiple first candidate channel identifiers, which can be set by the developer based on the business needs of the specific application scenario. The frequency of use indicates the frequency of use of multiple first candidate channel identifiers within a preset time range, which can reflect the channel selection preference of the actual application scenario, and then select the optional push channel that meets the business needs or usage preferences. By sending the first business message and the first target channel identifier to the corresponding first target push server, the first target push server can verify the user identity based on the first target channel identifier, and after completing the verification, connect with the target terminal device, and send the first business message to the target terminal device, so that the first business message is displayed on the target terminal device in a notification or other preset manner, without the need for the business application to run or the user to log in online, and complete the message push in the offline state.

[0051] In the above, by obtaining the target user identifier and the first business message to be sent, the user login status of the corresponding target terminal device is queried according to the target user identifier, and when the user login status is online, a connection is established with the target terminal device, and the first business message is sent to the target terminal device. When the user login status is offline, at least one first candidate channel identifier is queried from the set user channel database according to the target user identifier, and the first target channel identifier is determined from the at least one first candidate channel identifier, and the first business message and the first target channel identifier are sent to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device. In the above scheme, by querying the user login status of the corresponding target terminal device according to the target user identifier, the current user login status can be effectively determined. When the user login status is online, the first business message can be sent by establishing a long connection with the target terminal device, and the corresponding long connection channel can be effectively deployed for the active logged-in users who are online. When the user login status is offline, the first business message and the first target channel identifier can be sent to the first target push server corresponding to the determined first target channel identifier, so that the first target push server sends the first business message to the target terminal device, and the corresponding third-party push channel is effectively deployed for inactive users who are offline. Multiple message push channels are efficiently integrated for message push, thereby improving the message arrival rate of business applications.

[0052] Figure 2A flowchart of a service message push method including a process of resending a service message in response to a message pull request is provided in an embodiment of the present application, such as Figure 2 As shown, the following steps are included:

[0053] Step S201: Obtain a target user identifier and a first service message to be sent, and query the user login status of the corresponding target terminal device according to the target user identifier.

[0054] Step S202: When the user login status is online, establish a connection with the target terminal device.

[0055] Step S203: Send a first service message to the target terminal device.

[0056] Step S204: upon receiving a message pull request sent by the target terminal device, query the set user message database to obtain a second service message associated with the target user identifier, and send the second service message to the target terminal device.

[0057] Among them, the user message database is used to store sent business messages that cannot be successfully pushed to the terminal device. For the target terminal device, if it is detected that the user in the business application has completed the login operation, a message pull request can be actively initiated so that the server can resend the sent business message that cannot be successfully pushed. If the server receives a message pull request sent by the target terminal device, it can query the sent business messages in the user message database based on the target user identifier, obtain the second business message associated with the target user identifier, and send the second business message to the target terminal device to achieve the purpose of re-issuing the message.

[0058] Step S205: upon receiving the second confirmation message fed back by the target terminal device, delete the second service message from the user message database.

[0059] Among them, after sending the second service message to the target terminal device, if a second confirmation message is received from the target terminal device, it can be regarded that the second service message has been successfully pushed to the target terminal device, and the second service message can be deleted from the user message database to avoid subsequent repeated sending.

[0060] Step S206: When the user login status is offline, query and obtain at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0061] Step S207: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0062] As mentioned above, by utilizing the user message database to cache the sent business messages that cannot be pushed successfully due to network reasons, and when the user logs in online again, the first business message is sent in response to the message pull request sent by the target terminal device, the loss of the first business message can be avoided and the overall delivery rate and effectiveness of the business messages can be improved.

[0063] Figure 3 A flowchart of a business message push method including a process of replacing a target push server to send a business message is provided in an embodiment of the present application, wherein the number of first candidate channel identifiers is multiple, such as Figure 3 As shown, the following steps are included:

[0064] Step S301: Obtain a target user identifier and a first service message to be sent, and query the user login status of the corresponding target terminal device according to the target user identifier.

[0065] Step S302: When the user login status is online, establish a connection with the target terminal device and send a first service message to the target terminal device.

[0066] Step S303: when the user login status is offline, query and obtain at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0067] Step S304: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0068] Step S305: upon receiving a push failure message fed back by the first target push server, determining a second target channel identifier from other candidate channel identifiers among the plurality of first candidate channel identifiers except the first target channel identifier.

[0069] Among them, some target terminal devices can support multiple different third-party push channels and connect to different push servers to receive business messages. Therefore, the number of first candidate channel identifiers obtained by querying based on their corresponding target user identifiers can be multiple. Since the connection between the target terminal device and the first target push server may be disconnected, or the first target push server may fail, etc., the server will receive a push failure message fed back by the first target push server, which can be regarded as the first business message cannot continue to be sent through the push channel provided by the first target push server. Therefore, the second target channel identifier can be re-determined from other candidate channel identifiers other than the first target channel identifier among the multiple first candidate channel identifiers. Specifically, a candidate channel identifier with a higher priority or a higher frequency of use can be selected as the second target channel identifier to continue sending the first business message.

[0070] Step S306: Send the first service message and the second target channel identifier to a second target push server corresponding to the second target channel identifier, so that the second target push server sends the first service message to the target terminal device.

[0071] Among them, by sending the first business message and the second target channel identifier to the corresponding second target push server, the second target push server can verify the user identity based on the second target channel identifier, and connect with the target terminal device after completing the verification, and send the first business message to the target terminal device, so that the first business message is displayed on the target terminal device in the form of a notification or other preset method, without the need for the business application to run or the user to log in online, to complete the message push in an offline state.

[0072] As described above, by adopting a multi-channel retry method, a chain call is implemented between multiple available first candidate channel identifiers. When the first target push server corresponding to the first target channel identifier fails to push the first business message successfully, it can continue to be resent through the second target push server corresponding to the second target channel identifier, thereby ensuring the necessary retry of the business message push while providing a low-cost and low-complexity retry process.

[0073] Figure 4 A flowchart of a service message push method including a process of updating a candidate channel identifier is provided in an embodiment of the present application, such as Figure 4 As shown, the following steps are included:

[0074] Step S401: Obtain a target user identifier and a first service message to be sent, and query the user login status of the corresponding target terminal device according to the target user identifier.

[0075] Step S402: When the user login status is online, establish a connection with the target terminal device.

[0076] Step S403: Send a first service message to the target terminal device.

[0077] Step S404: upon receiving a channel update request sent by the target terminal device, extract at least one second candidate channel identifier from the channel update request.

[0078] Among them, for the target terminal device, if it is detected that the user in the business application has completed the login operation, one or more third-party push channels it supports may be unable to connect and decrease, or restore the connection and increase. Therefore, in order to ensure the timeliness and accuracy of the candidate channel identification, the push server that can be connected can be requested to obtain the candidate channel identification at a preset time interval, and the push server can feedback the latest candidate channel identification to the target terminal device. In this embodiment, the target terminal device can obtain one or more second candidate channel identifications corresponding to the available push channels, and send a channel update request containing at least one second candidate channel identification to the server.

[0079] Step S405: Replace the first candidate channel identifier associated with the target user identifier in the user channel database with the second candidate channel identifier.

[0080] Step S406: When the user login status is offline, query and obtain at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0081] Step S407: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0082] As described above, by replacing the first candidate channel identifier associated with the target user identifier in the user channel database with the second candidate channel identifier, the candidate channel identifier corresponding to the third-party push channel currently supported by the target terminal device can be updated in time when the user logs in online, adapting to the dynamic changes of the third-party push channel and ensuring the timeliness and security of the candidate channel identifier.

[0083] Figure 5 A flowchart of a service message push method including a process of resending a first service message is provided in an embodiment of the present application, such as Figure 5 As shown, the following steps are included:

[0084] Step S501: Obtain a target user identifier and a first service message to be sent, and query the user login status of the corresponding target terminal device according to the target user identifier.

[0085] Step S502: When the user login status is online, establish a connection with the target terminal device and send a first service message to the target terminal device.

[0086] Step S503: when the first confirmation message corresponding to the first service message is not received within the preset time interval, at least one first candidate channel identifier is obtained from the set user channel database according to the target user identifier, and the first target channel identifier is determined from the at least one first candidate channel identifier.

[0087] The preset time interval can be set by the developer according to the business requirements of the actual application scenario, for example, 20s, 30s, etc. If the first confirmation message corresponding to the first business message is not received within the preset time interval, it can be regarded as a possible network anomaly and other problems, and the first business message cannot be delivered to the target terminal device through the current long connection channel, and the message can be pushed through a third-party push channel.

[0088] Step S504: Send the first service message and the first target channel identifier to the corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0089] Step S505: when the user login status is offline, query and obtain at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0090] Step S506: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0091] As mentioned above, by confirming whether the first confirmation message corresponding to the first business message is received within the preset time interval, it can be determined whether there is network delay or information loss in the long connection channel established between the server and the target terminal device. If the first confirmation message corresponding to the first business message is not received within the preset time interval, timely switching to a third-party push channel can effectively deal with abnormal situations in the long connection channel and improve the push success rate of the first business message.

[0092] Figure 6 A flowchart of a service message push method including a process of processing a first service message is provided in an embodiment of the present application, such as Figure 6 As shown, the following steps are included:

[0093] Step S601: Obtain a target user identifier and a first service message to be sent, and associate the target user identifier and the first service message and store them in a set user message database.

[0094] The target user identifier and the first service message are associated and stored in a set user message database, which can be used to re-push the first service message when the push of the first service message fails.

[0095] Step S602: query the user login status of the corresponding target terminal device according to the target user identifier.

[0096] Step S603: When the user login status is online, establish a connection with the target terminal device, and send a first service message to the target terminal device.

[0097] Step S604: upon receiving the first confirmation message fed back by the target terminal device, delete the first service message from the user message database.

[0098] If the first confirmation message fed back by the target terminal device is received, it can be regarded that the first service message is successfully pushed to the target terminal device, and the first service message can be deleted from the user message database to avoid the subsequent repeated delivery of the first service message. If the first confirmation message fed back by the target terminal device is not received, the first service message can be extracted from the user message database and continued to be delivered through the current long connection channel, or delivered through a third-party push channel instead.

[0099] Step S605: When the user login status is offline, query and obtain at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0100] Step S606: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0101] As mentioned above, by associating the target user identifier and the first business message and storing them in the set user message database, the first business message can be effectively cached, and the first business message can be deleted or retained based on whether the first confirmation message fed back by the target terminal device is received, thereby avoiding the loss of the first business message and ensuring the message arrival rate.

[0102] Figure 7 A flowchart of another method for pushing a service message including a process of processing a first service message provided in an embodiment of the present application is shown in FIG. Figure 7 As shown, the following steps are included:

[0103] Step S701: Obtain a target user identifier and a first service message to be sent, and associate the target user identifier and the first service message and store them in a set user message database.

[0104] The target user identifier and the first service message are associated and stored in a set user message database, which can be used to re-push the first service message when the push of the first service message fails.

[0105] Step S702: query the user login status of the corresponding target terminal device according to the target user identifier.

[0106] Step S703: When the user login status is online, establish a connection with the target terminal device, and send a first service message to the target terminal device.

[0107] Step S704: when the user login status is offline, query and obtain at least one first candidate channel identifier from a set user channel database according to the target user identifier.

[0108] Step S705: determine a first target channel identifier from at least one first candidate channel identifier, and send the first service message and the first target channel identifier to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0109] Step S706: upon receiving a push success message fed back by the first target push server, delete the first service message from the user message database.

[0110] If a push success message is received from the first target push server, it can be considered that the first service message is successfully pushed to the target terminal device, and the first service message can be deleted from the user message database to avoid repeated delivery of the first service message in the future. If a push success message is not received from the first target push server, it can be delivered when the user logs back online, or other third-party push channels can be used for delivery.

[0111] As described above, by associating the target user identifier and the first business message and storing them in the set user message database, the first business message can be effectively cached, and the first business message can be deleted or retained based on whether a push success message fed back by the first target push server is received, thereby avoiding the loss of the first business message and ensuring the message arrival rate.

[0112] Figure 8 A schematic diagram of a message push process using a service message push method for a message push system provided in an embodiment of the present application, such as Figure 8As shown, the message push system includes a business service 101, a push access service 102, a user status service 103, a push status service 104, a push scheduling service 105, a user access service 106, a first push channel service 107, a second push channel service 108, a third push channel service 109, a user message database 110 and a user channel database 111. The aforementioned multiple services and databases can be deployed on the same server or different servers, and this application is not limited to this. Each service can correspondingly execute some steps of the business message push method provided in the embodiment of the present application. The business service 101 can send data such as the target user identifier and the first business message to be sent to the push access service 102 through a universal service interface. The push access service 102 can associate the target user identifier and the first business message and store them in the user message database 110. The push access service 102 can also send the target user identifier and the first business message to the push status service 104. The push access service 102 can send the target user identifier to the user status service 103. The user status service 103 can query the user login status of the corresponding target terminal device according to the target user identifier and return it to the push access service 102. If the user login status is online, the push access service 102 can send the target user identifier and the first business message to the user access service 106, and the user access service 106 can establish a connection with the target terminal device according to the target user identifier, and send the first business message to the first target terminal device 204, the second target terminal device 205 or the third target terminal device 206. If the user login status is offline, the push access service 102 can send the target user identifier and the first business message to the push scheduling service 105, and the push scheduling service 105 can query and obtain at least one first candidate channel identifier from the set user channel database 111 according to the target user identifier, and determine the first target channel identifier from the at least one first candidate channel identifier, and connect the first target channel identifier to the corresponding The service of the third-party push channel may be the first push channel service 107, the second push channel service 108, or the third push channel service 109. For example, the service of the third-party push channel corresponding to the first target channel identifier is the first push channel service 107. The push scheduling service 105 may send the target user identifier, the first business message, and the first target channel identifier to the first push channel service 107. The first push channel service 107 may send the first business message and the first target channel identifier to the corresponding first target push server 201 according to the set push protocol. The first target push server 201 may determine that the corresponding terminal device is the first target terminal device 204 according to the first target channel identifier, and send the first business message to the first target terminal device 204.In addition, if the service of the third-party push channel corresponding to the first target channel identifier is the second push channel service 108, the second push channel service 108 can send the first business message and the first target channel identifier to the corresponding second target push server 202 according to the set push protocol, the second target push server 202 can determine that the corresponding terminal device is the second target terminal device 205 according to the first target channel identifier, and send the first business message to the second target terminal device 205. If the service of the third-party push channel corresponding to the first target channel identifier is the third push channel service 109, the third push channel service 109 can send the first business message and the first target channel identifier to the corresponding third target push server 203 according to the set push protocol, the third target push server 203 can determine that the corresponding terminal device is the third target terminal device 206 according to the first target channel identifier, and send the first business message to the third target terminal device 206. Among them, the same terminal device can also support multiple third-party push channels, which is not limited in this application.

[0113] Fig. 9 A schematic diagram of a process of pulling messages using a service message push method in a message push system provided in an embodiment of the present application, in Figure 8 On the basis of Fig. 9 As shown, the first target terminal device 204, the second target terminal device 205 or the third target terminal device 206 can send a message pull request containing the target user identifier to the user access service 106 when the user login status becomes online, and the user access service 106 can forward the message pull request to the push access service 102, and the push access service 102 obtains the second business message associated with the target user identifier from the set user message database 110, and the push access service 102 can feed back the second business message to the user access service 106, and the user access service 106 can send the second business message to the first target terminal device 204, the second target terminal device 205 or the third target terminal device 206 accordingly.

[0114] Fig.10 A schematic diagram of a message push system application service message push method for message confirmation provided in an embodiment of the present application, in Figure 8 On the basis of Fig.10 As shown, after receiving the first business message, the first target terminal device 204, the second target terminal device 205 or the third target terminal device 206 can send a first confirmation message containing the target user identifier to the user access service 106, and the user access service 106 can forward the first confirmation message to the push access service 102. The push access service 102 can delete the first business message from the user message database 110 based on the target user identifier in the first confirmation message.

[0115] Fig.11 A schematic diagram of a message push system application service message push method for message resending provided in an embodiment of the present application, in Figure 8 On the basis of Fig.11 As shown, the push status service 104 can check the push status of the first business message. If the first confirmation message corresponding to the first business message is not received within the preset time interval, a retransmission request including the first business message and the target user identifier can be sent to the push scheduling service 105. The push scheduling service 105 can query and obtain at least one first candidate channel identifier from the set user channel database 111 according to the target user identifier, and determine the first target channel identifier from the at least one first candidate channel identifier. The service for connecting to the third-party push channel corresponding to the first target channel identifier can be the first push channel service 107, the second push channel service 108, or the third push channel service 109. The push channel service 109, for example, the service of the third-party push channel corresponding to the first target channel identifier is the first push channel service 107, the push scheduling service 105 can send the target user identifier, the first business message and the first target channel identifier to the first push channel service 107, the first push channel service 107 can send the first business message and the first target channel identifier to the corresponding first target push server 201 according to the set push protocol, the first target push server 201 can determine that the corresponding terminal device is the first target terminal device 204 according to the first target channel identifier, and send the first business message to the first target terminal device 204. In addition, if the service of the third-party push channel corresponding to the first target channel identifier is the second push channel service 108, the second push channel service 108 can send the first business message and the first target channel identifier to the corresponding second target push server 202 according to the set push protocol, the second target push server 202 can determine that the corresponding terminal device is the second target terminal device 205 according to the first target channel identifier, and send the first business message to the second target terminal device 205. If the service of the third-party push channel corresponding to the first target channel identifier is the third push channel service 109, the third push channel service 109 can send the first business message and the first target channel identifier to the corresponding third target push server 203 according to the set push protocol, the third target push server 203 can determine that the corresponding terminal device is the third target terminal device 206 according to the first target channel identifier, and send the first business message to the third target terminal device 206. Among them, the same terminal device can also support multiple third-party push channels, which is not limited in this application.

[0116] Fig.12A schematic diagram of a process of multi-channel push using a service message push method of a message push system provided in an embodiment of the present application, in Figure 8 On the basis of Fig.12 As shown, the push scheduling service 105 can query at least one first candidate channel identifier from the set user channel database 111 according to the target user identifier, and determine the first target channel identifier from the at least one first candidate channel identifier. The service of the third-party push channel corresponding to the first target channel identifier is the third push channel service 109. The push scheduling service 105 can send the target user identifier, the first business message and the first target channel identifier to the third push channel service 109. The third push channel service 109 can send the first business message and the first target channel identifier to the corresponding third target push server 203 according to the set push protocol. The third target push server 203 can determine that the corresponding terminal device is the third target terminal device 206 according to the first target channel identifier, and send the first business message to the third target terminal device 206. Due to the disconnection with the third target terminal device 206 or the third When the target push server 203 fails and the third push channel service 109 receives a push failure message from the third target push server 203, it continues to determine the second target channel identifier from other candidate channel identifiers except the first target channel identifier among the multiple first candidate channel identifiers, and the service of the third-party push channel corresponding to the second target channel identifier is the second push channel service 108. The third push channel service 109 can send the target user identifier, the first business message and the second target channel identifier to the second push channel service 108. The second push channel service 108 can send the first business message and the second target channel identifier to the corresponding second target push server 202 according to the set push protocol. The third target push server 203 can determine that the corresponding terminal device is the third target terminal device 206 according to the second target channel identifier, and continue to send the first business message to the third target terminal device 206.

[0117] Fig.13 A schematic diagram of a process of updating a push channel by applying a service message push method to a message push system according to an embodiment of the present application. Figure 8 On the basis of Fig.13As shown, after the target user logs in online, the first target terminal device 204, the second target terminal device 205 or the third target terminal device 206 can request the first target push server 201, the second target push server 202 or the third target push server 203 to obtain the latest candidate channel identifier at a preset time interval, and the first target push server 201, the second target push server 202 or the third target push server 203 can correspondingly feedback the second candidate channel identifier. After receiving the second candidate channel identifier, the first target terminal device 204, the second target terminal device 205 or the third target terminal device 206 can send a channel update request including the second candidate channel identifier and the target user identifier to the user access service 106, and the user access service 106 can forward the channel update request to the push scheduling service 105, and the push scheduling service can replace the first candidate channel identifier associated with the target user identifier in the user channel database 111 with the second candidate channel identifier.

[0118] Fig.14 A schematic diagram of a process of updating multiple push channels using a service message push method of a message push system provided in an embodiment of the present application, in Figure 8 On the basis of Fig.14 As shown, after the target user logs in online, the third target terminal device 206 can request the second target push server 202 and the third target push server 203 to obtain the latest candidate channel identifier at a preset time interval, and the second target push server 202 and the third target push server 203 can correspondingly feedback the second candidate channel identifier. After receiving multiple second candidate channel identifiers, the third target terminal device 206 can send a channel update request containing multiple second candidate channel identifiers and the target user identifier to the user access service 106, and the user access service 106 can forward the channel update request to the push scheduling service 105, and the push scheduling service can replace the multiple first candidate channel identifiers associated with the target user identifier in the user channel database 111 with the multiple second candidate channel identifiers.

[0119] Fig.15 This is a structural block diagram of a service message push device provided in an embodiment of the present application. The device is configured to execute the service message push method provided in the above embodiment and has the corresponding functional modules and beneficial effects of the execution method. Fig.15 As shown, the device comprises:

[0120] The login status determination module 301 is configured to obtain a target user identifier and a first service message to be sent, and query a user login status of a corresponding target terminal device according to the target user identifier;

[0121] The first message push module 302 is configured to establish a connection with a target terminal device and send a first service message to the target terminal device when the user login status is online;

[0122] The channel identification determination module 303 is configured to query at least one first candidate channel identification from a set user channel database according to the target user identification when the user login status is offline, where the first candidate channel identification represents an available push channel corresponding to the target terminal device and provided by the candidate push server;

[0123] The second message push module 304 is configured to determine the first target channel identifier from at least one first candidate channel identifier, and send the first business message and the first target channel identifier to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device.

[0124] In the above, by obtaining the target user identifier and the first business message to be sent, the user login status of the corresponding target terminal device is queried according to the target user identifier, and when the user login status is online, a connection is established with the target terminal device, and the first business message is sent to the target terminal device. When the user login status is offline, at least one first candidate channel identifier is queried from the set user channel database according to the target user identifier, and the first target channel identifier is determined from the at least one first candidate channel identifier, and the first business message and the first target channel identifier are sent to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device. In the above scheme, by querying the user login status of the corresponding target terminal device according to the target user identifier, the current user login status can be effectively determined. When the user login status is online, the first business message can be sent by establishing a long connection with the target terminal device, and the corresponding long connection channel can be effectively deployed for the active logged-in users who are online. When the user login status is offline, the first business message and the first target channel identifier can be sent to the first target push server corresponding to the determined first target channel identifier, so that the first target push server sends the first business message to the target terminal device, and the corresponding third-party push channel is effectively deployed for inactive users who are offline. Multiple message push channels are efficiently integrated for message push, thereby improving the message arrival rate of business applications.

[0125] In a possible embodiment, a message pulling module is further included, configured as follows:

[0126] When receiving a message pull request sent by the target terminal device, querying a second service message associated with the target user identifier from a set user message database, and sending the second service message to the target terminal device, the user message database being used to store sent service messages that cannot be successfully pushed to the terminal device;

[0127] When the second confirmation message fed back by the target terminal device is received, the second service message is deleted from the user message database.

[0128] In a possible embodiment, the number of first candidate channel identifiers is multiple, and further includes a first message retransmission module configured to:

[0129] In the case of receiving a push failure message fed back by the first target push server, determining a second target channel identifier from other candidate channel identifiers among the plurality of first candidate channel identifiers except the first target channel identifier;

[0130] The first service message and the second target channel identifier are sent to a second target push server corresponding to the second target channel identifier, so that the second target push server sends the first service message to the target terminal device.

[0131] In a possible embodiment, a channel identification updating module is further included, configured to:

[0132] When receiving a channel update request sent by the target terminal device, extracting at least one second candidate channel identifier from the channel update request;

[0133] The first candidate channel identifier associated with the target user identifier in the user channel database is replaced with the second candidate channel identifier.

[0134] In a possible embodiment, it further includes a second message retransmission module configured as follows:

[0135] If a first confirmation message corresponding to the first service message is not received within a preset time interval, querying a set user channel database to obtain at least one first candidate channel identifier according to the target user identifier, and determining a first target channel identifier from the at least one first candidate channel identifier;

[0136] The first service message and the first target channel identifier are sent to the corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

[0137] In a possible embodiment, it further includes a message storage module configured as follows:

[0138] The target user identifier and the first service message are associated and stored in a set user message database, so as to be used for re-pushing the first service message when the push of the first service message fails;

[0139] The first message deletion module is configured as follows:

[0140] When the first confirmation message fed back by the target terminal device is received, the first service message is deleted from the user message database.

[0141] In a possible embodiment, it further includes a message storage module configured as follows:

[0142] The target user identifier and the first service message are associated and stored in a set user message database, so as to be used for re-pushing the first service message when the push of the first service message fails;

[0143] The second message deletion module is configured as follows:

[0144] When a push success message fed back by the first target push server is received, the first service message is deleted from the user message database.

[0145] In a possible embodiment, the second message push module 304 is further configured to:

[0146] From among multiple first candidate channel identifiers, the first candidate channel identifier with the highest priority or the highest usage frequency is determined as the target channel identifier, the priority indicates the priority usage order of the multiple first candidate channel identifiers, and the usage frequency indicates the usage frequency of the multiple first candidate channel identifiers within a preset time range.

[0147] Fig.16 A schematic diagram of the structure of a service message push device provided in an embodiment of the present application, such as Fig.16 As shown, the device includes a processor 401, a memory 402, an input device 403 and an output device 404; the number of processors 401 in the device can be one or more. Fig.16 A processor 401 is taken as an example; the processor 401, memory 402, input device 403 and output device 404 in the device can be connected by a bus or other means. Fig.16The example of connecting through a bus is taken. The memory 402, as a computer-readable storage medium, can be configured to store software programs, computer executable programs and modules, such as program instructions / modules corresponding to the business message push method in the embodiment of the present application. The processor 401 executes various functional applications and data processing of the device by running the software programs, instructions and modules stored in the memory 402, that is, implements the above-mentioned business message push method. The input device 403 can be configured to receive input digital or character information, and generate key signal input related to user settings and function control of the device. The output device 404 may include a display device such as a display screen.

[0148] An embodiment of the present application also provides a non-volatile storage medium containing computer executable instructions, which, when executed by a computer processor, is configured to execute a business message push method described in the above embodiment, which includes: obtaining a target user identifier and a first business message to be sent, and querying the user login status of the corresponding target terminal device according to the target user identifier; when the user login status is online, establishing a connection with the target terminal device, and sending the first business message to the target terminal device; when the user login status is offline, querying at least one first candidate channel identifier from a set user channel database according to the target user identifier, the first candidate channel identifier representing an available push channel corresponding to the target terminal device provided by a candidate push server; determining a first target channel identifier from at least one first candidate channel identifier, and sending the first business message and the first target channel identifier to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device.

[0149] It is worth noting that in the embodiment of the above-mentioned business message push device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not configured to limit the protection scope of the embodiments of the present application.

[0150] In some possible implementations, various aspects of the method provided in this application may also be implemented in the form of a program product, which includes a program code. When the program product is run on a computer device, the program code is configured to enable the computer device to execute the steps of the method according to various exemplary embodiments of the present application described above in this specification. For example, the computer device may execute the service message push method recorded in the embodiment of this application. The program product may be implemented in any combination of one or more readable media.

Claims

1. A method for pushing business messages, characterized in that: include: Obtaining a target user identifier and a first service message to be sent, and querying a user login status of a corresponding target terminal device according to the target user identifier; When the user login status is online, establishing a connection with the target terminal device and sending the first service message to the target terminal device; When the user login status is offline, querying from a set user channel database according to the target user identifier to obtain at least one first candidate channel identifier, wherein the first candidate channel identifier represents an available push channel corresponding to the target terminal device and provided by a candidate push server; A first target channel identifier is determined from the at least one first candidate channel identifier, and the first service message and the first target channel identifier are sent to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

2. The service message push method according to claim 1, characterized in that: After establishing the connection with the target terminal device, the method further includes: Upon receiving a message pull request sent by the target terminal device, querying a second service message associated with the target user identifier from a set user message database, and sending the second service message to the target terminal device, wherein the user message database is used to store sent service messages that cannot be successfully pushed to the terminal device; When the second confirmation message fed back by the target terminal device is received, the second service message is deleted from the user message database.

3. The service message push method according to claim 1, characterized in that: The number of the first candidate channel identifiers is multiple, and after sending the first service message and the first target channel identifier to the corresponding first target push server, the method further includes: In the case of receiving a push failure message fed back by the first target push server, determining a second target channel identifier from other candidate channel identifiers among the plurality of first candidate channel identifiers except the first target channel identifier; The first service message and the second target channel identifier are sent to a second target push server corresponding to the second target channel identifier, so that the second target push server sends the first service message to the target terminal device.

4. The service message push method according to claim 1, characterized in that: After establishing the connection with the target terminal device, the method further includes: Upon receiving the channel update request sent by the target terminal device, extracting at least one second candidate channel identifier from the channel update request; The first candidate channel identifier associated with the target user identifier in the user channel database is replaced with the second candidate channel identifier.

5. The service message push method according to claim 1, characterized in that: After sending the first service message to the target terminal device, the method further includes: If a first confirmation message corresponding to the first service message is not received within a preset time interval, querying a user channel database according to the target user identifier to obtain at least one first candidate channel identifier, and determining a first target channel identifier from the at least one first candidate channel identifier; The first service message and the first target channel identifier are sent to a corresponding first target push server, so that the first target push server sends the first service message to the target terminal device.

6. The service message push method according to claim 1, characterized in that: After obtaining the target user identifier and the first service message to be sent, the method further includes: storing the target user identifier and the first service message in association with each other in a set user message database, so as to re-push the first service message when the push of the first service message fails; After sending the first service message to the target terminal device, the method further includes: When the first confirmation message fed back by the target terminal device is received, the first service message is deleted from the user message database.

7. The service message push method according to claim 1, characterized in that: After obtaining the target user identifier and the first service message to be sent, the method further includes: storing the target user identifier and the first service message in association with each other in a set user message database, so as to re-push the first service message when the push of the first service message fails; After sending the first service message and the first target channel identifier to the corresponding first target push server, the method further includes: When a push success message fed back by the first target push server is received, the first service message is deleted from the user message database.

8. The service message pushing method according to any one of claims 1 to 7, characterized in that: There are multiple first candidate channel identifiers, and determining the first target channel identifier from the at least one first candidate channel identifier includes: From among the multiple first candidate channel identifiers, the first candidate channel identifier with the highest priority or the highest usage frequency is determined as the target channel identifier, the priority indicates the priority usage order of the multiple first candidate channel identifiers, and the usage frequency indicates the usage frequency of the multiple first candidate channel identifiers within a preset time range.

9. A business message push device, characterized in that: include: A login status determination module, configured to obtain a target user identifier and a first service message to be sent, and query a user login status of a corresponding target terminal device according to the target user identifier; A first message push module, configured to establish a connection with the target terminal device and send the first service message to the target terminal device when the user login status is online; a channel identification determination module configured to query at least one first candidate channel identification from a set user channel database according to the target user identification when the user login state is offline, wherein the first candidate channel identification represents an available push channel corresponding to the target terminal device and provided by the candidate push server; The second message push module is configured to determine a first target channel identifier from the at least one first candidate channel identifier, and send the first business message and the first target channel identifier to the corresponding first target push server, so that the first target push server sends the first business message to the target terminal device.

10. A business message push device, the device comprising: one or more processors; A storage device is configured to store one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the service message push method described in any one of claims 1 to 8.

11. A non-volatile storage medium storing computer executable instructions, wherein the computer executable instructions are configured to execute the service message pushing method according to any one of claims 1 to 8 when executed by a computer processor.

12. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the service message pushing method described in any one of claims 1 to 8 is implemented.