CN107872528B - Message pushing method and device - Google Patents
Message pushing method and device Download PDFInfo
- Publication number
- CN107872528B CN107872528B CN201711163613.7A CN201711163613A CN107872528B CN 107872528 B CN107872528 B CN 107872528B CN 201711163613 A CN201711163613 A CN 201711163613A CN 107872528 B CN107872528 B CN 107872528B
- Authority
- CN
- China
- Prior art keywords
- application program
- message
- auxiliary
- target application
- push message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/043—Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a message pushing method and device. The method comprises the following steps: acquiring a push message to be pushed, and determining a target application program pushed by the push message; detecting whether the long connection of the target application program is in an online state; if the long connection of the target application program is in an off-line state, searching an auxiliary application program on the same terminal equipment as the target application program; and if the long connection of at least one auxiliary application program is in an online state, pushing the push message to the auxiliary application program so that the auxiliary application program can display the push message. Based on the scheme provided by the embodiment of the invention, the arrival rate of the message can be improved by pushing the message to the auxiliary application program, the user experience is improved for the user needing to know the transaction dynamic state by pushing the message, and the user experience is good because the push message is issued by the auxiliary application program and is not perceived by the user.
Description
Technical Field
The invention relates to the technical field of information processing, in particular to a message pushing method and device.
Background
The message pushing function is an important function of intelligent terminal equipment such as a mobile phone. Messages are generally pushed to specific applications, however, the low arrival rate of the pushed messages at the mobile phone side is a common problem in the industry, and the main reason is that the cloud pushed message service (GCM service) provided by Google corporation (Google) cannot be used in China, so that the push service can only establish a long connection channel between the applications and the server to push messages through long connection. However, in order to optimize the electric quantity performance of the terminal device, the mainstream mobile phone manufacturers (hua shi, OPPO, vivo, millet, etc.) in China stop the operation of the application program to improve the performance when the screen is in a screen-locked state or the memory of the terminal device is in short supply.
In the prior art, in order to cope with the current situation, the following solutions mainly exist:
1. the method is added into a default white list in a mode of cooperating with a manufacturer, and the application program is guaranteed to be protected from being stopped in the power supply optimization program; the scheme is only applicable to super applications, such as WeChat, QQ, Paibao and the like, and other applications are very difficult to cooperate in the way;
2. a user adds the application program into a protected white list through relatively complicated manual setting, and the application program is protected from being stopped in the power optimization program; the scheme depends on the setting completion degree of a user, and the completion degree is very low from the practical situation;
3. awakening the target application program through other application programs to keep the target application program in an active state as much as possible; currently, mainstream mobile phone manufacturers have explicitly prohibited such a mutually keep-alive scheme.
Disclosure of Invention
In view of the above problems, the present invention has been made to provide a message pushing method and a message pushing apparatus that overcome or at least partially solve the above problems.
According to an aspect of the present invention, there is provided a message pushing method, including:
acquiring a push message to be pushed, and determining a target application program pushed by the push message;
detecting whether the long connection of the target application program is in an online state;
if the long connection of the target application program is in an off-line state, searching an auxiliary application program on the same terminal equipment as the target application program;
and if the long connection of at least one auxiliary application program is in an online state, pushing the push message to the auxiliary application program so that the auxiliary application program can display the push message.
Optionally, the searching for the secondary application on the same terminal device as the target application further comprises:
and querying the database according to the terminal equipment identification corresponding to the target application program to determine the auxiliary application program on the same terminal equipment as the target application program.
Optionally, the database stores: terminal device identification, application program identification, and long connection online status of the application program.
Optionally, if there are multiple long connections of the secondary application in an online state, pushing the push message to the secondary application further includes:
randomly selecting one auxiliary application program from a plurality of auxiliary application programs with long connection in an online state, and pushing the push message to the selected auxiliary application program.
Optionally, the database further stores: the online rate of long connections of the application;
if there are multiple long connections of the secondary application that are online, pushing the push message to the secondary application further comprises:
sequencing the plurality of auxiliary applications according to the on-line rate of the long connections of the applications;
and selecting an auxiliary application program according to the sorting result, and pushing the push message to the selected auxiliary application program.
Optionally, the method further comprises: if the long connection of the auxiliary application program is in an online state, updating the message state of the push message to reach;
and if the long connections of the auxiliary application programs on the same terminal equipment are all in an offline state, updating the message state of the push message to be unreachable.
According to another aspect of the present invention, there is provided a message pushing apparatus, including:
the acquisition module is suitable for acquiring the push message to be pushed and determining a target application program pushed by the push message;
the detection module is suitable for detecting whether the long connection of the target application program is in an online state or not;
the searching module is suitable for searching the auxiliary application program on the same terminal equipment as the target application program if the long connection of the target application program is in an off-line state;
and the pushing module is suitable for pushing the pushing message to the auxiliary application program if the long connection of at least one auxiliary application program is in an online state, so that the auxiliary application program can display the pushing message.
Optionally, the lookup module is further adapted to: and querying the database according to the terminal equipment identification corresponding to the target application program to determine the auxiliary application program on the same terminal equipment as the target application program.
Optionally, the database stores: terminal device identification, application program identification, and long connection online status of the application program.
Optionally, the push module is further adapted to: if the long connection of the plurality of auxiliary applications is in the online state, randomly selecting one auxiliary application from the plurality of auxiliary applications with the long connection in the online state, and pushing the push message to the selected auxiliary application.
Optionally, the database further stores: the online rate of long connections of the application;
the push module is further adapted to: if the long connections of the multiple auxiliary applications are in an online state, sequencing the multiple auxiliary applications according to the online rates of the long connections of the applications;
and selecting an auxiliary application program according to the sorting result, and pushing the push message to the selected auxiliary application program.
Optionally, the apparatus further comprises: the updating module is suitable for updating the message state of the push message to reach if the long connection of the auxiliary application program is in an online state; and if the long connections of the auxiliary application programs on the same terminal equipment are all in an offline state, updating the message state of the push message to be unreachable.
According to yet another aspect of the present invention, there is provided a computing device comprising: the system comprises a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface complete mutual communication through the communication bus;
the memory is used for storing at least one executable instruction, and the executable instruction enables the processor to execute the operation corresponding to the message pushing method.
According to still another aspect of the present invention, a computer storage medium is provided, where at least one executable instruction is stored in the storage medium, and the executable instruction causes a processor to perform operations corresponding to the message pushing method.
According to the scheme provided by the invention, under the condition that the long connection of the target application program to which the push message is pushed is detected to be in an off-line state, the auxiliary application program on the same terminal equipment as the target application program can be searched, if the long connection of at least one auxiliary application program is in an on-line state, the push message can be pushed to the auxiliary application program, the arrival rate of the message can be improved in a mode of pushing the message to the auxiliary application program, the user experience is improved for a user needing to know transaction dynamics through the push message, and the push message issued by the auxiliary application program is not perceived by the user, so that the user experience is good.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The drawings are only for purposes of illustrating the preferred embodiments and are not to be construed as limiting the invention. Also, like reference numerals are used to refer to like parts throughout the drawings. In the drawings:
fig. 1 shows a flow diagram of a message pushing method according to an embodiment of the invention;
fig. 2 is a flowchart illustrating a message pushing method according to another embodiment of the present invention;
fig. 3 is a schematic diagram illustrating a structure of a message pushing apparatus according to an embodiment of the present invention;
fig. 4 is a schematic diagram illustrating a structure of a message pushing apparatus according to another embodiment of the present invention;
FIG. 5 illustrates a schematic structural diagram of a computing device, according to an embodiment of the invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
The inventor of the present invention has found that, in general, a server pushes a message to an application program through a long connection established with the application program on a terminal device through an established long connection channel, where the long connection generally refers to a data connection capable of maintaining an online state for a long time, that is: after an interactive operation is completed for one time, the application program and the server may not immediately release the connection, and the subsequent interactive operation may still continue to use the connection, and during the period without data interaction, the two parties may keep online by sending a link detection packet (i.e., a normal heartbeat mechanism).
However, in some cases, a long connection between the server and the application program may be disconnected, for example, when a screen of the terminal device is in a screen lock state or a memory of the terminal device is in a short state, the terminal device generally improves performance by stopping running of the application program, and at this time, the long connection between the server and the application program is disconnected, and the server cannot push a message to the application program any more, so that a message arrival rate is reduced, and user experience is affected for a user who needs to know transaction dynamics by pushing the message. In order to solve the above problem, the present invention proposes a scheme for increasing the message arrival rate by pushing a message to a secondary application.
The terminal device in the embodiment of the present invention may be a mobile phone, a Pad, and the like, which are only examples and are not limited specifically. How to perform message pushing is described in detail in the following by several specific embodiments:
fig. 1 shows a flow chart of a message pushing method according to an embodiment of the invention. As shown in fig. 1, the method comprises the steps of:
step S100, acquiring a push message to be pushed, and determining a target application program pushed by the push message.
The target application program refers to an application program to which the push message is actually pushed, and in general, the push message to be pushed is preferentially pushed to the target application program.
Step S101, detecting whether the long connection of the target application program is in an online state, and if the long connection of the target application program is in an offline state, executing step S102; if the long connection of the target application is in the online state, step S104 is executed.
After determining a target application program for pushing a message, detecting whether a long connection of the target application program is in an online state, mainly for determining whether the message can be pushed to the target application program, if the long connection of the target application program is in an offline state, determining that the message cannot be sent to the target application program, and pushing the message by means of an auxiliary application program; if the long connection of the target application program is in an online state, the message is determined to be capable of being pushed to the target application program, and the message can be continuously pushed to the target program.
And step S102, searching for the auxiliary application program on the same terminal equipment as the target application program.
When detecting that the long connection of the target application is in an offline state, it is necessary to search for an auxiliary application on the same terminal device as the target application, where the target application is opposite to the auxiliary application, for example, an application A, B, C, D is installed on one terminal device, and if a message needs to be pushed to an application a, the application B, C, D on the terminal device is an auxiliary application; if the message needs to be pushed to application B, then the application A, C, D on the terminal device is a secondary application.
Step S103, if the long connection of at least one auxiliary application program is in an online state, pushing the push message to the auxiliary application program so that the auxiliary application program can display the push message.
After finding the auxiliary application program on the same terminal device as the target application program, it is also necessary to determine whether the long connection of the auxiliary application program is in an online state, and the auxiliary application program in the online state of the long connection can be used as an object to which the push message is touched.
Step S104, pushing the push message to the target application program so that the target application program can display the push message.
If the long connection of the target application program is detected to be in an online state, the push message can be pushed to the target application program, and the target application program displays the push message to the user.
According to the method provided by the embodiment of the invention, under the condition that the long connection of the target application program to which the push message is pushed is detected to be in the offline state, the auxiliary application program on the same terminal equipment as the target application program can be searched, if the long connection of at least one auxiliary application program is in the online state, the push message can be pushed to the auxiliary application program, the arrival rate of the message can be improved in a mode of pushing the message to the auxiliary application program, the user experience is improved for the user needing to know about transaction dynamics through the push message, and the push message issued by the auxiliary application program is not perceived by the user, so that the user experience is good.
Fig. 2 is a flowchart illustrating a message pushing method according to another embodiment of the present invention. As shown in fig. 2, the method comprises the steps of:
step S200, acquiring the push message to be pushed, and determining the target application program pushed by the push message.
Generally, a server may obtain a large number of push messages at the same time, and the messages need to be pushed to different target applications, where the different target applications may be different application names, or may be the same application name but different user application accounts.
The target application program refers to an application program to which the push message is actually pushed, and in general, the push message to be pushed is preferentially pushed to the target application program, so after the push message to be pushed is obtained, the target application program to which the push message is pushed needs to be determined, for example, an application program identifier of the target application program is determined, where the application program identifier includes: an application name and a user application account. The application identifier may be carried by the push message, or may be obtained together with the push message, which is only an example and does not have any limiting effect.
Step S201, detecting whether the long connection of the target application program is in an online state, and if the long connection of the target application program is in an offline state, executing step S202; if the long connection of the target application is on-line, step S207 is executed.
After determining a target application program for pushing a message, detecting whether a long connection of the target application program is in an online state, mainly for determining whether the message can be pushed to the target application program, if the long connection of the target application program is in an offline state, determining that the message cannot be sent to the target application program, and pushing the message by means of an auxiliary application program; if the long connection of the target application program is in an online state, the message is determined to be capable of being pushed to the target application program, and the message can be continuously pushed to the target program.
Specifically, whether the long connection of the target application program is in the online state may be detected by sending a message to the target application program, and of course, the online state of the long connection of the target application program may also be detected by querying a database, where a terminal device identifier, an application identifier, and the online state of the long connection of the application program may be stored in the database, and step S200 determines the application identifier of the target application program, and may query the database according to the application identifier, thereby determining whether the long connection of the target application program is in the online state.
Step S202, according to the terminal device identification corresponding to the target application program, querying a database to determine an auxiliary application program on the same terminal device as the target application program.
Specifically, the database may be queried according to an application identifier of the target application, a terminal device identifier corresponding to the target application is determined, and then the database is queried according to the terminal device identifier to determine the auxiliary application on the terminal device, so as to determine the auxiliary application on the same terminal device as the target application.
By way of example, the information stored in the database may be as shown in table 1:
table 1:
terminal device identification 1 | Application identification 1 | Offline state |
Terminal device identification 2 | Application identification 2 | Offline state |
Terminal device identification 1 | Application identification 3 | On-line status |
Terminal device identification 1 | Application identification 4 | Offline state |
Terminal device identification 3 | Application identification 5 | On-line status |
Terminal device identification 4 | Application identification 6 | Offline state |
Terminal device identification 1 | Application identification 7 | On-line status |
Determining that the application program identifier of a target application program to be pushed of a message to be pushed is an application program identifier 1 according to the step S200, detecting that long connection of the target application program is in an off-line state, querying a database according to the application program identifier 1 of the target application program to determine that the corresponding terminal device identifier is not the terminal device identifier 1, querying the database according to the terminal device identifier 1 to determine an auxiliary application program on the same terminal device as the target application program, wherein the auxiliary application program identifiers are an application program identifier 3, an application program identifier 4 and an application program identifier 7 respectively.
The auxiliary application is preferably a super application, such as WeChat, QQ, Paibao, and the like, in the case that the screen of the terminal device is in a screen-locked state or the memory of the terminal device is in a shortage, the application is already an application cooperating with a manufacturer, and the operation is not stopped in the case that the screen of the terminal device is in a screen-locked state or the memory of the terminal device is in a shortage, so that the message arrival rate can be ensured by using the applications.
Step S203, judging whether long connections of a plurality of auxiliary application programs exist and are in an online state, if so, executing step S204; if not, go to step S206.
After determining the secondary application on the same terminal device as the target application, it is further required to determine whether the long connection of the secondary application is in an online state, that is, it is required to determine whether there is a long connection of at least one application in an online state, specifically, it may be determined by querying a database according to the application identifier of the secondary application, and it is known from table 1 that the long connection of the secondary application corresponding to the application identifiers 3 and 7 is in an online state.
In the embodiment of the present invention, there may be a case where the connection information of the long connection of the secondary application is not stored in the database, and it may be determined that the push message does not reach the secondary application in the case where the connection information of the long connection of the secondary application is not queried.
Step S204, randomly selecting one auxiliary application program from the plurality of auxiliary application programs which are in the online state in the long connection, and pushing the push message to the selected auxiliary application program so that the auxiliary application program can display the push message.
If it is determined in step S203 that the long connection of the secondary application corresponding to the application identifier 3 or 7 is in the online state, one secondary application may be randomly selected from the two secondary applications, for example, the secondary application corresponding to the application identifier 3 is selected, and the push message is pushed to the secondary application corresponding to the application identifier 3.
After the message pushing method provided by the invention is used for pushing the pushed message to the auxiliary application program, the auxiliary application program can display the pushed message to the user in a voice broadcasting mode, namely, the message content is played to the user in a voice broadcasting mode. In addition, the secondary application may also present the message details of the push message to the user in a windowed fashion.
Step S205, the message status of the push message is updated to touch.
And under the condition that the long connection with the auxiliary application program is in the on-line state, the push message can be determined to be reachable, the message state of the push message can be updated to be reachable, and the subsequent push service of the server can be facilitated by updating the message state of the push message. Of course, the message status of the push message may also be updated to reach after the push message is pushed to the selected secondary application.
Step S206, the message state of the push message is updated to be not reached.
If the long connection without the auxiliary application program is in the online state, the push message is considered to be unreachable, and the message state of the push message can be updated to be untouched, so that the server can conveniently continue to push the message subsequently.
Step S207, the push message is pushed to the target application program, so that the target application program displays the push message.
If the long connection of the target application program is detected to be in an online state, the push message can be pushed to the target application program, and the target application program displays the push message to the user.
By using the message pushing method provided by the embodiment of the invention, no manufacturer is needed to cooperate, and the method does not depend on manual setting of a user and does not violate the original intention of protecting user experience of the manufacturer.
In an alternative embodiment of the present invention, the database may further store: the online rate of the long connection of the application program can be counted and updated by the server;
if there are multiple long connections of the secondary application that are online, pushing the push message to the secondary application further comprises: the method includes the steps of sorting a plurality of auxiliary applications according to the online rates of long connections of the applications, for example, sorting the auxiliary applications in a descending order or an ascending order according to the online rates, selecting one auxiliary application according to a sorting result, specifically, selecting the auxiliary application with the highest online rate, and pushing a push message to the auxiliary application with the highest online rate, so that the arrival rate of the message is further improved.
According to the method provided by the above embodiment of the present invention, when it is detected that the long connection of the target application program to which the push message is pushed is in the offline state, the database may be queried to find the auxiliary application program on the same terminal device as the target application program, if there is at least one long connection of the auxiliary application program in the online state, an auxiliary application program may be randomly selected from the at least one auxiliary application program in the online state, and the push message is pushed to the selected auxiliary application program, and the arrival rate of the message may be improved by pushing the message to the auxiliary application program, thereby overcoming the defect that the message cannot be reached due to the stop of the application program when the screen of the terminal device is in the screen-locked state or the memory of the terminal device is in a short state in the prior art, for the user who needs to know about transaction dynamics through the push message, user experience is improved, and the push message issued by the auxiliary application program is not perceived by the user, so that the user experience is good.
Fig. 3 is a schematic structural diagram of a message pushing apparatus according to an embodiment of the present invention. As shown in fig. 3, the apparatus includes: the device comprises an acquisition module 300, a detection module 310, a search module 320 and a push module 330.
The obtaining module 300 is adapted to obtain a push message to be pushed, and determine a target application program for pushing the push message.
The target application program refers to an application program to which the push message is actually pushed, and in general, the push message to be pushed is preferentially pushed to the target application program.
The detection module 310 is adapted to detect whether a long connection of the target application is in an online state.
After determining a target application program for pushing a message, detecting whether a long connection of the target application program is in an online state, mainly for determining whether the message can be pushed to the target application program, if the long connection of the target application program is in an offline state, determining that the message cannot be sent to the target application program, and pushing the message by means of an auxiliary application program; if the long connection of the target application program is in an online state, the message is determined to be capable of being pushed to the target application program, and the message can be continuously pushed to the target program.
The searching module 320 is adapted to search for the auxiliary application on the same terminal device as the target application if the long connection of the target application is in an offline state.
When detecting that the long connection of the target application is in an offline state, it is necessary to search for an auxiliary application on the same terminal device as the target application, where the target application is opposite to the auxiliary application, for example, an application A, B, C, D is installed on one terminal device, and if a message needs to be pushed to an application a, the application B, C, D on the terminal device is an auxiliary application; if the message needs to be pushed to application B, then the application A, C, D on the terminal device is a secondary application.
The pushing module 330 is adapted to push the push message to the secondary application program if there is a long connection of at least one secondary application program in an online state, so that the secondary application program displays the push message.
After finding the auxiliary application program on the same terminal device as the target application program, it is also necessary to determine whether the long connection of the auxiliary application program is in an online state, and the auxiliary application program in the online state can be used as an object to which the push message is touched.
According to the device provided by the embodiment of the invention, under the condition that the long connection of the target application program to which the push message is pushed is detected to be in the offline state, the auxiliary application program on the same terminal equipment as the target application program can be searched, if the long connection of at least one auxiliary application program is in the online state, the push message can be pushed to the auxiliary application program, the arrival rate of the message can be improved in a mode of pushing the message to the auxiliary application program, the user experience is improved for the user who needs to know about transaction dynamics through the push message, and the user experience is good because the push message is issued by the auxiliary application program.
Fig. 4 is a schematic structural diagram of a message pushing apparatus according to another embodiment of the present invention. As shown in fig. 4, the apparatus includes: the device comprises an acquisition module 400, a detection module 410, a search module 420, a judgment module 430, a push module 440 and an update module 450.
The obtaining module 400 is adapted to obtain a push message to be pushed, and determine a target application program pushed by the push message.
The detection module 410 is adapted to detect whether a long connection of a target application is in an online state.
The lookup module 420 is further adapted to: and querying the database according to the terminal equipment identification corresponding to the target application program to determine the auxiliary application program on the same terminal equipment as the target application program.
Specifically, the database may be queried according to an application identifier of the target application, a terminal device identifier corresponding to the target application is determined, and then the database is queried according to the terminal device identifier to determine the auxiliary application on the terminal device, so as to determine the auxiliary application on the same terminal device as the target application.
Wherein the database stores: terminal device identification, application program identification, and long connection online status of the application program.
The determining module 430 is adapted to determine whether there are long connections of multiple secondary applications in an online state.
The pushing module 440 is adapted to randomly select one secondary application program from the plurality of secondary application programs with a long connection being in an online state if the long connection with the plurality of secondary application programs is in the online state, and push the push message to the selected secondary application program, so that the secondary application program can display the push message.
An update module 450 adapted to update the message status of the push message to reach if there is a long connection of the secondary application in an online state; and if the long connections of the auxiliary application programs on the same terminal equipment are all in an offline state, updating the message state of the push message to be unreachable.
When the long connection with the auxiliary application program is judged to be in the on-line state, the push message can be determined to be reachable, the message state of the push message can be updated to be reachable, and the message state of the push message is updated; if the long connection without the auxiliary application program is in the online state, the push message is considered to be unreachable, and the message state of the push message can be updated to be untouched, so that the subsequent push service of the server is facilitated.
In an alternative embodiment of the invention, the database further stores: the online rate of long connections of the application;
the pushing module 440 is further adapted to: if the long connections of the multiple auxiliary applications are in an online state, sequencing the multiple auxiliary applications according to the online rates of the long connections of the applications;
and selecting an auxiliary application program according to the sorting result, and pushing the push message to the selected auxiliary application program.
According to the apparatus provided in the foregoing embodiment of the present invention, when it is detected that the long connection of the target application program to which the push message is pushed is in an offline state, the database may be queried to find an auxiliary application program on the same terminal device as the target application program, and if there is at least one long connection of the auxiliary application program in an online state, an auxiliary application program may be randomly selected from the at least one auxiliary application program in the online state, and the push message is pushed to the selected auxiliary application program, so that an arrival rate of the message may be improved by pushing the message to the auxiliary application program, a defect that the message cannot be reached due to stopping of the application program when a screen of the terminal device is in a screen-locked state or when a memory of the terminal device is in a short state in the prior art is overcome, for a user who needs to know about transaction dynamics through the push message, user experience is improved, and the push message issued by the auxiliary application program is not perceived by the user, so that the user experience is good.
The embodiment of the present application further provides a non-volatile computer storage medium, where the computer storage medium stores at least one executable instruction, and the computer executable instruction may execute the message pushing method in any method embodiment described above.
Fig. 5 is a schematic structural diagram of a computing device according to an embodiment of the present invention, and the specific embodiment of the present invention does not limit the specific implementation of the computing device.
As shown in fig. 5, the computing device may include: a processor (processor)502, a Communications Interface 504, a memory 506, and a communication bus 508.
Wherein:
the processor 502, communication interface 504, and memory 506 communicate with one another via a communication bus 508.
A communication interface 504 for communicating with network elements of other devices, such as clients or other servers.
The processor 502 is configured to execute the program 510, and may specifically execute the relevant steps in the foregoing message pushing method embodiment.
In particular, program 510 may include program code that includes computer operating instructions.
The processor 502 may be a central processing unit CPU, or an Application Specific Integrated Circuit (ASIC), or one or more Integrated circuits configured to implement an embodiment of the invention. The computing device includes one or more processors, which may be the same type of processor, such as one or more CPUs; or may be different types of processors such as one or more CPUs and one or more ASICs.
And a memory 506 for storing a program 510. The memory 506 may comprise high-speed RAM memory, and may also include non-volatile memory (non-volatile memory), such as at least one disk memory.
The program 510 may specifically be configured to enable the processor 502 to execute the message pushing method in any of the above-described method embodiments. For specific implementation of each step in the program 510, reference may be made to corresponding steps and corresponding descriptions in units in the foregoing message pushing embodiment, which are not described herein again. It can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described devices and modules may refer to the corresponding process descriptions in the foregoing method embodiments, and are not described herein again.
The algorithms and displays presented herein are not inherently related to any particular computer, virtual machine, or other apparatus. Various general purpose systems may also be used with the teachings herein. The required structure for constructing such a system will be apparent from the description above. Moreover, the present invention is not directed to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any descriptions of specific languages are provided above to disclose the best mode of the invention.
In the description provided herein, numerous specific details are set forth. It is understood, however, that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules in the device in an embodiment may be adaptively changed and disposed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and furthermore they may be divided into a plurality of sub-modules or sub-units or sub-components. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
The various component embodiments of the invention may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. It will be appreciated by those skilled in the art that a microprocessor or Digital Signal Processor (DSP) may be used in practice to implement some or all of the functions of some or all of the components in a message pushing device according to embodiments of the present invention. The present invention may also be embodied as apparatus or device programs (e.g., computer programs and computer program products) for performing a portion or all of the methods described herein. Such programs implementing the present invention may be stored on computer-readable media or may be in the form of one or more signals. Such a signal may be downloaded from an internet website or provided on a carrier signal or in any other form.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The usage of the words first, second and third, etcetera do not indicate any ordering. These words may be interpreted as names.
Claims (8)
1. A message pushing method, comprising:
acquiring a push message to be pushed, and determining a target application program pushed by the push message;
detecting whether the long connection of the target application program is in an online state;
if the long connection of the target application program is in an off-line state, searching an auxiliary application program on the same terminal equipment as the target application program, wherein the target application program is opposite to the auxiliary application program;
if the long connection of the auxiliary applications is in the online state, sequencing the auxiliary applications according to the online rate of the long connection of the applications, selecting one auxiliary application according to the sequencing result, pushing the push message to the selected auxiliary application so that the auxiliary application can display the push message, and updating the message state of the push message to reach;
and if the long connections of the auxiliary application programs on the same terminal equipment are all in an offline state, updating the message state of the push message to be unreachable.
2. The method of claim 1, wherein the finding a secondary application on the same terminal device as the target application further comprises:
and querying a database according to the terminal equipment identifier corresponding to the target application program to determine the auxiliary application program on the same terminal equipment as the target application program.
3. The method of claim 2, wherein the database stores: terminal device identification, application program identification, and long connection online status of the application program.
4. A message pushing apparatus, comprising:
the system comprises an acquisition module, a display module and a display module, wherein the acquisition module is suitable for acquiring a push message to be pushed and determining a target application program pushed by the push message;
a detection module adapted to detect whether a long connection of the target application is in an online state;
the searching module is suitable for searching an auxiliary application program on the same terminal device with the target application program if the long connection of the target application program is in an off-line state, wherein the target application program is opposite to the auxiliary application program;
the push module is suitable for sequencing the auxiliary applications according to the online rate of the long connection of the applications if the long connection of the auxiliary applications is in an online state, selecting one auxiliary application according to a sequencing result, and pushing the push message to the selected auxiliary application so that the auxiliary application can display the push message;
wherein the apparatus further comprises: the updating module is suitable for updating the message state of the push message to reach if the long connection of the auxiliary application program is in an online state; and if the long connections of the auxiliary application programs on the same terminal equipment are all in an offline state, updating the message state of the push message to be unreachable.
5. The apparatus of claim 4, wherein the lookup module is further adapted to: and querying a database according to the terminal equipment identifier corresponding to the target application program to determine the auxiliary application program on the same terminal equipment as the target application program.
6. The apparatus of claim 5, wherein the database stores: terminal device identification, application program identification, and long connection online status of the application program.
7. A computing device, comprising: the system comprises a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface complete mutual communication through the communication bus;
the memory is used for storing at least one executable instruction, and the executable instruction causes the processor to execute the operation corresponding to the message pushing method according to any one of claims 1-3.
8. A computer storage medium having at least one executable instruction stored therein, the executable instruction causing a processor to perform operations corresponding to the message pushing method according to any one of claims 1-3.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711163613.7A CN107872528B (en) | 2017-11-21 | 2017-11-21 | Message pushing method and device |
PCT/CN2018/113394 WO2019100921A1 (en) | 2017-11-21 | 2018-11-01 | Information pushing method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711163613.7A CN107872528B (en) | 2017-11-21 | 2017-11-21 | Message pushing method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107872528A CN107872528A (en) | 2018-04-03 |
CN107872528B true CN107872528B (en) | 2020-11-06 |
Family
ID=61754337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711163613.7A Active CN107872528B (en) | 2017-11-21 | 2017-11-21 | Message pushing method and device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107872528B (en) |
WO (1) | WO2019100921A1 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107872528B (en) * | 2017-11-21 | 2020-11-06 | 口碑(上海)信息技术有限公司 | Message pushing method and device |
CN108833261B (en) * | 2018-06-19 | 2020-09-25 | 北京顺丰同城科技有限公司 | Client message pushing optimization method and device based on Android platform |
CN108933825B (en) * | 2018-06-29 | 2019-06-11 | 掌阅科技股份有限公司 | The information-pushing method and electronic equipment realized based on suspension pendant |
CN108833594B (en) * | 2018-07-31 | 2019-11-12 | 浙江每日互动网络科技股份有限公司 | Method of the server-side to mobile terminal pushed information |
CN109525629A (en) * | 2018-09-11 | 2019-03-26 | 北京小米移动软件有限公司 | Information-pushing method, device and storage medium |
CN111901366B (en) * | 2019-05-06 | 2023-08-29 | 广州市百果园信息技术有限公司 | Data pushing method, device, equipment and storage medium |
CN112788092B (en) * | 2020-09-23 | 2023-08-22 | 招商证券股份有限公司 | Message pushing method and device and electronic equipment |
CN112291364B (en) * | 2020-11-06 | 2024-07-26 | 腾讯科技(深圳)有限公司 | Message pushing processing method and device |
CN112395112B (en) * | 2020-11-30 | 2024-06-25 | 深圳市和讯华谷信息技术有限公司 | Application message processing method, device, computer equipment and storage medium |
CN112866391A (en) * | 2021-01-21 | 2021-05-28 | 北京百度网讯科技有限公司 | Message pushing method and device, electronic equipment and storage medium |
CN113852667A (en) * | 2021-08-27 | 2021-12-28 | 青岛海尔科技有限公司 | Message pushing method and device, storage medium and electronic device |
CN113890895A (en) * | 2021-08-27 | 2022-01-04 | 青岛海尔科技有限公司 | Message pushing method and device, storage medium and electronic device |
CN114363406B (en) * | 2021-12-10 | 2024-03-26 | 北京达佳互联信息技术有限公司 | Push message processing method, device, equipment and storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229528A (en) * | 2017-05-27 | 2017-10-03 | 北京奇虎科技有限公司 | Multichannel multiplexing method and device, electronic equipment that message is pushed |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1407780A (en) * | 2001-08-13 | 2003-04-02 | 国际商业机器公司 | Method and device for maintaining course continuance as multiple terminals accessing service content |
KR20120096983A (en) * | 2011-02-24 | 2012-09-03 | 삼성전자주식회사 | Malware detection method and mobile terminal therefor |
CN104349288B (en) * | 2013-07-25 | 2020-04-07 | 腾讯科技(深圳)有限公司 | Message transmission method and device |
CN103595547B (en) * | 2013-11-15 | 2016-07-13 | 北京奇虎科技有限公司 | The broadcast hold-up interception method of smart machine and device |
CN105635201A (en) * | 2014-10-29 | 2016-06-01 | Tcl集团股份有限公司 | Application starting method and application starting system based on pushed information |
CN106899652B (en) * | 2016-07-20 | 2020-08-21 | 阿里巴巴集团控股有限公司 | Method and device for pushing service processing result |
CN107872528B (en) * | 2017-11-21 | 2020-11-06 | 口碑(上海)信息技术有限公司 | Message pushing method and device |
-
2017
- 2017-11-21 CN CN201711163613.7A patent/CN107872528B/en active Active
-
2018
- 2018-11-01 WO PCT/CN2018/113394 patent/WO2019100921A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229528A (en) * | 2017-05-27 | 2017-10-03 | 北京奇虎科技有限公司 | Multichannel multiplexing method and device, electronic equipment that message is pushed |
Also Published As
Publication number | Publication date |
---|---|
WO2019100921A1 (en) | 2019-05-31 |
CN107872528A (en) | 2018-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107872528B (en) | Message pushing method and device | |
CN107277029B (en) | Remote procedure call method and device and computer equipment | |
CN110601922B (en) | Method and device for realizing comparison experiment, electronic equipment and storage medium | |
CN106059825A (en) | Distributed system and configuration method | |
CN108123851B (en) | Survival detection method and device for master-slave node synchronous link in distributed system | |
CN105610903B (en) | Data node upgrading method and device for distributed system | |
CN106130972B (en) | resource access control method and device | |
CN107633016A (en) | Data processing method and device and electronic equipment | |
CN102750629B (en) | Schedule association method and device | |
CN109657434B (en) | Application access method and device | |
CN105653198A (en) | Data processing method and device | |
CN109165158B (en) | Method and device for scheduling test cases, computing equipment and computer storage medium | |
CN103500191A (en) | Flow table configuration, query and table item deleting method and device | |
CN107480260B (en) | Big data real-time analysis method and device, computing equipment and computer storage medium | |
CN103927303B (en) | A kind of method and apparatus for searching account | |
CN107305570B (en) | Data retrieval method and system | |
US10715628B2 (en) | Attribute operating method and device | |
WO2017118318A1 (en) | Data storage and service processing method and device | |
CN107479985B (en) | Remote procedure call method and device and computer equipment | |
CN114389969A (en) | Client test method and device, electronic equipment and storage medium | |
CN111507636A (en) | Business process running state analysis method and system | |
CN114138961A (en) | Playing processing method of audio electronic book, computing equipment and computer storage medium | |
CN113626449A (en) | Data storage method, data query method and related equipment | |
CN110765392A (en) | Data loading method and device, storage medium and terminal | |
CN111770208A (en) | Control method and device for Internet of things equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |