Message sending method and system, electronic equipment and storage medium

By providing a message sending method and system, messages in different business systems can be forwarded to the corresponding message notification server according to the corresponding sending strategy, which solves the improvement of development and maintenance costs and reduced message sending efficiency caused by the increase in the number of enterprise business systems. The problem of this is to realize more efficient message configuration and sending.

CN119450375APending Publication Date: 2025-02-14BEIJING BAIRONG RUIBO TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411403155.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-09
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

The increase in the number of enterprise business systems has led to the need for secondary development and docking with servers of different message notification service providers, which has improved development and maintenance costs and reduced message configuration and sending efficiency.

Method used

Provide a message sending method and system, which can forward messages in different business systems to the corresponding message notification server according to the corresponding sending strategy, and preset the correspondence between different message types and sending strategies in each business system, as well as each business The correspondence between the system and the message notification server.

Benefits of technology

By reducing the secondary development requirements and docking times of the business system, the development and maintenance costs are reduced, and the configuration and sending efficiency of the business system messages are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119450375A_ABST
    Figure CN119450375A_ABST
Patent Text Reader

Abstract

The invention provides a message sending method and system, an electronic device and a storage medium, the message sending system can be in butt joint with at least one service system, and a first corresponding relation between different message types and sending strategies in each service system is preset in the message sending system. The message sending system is in butt joint with at least one message notification server in advance and a second corresponding relation between each service system and the message notification server, and the method comprises the following steps: obtaining a target message to be sent by a target service system; determining a target sending strategy corresponding to the target message from the first corresponding relation; determining a target server corresponding to the target service system from the second corresponding relationship; and sending the target message to the target server by adopting the target sending strategy. Compared with secondary development of the service system, the development and maintenance cost of the message sending system is remarkably reduced, and the message configuration and sending efficiency of the service system can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of information transmission technology, and in particular to a message sending method, system, electronic device and storage medium. Background Art

[0002] For business systems, there is generally a need to send messages to system users to notify them. For example, for an online ticket booking system, after the user completes the ticket booking operation in the system, the system needs to generate a message of successful ticket booking and display the message to the user in the system, or send the message to the user via SMS, email, etc.

[0003] In order to enable the business system to send messages to system users, developers need to perform secondary development of the business system based on the specific requirements for message sending in the business system. Continuing with the above example, the specific requirements for message sending in the business system are: after the user completes the ticket booking, the online ticket booking system needs to send a successful ticket booking message to the corresponding user via SMS. In this case, the developer needs to add the code corresponding to the above specific requirements to the development code of the online ticket booking system, and connect the online ticket booking system to the SMS operator's server, so that after the user in the online ticket booking system completes the ticket booking, the system can send a successful ticket booking message to the user via SMS, thereby realizing the business system's notification of the system users.

[0004] As the types of business of enterprises continue to increase, the number of enterprise business systems is also increasing. In the case that the notification requirements of various business systems of enterprises are different, if you want to realize the notification of each business system to the system users, developers need to carry out secondary development of the corresponding business systems based on the specific notification requirements of each business system. In addition, developers are also required to connect each business system with the server of the corresponding message notification service provider according to the different notification methods of each business system. For example, the online ticket booking system needs to send the ticket booking success message to the ticket booking user via SMS, and the online ticket booking system needs to be connected with the server of the SMS operator; the online shopping system needs to send the shopping success message to the shopping user via email, and the online shopping system needs to be connected with the server of the email operator. The more the number of enterprise business systems, the greater the workload of developers for secondary development of enterprise business systems, and the more times they connect with the servers of the corresponding service providers, which significantly increases the development and maintenance costs and reduces the configuration and sending efficiency of business system messages. Summary of the invention

[0005] The purpose of the embodiments of the present application is to provide a message sending method, system, electronic device and storage medium, which can improve the configuration and sending efficiency of business system messages.

[0006] In order to solve the above technical problems, the embodiments of the present application provide the following technical solutions:

[0007] The first aspect of the present application provides a message sending method, which is applied to a message sending system. The message sending system can be connected to at least one business system, and is used to forward messages in different business systems to corresponding message notification servers according to corresponding sending strategies. The message sending system is pre-set with a first correspondence between different message types in each business system and the sending strategy, and a second correspondence between each business system and the message notification server. The message sending system is pre-connected with at least one message notification server, and the method includes: obtaining a target message to be sent by a target business system, the target business system being a business system in at least one business system; determining a target sending strategy corresponding to the target message from the first correspondence; determining a target server corresponding to the target business system from the second correspondence; and using the target sending strategy to send the target message to the target server, so that the target server sends the target message.

[0008] Compared with the prior art, the message sending method provided in the first aspect of the present application develops a message sending system that can realize the function of message forwarding, and the system has been pre-connected with various message notification servers to realize message sending in various channels. When a business system needs to implement the message sending function, the message sending system can be directly installed in the business system. Then, the business system user can perform simple configuration such as sending strategy in the message sending system to realize the message sending of the business system. When installing the system and configuring the sending strategy, the development and maintenance costs are significantly reduced compared to the secondary development of the system, and therefore, the configuration and sending efficiency of business system messages can be improved.

[0009] In some changed implementation modes of the first aspect of the present application, after obtaining the target message to be sent by the target business system, the method also includes: determining whether the resource utilization of the message sending system is greater than a preset utilization; if so, adjusting the message sending frequency and the number of messages sent at a time corresponding to at least one business system so that the resource utilization of the message sending system is less than or equal to the preset utilization.

[0010] Every time a message is obtained, a judgment is made on the resource utilization of the message sending system. If it is found that the message sending system is short of resources, the message sending frequency and the number of messages sent at a time of the business system are adjusted, so that the resource shortage of the message sending system can be alleviated immediately, ensuring the continuous and normal operation of the message sending system, and then ensuring the continuous and normal operation of the business system message sending.

[0011] In some changed implementation modes of the first aspect of the present application, the message sending frequency and the number of messages sent at a time corresponding to at least one business system are adjusted, including: determining whether the number of messages received from the target business system within a previously preset time period is greater than a preset number; if so, reducing the sending frequency and the number of messages sent at a time of the target business system according to the adjustment degree corresponding to the priority of the target business system, wherein the priority is negatively correlated with the adjustment degree; if not, determining the message sending frequency and the number of messages sent at a time of the corresponding business system according to the priority of each business system, so that the messages to be sent in the corresponding business system are sent to the corresponding message notification server according to the determined message sending frequency and the number of messages sent at a time, wherein the message sending frequency is positively correlated with the priority, the number of messages sent at a time is positively correlated with the priority, and the message sending frequency is negatively correlated with the number of messages sent at a time.

[0012] In the case of a shortage of resources in the message sending system, determine the business system that causes the shortage of resources. If it is a target business system, directly adjust the frequency of sending the target message and the number of messages sent at a time according to the priority of the target business system. If it is another business system, adjust the frequency of sending messages and the number of messages sent at a time for each business system according to the priority of each business system. In this way, different measures are taken for different business systems that cause the shortage of resources in the message sending system, which can effectively solve the problem of the shortage of resources in the message sending system and effectively ensure the continuous and normal operation of the message sending system.

[0013] In some changed implementation modes of the first aspect of the present application, the message sending frequency and the number of messages sent at a time of the corresponding business system are determined according to the priority of each business system, including: according to the priority of each business system, the message sending task of each business system is stored in the corresponding priority queue, wherein the priority queue includes a high priority queue and a low priority queue, the high priority queue can use the resources of the low priority queue, the high priority queue can send messages in real time, and the low priority queue can dynamically adjust the message sending frequency and the number of messages sent at a time according to the current amount of resources and the number of messages in the queue; for each business system in each business system, the message sending frequency and the number of messages sent at a time of each business system are determined to be the message sending frequency and the number of messages sent at a time corresponding to the corresponding priority queue of each business system.

[0014] Each business system is assigned to a high-priority queue or a low-priority queue by priority, and the high-priority queue and the low-priority queue are configured with corresponding message sending frequencies and the number of messages sent at a time, which can quickly determine the message sending frequency and the number of messages sent at a time for each business system. In addition, the high-priority queue can occupy more resources to send messages in real time, improving the efficiency of sending important messages. The low-priority queue can adjust the message sending frequency and the number of messages sent at a time according to the current situation to ensure that general messages can be sent normally and continuously. In the case of resource shortage, messages can be sent in an orderly manner.

[0015] In some changed implementation modes of the first aspect of the present application, before adopting the target sending strategy to send the target message to the target server, the method also includes: determining whether the sending time configuration item corresponding to the target message is empty; if it is empty, determining whether there is time information in the target message; if it exists, extracting the time information from the target message, and determining the sending time of the target message based on the extracted time information; if it does not exist, extracting the time information from the target sending strategy, and determining the sending time of the target message based on the extracted time information; if it is not empty, extracting the time information from the sending time configuration item, and determining the sending time of the target message based on the extracted time information.

[0016] When the user configures a sending time for a message, the target message is sent according to the sending time configured by the user, realizing flexible configuration of the sending time of each message. When the user does not configure a sending time condition for a message, if the target message contains time information, the target message is sent according to the time information. If the target message does not contain time information, the target message is sent according to the time in the target sending policy, which can reduce disturbance to the user and realize automatic sending of messages.

[0017] In some modified implementations of the first aspect of the present application, the method further includes: generating corresponding time scheduling instructions based on the extracted time information, and the time scheduling instructions are used to schedule and send the target message.

[0018] When sending messages at a scheduled time, the time information is converted into a time scheduling instruction in advance using the system's underlying scheduled scheduling syntax. When the corresponding time arrives, the message sending system can directly schedule and send the corresponding message, thereby improving the message call speed and thus improving the efficiency of message sending.

[0019] In some changed implementation modes of the first aspect of the present application, after sending the target message to the target server using the target sending strategy, the method also includes: determining whether feedback information from the target server is received, the feedback information being used to indicate that the target message has been read; if so, generating a to-do task creation request based on the target message; sending the to-do task creation request to the target server so that the target server creates a to-do task for the recipient of the target message, the to-do task being used to remind the recipient to execute the content indicated by the target message.

[0020] After the message is sent, if it is read, a to-do task will be further created through the target server to remind the user to execute it, thereby improving the execution rate of the content in the message.

[0021] In some changed implementation modes of the first aspect of the present application, after adopting the target sending strategy to send the target message to the target server, the method also includes: obtaining the associated system of the target business system, the associated system including the upstream system and / or downstream system of the target business system; determining whether the associated system is connected to the message sending system; if not, connecting the associated system with the message sending system so that the message sending system can forward the message in the associated system.

[0022] When the message sending system is not installed in the upstream system or downstream system of the business system, the message sending system in the business system can be actively shared with the upstream system or downstream system of the business system. Since the upstream system or downstream system of the business system has a certain relationship with the functions of the business system, there may also be a need to send messages. Actively sharing the functions of the message sending system with the upstream system or downstream system of the business system can enable the upstream system or downstream system of the business system to have the message sending function before the upstream system or downstream system of the business system actually needs to send messages, thereby realizing fully automated message sending.

[0023] In some changed implementation modes of the first aspect of the present application, before using the target sending strategy to send the target message to the target server, the method also includes: determining whether the number of message repetitions between the target message and the historical message based on the content is greater than a preset number, and determining whether the sender of the target message is different from the sender of the historical message, the historical message being a message that has been sent to the target server in the target business system; if both are yes, generating a focus mark for the target message, and using the target sending strategy to send the target message and its focus mark to the target server, so that the target server controls the historical messages that are the same as the target message to be displayed at the top, and adds a focus mark.

[0024] When the target business system sends a lot of repeated messages, and these messages are sent by different users in the system, it means that a common problem has occurred in the target business system and needs to be solved by the relevant personnel. At this time, the target server will no longer send repeated messages, but send the target message and its key mark. Based on the target message and its key mark, the target server will display the corresponding historical message at the top and add a key mark. In this way, the relevant personnel can be fully reminded that the message is urgent and needs to be processed as soon as possible, thereby improving the processing efficiency of important messages.

[0025] The second aspect of the present application provides a message sending system, which can be connected to at least one business system and is used to forward messages in different business systems to corresponding message notification servers according to corresponding sending strategies. The message sending system is pre-set with a first correspondence between different message types and sending strategies in each business system, as well as a second correspondence between each business system and the message notification server. The message sending system is pre-connected with at least one message notification server, and the system includes: an acquisition module, used to acquire a target message to be sent by a target business system, the target business system being a business system in at least one business system; a first determination module, used to determine a target sending strategy corresponding to the target message from the first correspondence; a second determination module, used to determine a target server corresponding to the target business system from the second correspondence; and a sending module, used to send a target message to a target server using the target sending strategy, so that the target server sends the target message.

[0026] The third aspect of the present application provides an electronic device, which includes: a processor, a memory, and a bus; wherein the processor and the memory communicate with each other through the bus; the processor is used to call program instructions in the memory to execute the method in the first aspect.

[0027] A fourth aspect of the present application provides a computer-readable storage medium, which includes: a stored program; wherein, when the program is running, the device where the storage medium is located is controlled to execute the method in the first aspect.

[0028] The message sending system provided in the second aspect, the electronic device provided in the third aspect, and the computer-readable storage medium provided in the fourth aspect of the present application have the same or similar beneficial effects as the message sending method provided in the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] By reading the detailed description below with reference to the accompanying drawings, the above and other purposes, features and advantages of the exemplary embodiments of the present application will become easy to understand. In the accompanying drawings, several embodiments of the present application are shown in an exemplary and non-limiting manner, and the same or corresponding reference numerals represent the same or corresponding parts, wherein:

[0030] Figure 1The scenario architecture of the message sending method in the embodiment of the present application is shown as follows Figure 1 ;

[0031] Figure 2 The process diagram of the message sending method in the embodiment of the present application is as follows Figure 1 ;

[0032] Figure 3 The scenario architecture of the message sending method in the embodiment of the present application is shown as follows Figure 2 ;

[0033] Figure 4 The process diagram of the message sending method in the embodiment of the present application is as follows Figure 2 ;

[0034] Figure 5 The structure of the message sending system in the embodiment of the present application is shown as follows: Figure 1 ;

[0035] Figure 6 The structure of the message sending system in the embodiment of the present application is shown as follows: Figure 2 ;

[0036] Figure 7 Schematic diagram of the structure of an electronic device in an embodiment of the present application. DETAILED DESCRIPTION

[0037] The exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present application are shown in the accompanying drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments described herein. On the contrary, these embodiments are provided in order to enable a more thorough understanding of the present application and to fully convey the scope of the present application to those skilled in the art.

[0038] It should be noted that, unless otherwise specified, the technical terms or scientific terms used in this application should have the common meanings understood by technicians in the field to which this application belongs.

[0039] At present, if a business system wants to send messages outward, it needs to be redeveloped. The secondary development of the business system needs to go through a series of development processes, such as: submitting requirements - writing code - testing - launching, etc. In addition, different business systems need to connect to the servers of corresponding message notification service providers due to different notification requirements. All of these will consume a lot of time, increase the development and maintenance costs of business system message notifications, and reduce the configuration and sending efficiency of business system messages.

[0040] In view of this, embodiments of the present application provide a message sending method, system, electronic device, and storage medium. Some embodiments pre-provide a message sending system with full message sending functions. The message sending system can be embedded in a business system. When a business system has a message outbound demand, the user of the business system can select or fill in the message sending strategy in the user interface of the message sending system, and the message in the business system can be sent to the designated user through the preset channel. Compared with the secondary development of the system, sending messages to users of various business systems through program embedding and interface configuration saves time and effort, and can improve the configuration and sending efficiency of business system messages.

[0041] The following describes the application scenarios of the message sending method provided in the embodiments of the present application.

[0042] Figure 1 The scenario architecture of the message sending method in the embodiment of the present application is shown as follows Figure 1 , see Figure 1 As shown, the architecture may include: at least one business system 11, a message sending system 12 and at least one message notification server 13. The message sending system 12 is connected to the at least one business system 11 and the at least one message notification server 13 respectively.

[0043] The business system 11 may refer to a system that can implement a specific business, such as a ticket booking system, an enterprise portal system, a financial system, etc. When at least one business system 11 is a plurality of business systems 11, the plurality of business systems 11 may refer to a plurality of independent business systems 11, such as systems of a plurality of enterprises managed by a third-party operation and maintenance personnel, or may refer to a plurality of related systems, such as systems used by various departments within an enterprise.

[0044] The message notification server 13 may refer to a server that implements the message notification function, such as an internal server of an enterprise (corresponding to the enterprise's portal website, various business systems, etc.), a server for text messages, emails, and instant messaging tools.

[0045] The message sending system 12 can be a pre-developed program with a message forwarding function, and is pre-connected with at least one business system 11 and at least one message notification server 13. The user of the business system 11 can configure the sending strategy and the message notification server 13 in the user interface of the message sending system 12. In this way, a first correspondence between the business system 11 and the sending strategy (sending time, sending object, etc.) and a second correspondence between the business system 11 and the message notification server 13 (sending channel) are established. For example: office system-every Monday at 9 am and all employees, office system-portal website. Another example: financial system-every Friday at 5 pm and human resources specialist, financial system-mailbox.

[0046] After the message sending system 12 is connected to multiple business systems 11, when a business system 11 generates a message to be sent, the business system 11 will send its identifier and message to the message sending system 12. The message sending system 12 determines the sending strategy of the business system 11 and the corresponding message notification server 13 based on the pre-configured correspondence, and then sends the message to the corresponding message notification server 13 according to the determined sending strategy, so that the corresponding message notification server 13 sends the message to the corresponding recipient in real time. In this way, the business system 11 can perform message notification through the message sending system 12.

[0047] Next, the message sending method provided in the embodiment of the present application is described in detail.

[0048] Figure 2 The process diagram of the message sending method in the embodiment of the present application is as follows Figure 1 , the message sending method is applied to the message sending system, see Figure 2 As shown, the method may include S21-S24.

[0049] S21: Obtain a target message to be sent by a target business system, where the target business system is a business system in at least one business system.

[0050] After the target business system generates a target message to be sent, it can actively send the target message to the message sending system, and the message sending system obtains the target message.

[0051] Alternatively, the message sending system monitors the target business system, and when the target business system is monitored to trigger a preset condition, the information generated when the preset condition is triggered is obtained from the target business system, and a target message is generated based on the obtained information, that is, the target message is obtained. The preset condition here can be determined according to the message content that the business system actually needs to notify, and the embodiments of the present application are not limited. For example: the target business system is a log monitoring system, and the message sending system monitors the log monitoring system. When the log monitoring system detects that the log is abnormal, the log content when the log is abnormal is obtained, and then an alarm message is generated, that is, an alarm message is obtained. For another example: the target business system is a memory monitoring system, and the message sending system monitors the memory monitoring system. When the memory monitoring system detects that the memory exceeds the standard, the memory amount when the memory exceeds the standard is obtained, and then an alarm message is generated, that is, an alarm message is obtained.

[0052] S22: Determine a target sending strategy corresponding to the target message from the first corresponding relationship.

[0053] The sending strategy may include the time when the message is sent and the recipient of the message (also known as the message recipient information or the message recipient). For example, the sending strategy may be to send the message to all employees in real time. Another example is to send the message to the employees of the XX department at 8 am every Monday.

[0054] In the first correspondence, the business system manager pre-configures the correspondence between different message types and corresponding sending strategies. The message type can refer to the type of message, such as: all-staff notification message, personal salary details message, etc., or it can refer to the job type or employee level of the message initiator, such as: personnel, finance, research and development, legal affairs, etc. Another example: level 1, level 10, etc. Different message types have different corresponding message sending times, message sending objects and other sending strategies. For example: for all-staff notification messages, they are sent to all employees every Monday at 10 am. Another example: for messages from the human resources department, they need to be sent to all employees in real time.

[0055] After the message sending system obtains the target message, it can perform type analysis on the target message (specifically, it can be identified by keywords in the message itself, or the message sender can write the message type in the message notes), determine the message type of the target message, and then determine the sending strategy corresponding to the message type from the first corresponding relationship. The message sending system pre-stores different message types and their corresponding sending strategies in each business system, which can avoid the business system user configuring a sending strategy every time they send a message, thereby improving the efficiency of message sending.

[0056] S23: Determine the target server corresponding to the target business system from the second corresponding relationship.

[0057] In the second corresponding relationship, the business system administrator pre-configures different business system identifiers and their corresponding message notification server identifiers. After the message sending system obtains the target message, it traces the system that sent the message through the target message to determine the system identifier, and then determines the message notification server identifier corresponding to the business system of the system identifier in the second corresponding relationship, thereby determining which message notification server the target message needs to be notified through through the server identifier.

[0058] In actual applications, an identifier can refer to the name of a device or an apparatus, or it can refer to the serial number of a device or an apparatus. Among them, the device or apparatus includes a business system and a message notification server. It should be noted here that the serial numbers used by the business system and the message notification server are different. For example, the message notification server uses serial numbers such as 1, 2, and 3, while the business system needs to use serial numbers such as a, b, and c. The use of serial numbers for identifiers can not only improve the matching efficiency, thereby improving the determination of the target server and ultimately improving the efficiency of message sending, but also avoid the probability of leakage of the business system and the message notification channel in the message sending system, and improve the security of business system information.

[0059] It should be noted here that step S22 and step S23 can be executed simultaneously to improve the efficiency of message sending, or can be executed asynchronously, which is not limited here.

[0060] S24: Send the target message to the target server using the target sending strategy, so that the target server sends the target message.

[0061] After determining the target sending strategy and target server, the message sending system can first determine the message sending time and the message sending object from the target sending strategy, and then send the target message and the information of the message sending object to the target server at the message sending time, so that the target server can send the target message to the correct object at the correct time according to the information of the message sending object, thereby realizing accurate notification of messages in the business system.

[0062] It should be noted here that for important target messages, you can focus on notification. For example, for "big events of the company", you need to ensure that all employees can check them, and you can force a pop-up window or scrolling playback of the target message on the enterprise portal website.

[0063] It can be seen from the above content that the message sending method provided in the embodiment of the present application develops a message sending system, which can realize the function of message forwarding, and the system has been pre-connected with various message notification servers, and can realize message sending in various channels. When a business system needs to implement the message sending function, the message sending system is installed in the business system, and then the business system user performs simple configuration such as sending strategy in the message sending system to realize the message sending of the business system. After installing the system and configuring the sending strategy, the cost of development and maintenance is significantly reduced compared to the secondary development of the system, and therefore, the configuration and sending efficiency of the business system messages can be improved.

[0064] In some embodiments, as a Figure 2 As a refinement and extension of the method shown, an embodiment of the present application also provides a message sending method.

[0065] Figure 3The scenario architecture of the message sending method in the embodiment of the present application is shown as follows Figure 2 , see Figure 3 As shown, the message sending system may include: a server 121 and a client 122 .

[0066] In actual use, the client 122 is embedded in each business system 11, and the server 121 is located in the designated server 14. The designated server 14 here is the server of the message sending system service provider, which can be a private server or a public cloud server.

[0067] After the client 122 is embedded in the business system 11, the administrator of the business system 11 can configure the sending strategy of the business system 11 and specify the message notification server 13 through the user interface provided by the client 122. After the business system 11 generates the target message to be sent, the target message is sent to the server 121 through the client 122. The server 121 sends the message to the specified message notification server 13 based on the sending strategy configured for the business system 11, and the message notification of the business system 11 is implemented through the specified message notification server 13. The user interface here is for information configuration, and there is no professional code editing. Therefore, non-professionals can also operate it, which reduces the difficulty of configuring business system message notifications.

[0068] Figure 4 The process diagram of the message sending method in the embodiment of the present application is as follows Figure 2 , see Figure 4 As shown, the method may include:

[0069] S41: Obtain a target message to be sent by a target business system, where the target business system is a business system in at least one business system.

[0070] The specific implementation method of step S41 is the same as that of step S21 in the above embodiment, and will not be repeated here.

[0071] After the message sending system obtains the target message, it also needs to determine the frequency of subsequent message sending and the number of messages to be sent at a time based on the current resource utilization of the server to ensure the stable operation of the message sending system in real time. Of course, the target message can also be sent directly.

[0072] S42: Determine whether the resource utilization rate of the message sending system is greater than a preset utilization rate. If yes, execute S43; if no, execute S44.

[0073] In some embodiments, the business system sends the target message to the server of the message sending system through the client of the message sending system, and then controls the sending of the target message through the server. Therefore, what is actually judged here is the resource utilization of the server in the message sending system. In other embodiments, if the client of the message sending system controls the sending of the target message, and the server only forwards the message, then what is judged here is the resource utilization of the client in the message sending system, that is, the resource utilization of the device where the business system is located.

[0074] Resource utilization may refer to CPU utilization, memory utilization, data processing speed, etc. The preset utilization is the limit for distinguishing whether the message sending system is overloaded, and can be set according to actual conditions.

[0075] S43: Adjust the message sending frequency and the number of messages sent at a time corresponding to at least one business system, so that the resource utilization rate of the message sending system is less than or equal to a preset utilization rate.

[0076] When the resource utilization rate of the message sending system is greater than the preset utilization rate, it means that the current operation burden of the message sending system is large and it is necessary to reduce the operation burden of the message sending system. Specifically, the message sending frequency and the number of messages sent at a time of the message sending system can be reduced. The message sending system is responsible for sending messages to multiple business systems, so the message sending frequency or the number of messages sent at a time corresponding to some or all business systems can be reduced.

[0077] Specifically, the above step S43 may include:

[0078] Step A1: Determine whether the number of messages received from the target business system within the previously preset period is greater than the preset number. If yes, execute step A2; if no, execute step A3.

[0079] Sometimes, a business system sends a large number of messages in a short period of time, resulting in high system resource utilization. In this case, you can limit the flow of messages sent by this business system to reduce the impact on message sending in other business systems.

[0080] The preset time period and preset number here can be set according to the actual situation. When the number of messages of the target business system in the previous preset time period is greater than the preset number, it means that the system resource utilization is insufficient, which is caused by the target business system sending a large number of messages in a short period of time. The message sending frequency and the number of messages sent at a time of the target business system can be adjusted. When the number of messages of the target business system in the previous preset time period is less than or equal to the preset number, it means that the system resource utilization is insufficient, which is caused by the overall sending of messages by multiple business systems. It is necessary to adjust the message sending frequency and the number of messages sent at a time of the currently used business system.

[0081] Step A2: according to the adjustment degree corresponding to the priority of the target business system, reduce the message sending frequency and the number of messages sent at a time of the target business system, wherein the priority is negatively correlated with the adjustment degree.

[0082] The target business system will have a corresponding level in the priority level of the message sending system. Different levels correspond to different degrees of adjustment. The higher the level, the lower the degree of adjustment.

[0083] For example, the message sending system has three priorities, with the first level being the highest priority and the third level being the lowest priority. The first level corresponds to a 2-unit reduction in the adjustment frequency and a 10-unit reduction in the quantity, the second level corresponds to a 10-unit reduction in the adjustment frequency and a 20-unit reduction in the quantity, and the third level corresponds to a 50-unit reduction in the adjustment frequency and a 30-unit reduction in the quantity. Assume that the target system priority is the first level, and currently 50 messages are sent every 1 second. After that, the message sending is adjusted to 40 messages every 3 seconds.

[0084] Step A3: According to the priority of each business system, determine the message sending frequency and the number of messages sent at a time of the corresponding business system, so that the messages to be sent in the corresponding business system are sent to the corresponding message notification server in sequence according to the determined message sending frequency and the number of messages sent at a time, wherein the message sending frequency is positively correlated with the priority, the number of messages sent at a time is positively correlated with the priority, and the message sending frequency is negatively correlated with the number of messages sent at a time.

[0085] Different business systems will have a corresponding level in the priority level of the message sending system. The higher the level, the higher the message sending frequency and the number of messages sent at a time. In one embodiment, a balance needs to be made between the message sending frequency and the number of messages sent at a time, that is, the message sending frequency and the number of messages sent at a time may not be too high at the same time, so as to avoid occupying too much resources of other business systems and affecting the normal sending of messages of other business systems.

[0086] Based on the priority of each business system currently in use, the message sending frequency and the number of messages sent at a time are redefined for each business system, so that the message sending system can reasonably allocate the corresponding message sending frequency and the number of messages sent at a time to each business system according to the priority of all business systems currently in use, while ensuring the normal operation of the message sending system and ensuring that the messages of each business system can be sent.

[0087] In order to improve the efficiency of determining the message sending frequency and the number of messages sent at a time, multiple queues can be pre-configured. Different queues have different priorities, and thus have different message sending frequencies and message sending numbers. After the business system is bound to the corresponding queue based on the priority, the message sending frequency and message sending number corresponding to the queue are the message sending frequency and message sending number corresponding to the corresponding business system.

[0088] In order to further improve the determination efficiency, two queues can be configured, namely a high priority queue and a low priority queue. The priority corresponding to the high priority queue is higher than the preset priority, and the priority corresponding to the low priority queue is lower than or equal to the preset priority. The preset priority can be set according to actual needs, and the embodiment of the present application is not limited. The high priority queue can use the resources of the low priority queue, the high priority queue can send messages in real time, and the low priority queue can dynamically adjust the message sending frequency and the number of messages sent at a time according to the number of current messages in the queue. In this way, based on the priority of the business system, the business system is bound to the corresponding queue. If the business system is bound to the high priority queue, the message sending frequency corresponding to the business system is real-time sending, and the number of messages sent at a time can be considered as unlimited, or a larger threshold, because if the business system corresponding to the high priority queue sends a large number of messages in real time, it can partially occupy the resources of the business system corresponding to the low priority queue. If the business system is bound to the low priority queue, the message sending frequency and the number of messages sent at a time corresponding to the business system need to be dynamically adjusted according to the current resource amount and message number of the low priority queue.

[0089] Regardless of whether it is a high priority queue or a low priority queue, the queue stores tasks for the business system to send messages to the message notification server.

[0090] In some cases, the current task volume in the high-priority queue is large. In order to ensure that high-priority messages can be sent efficiently, part of the resources pre-configured for the low-priority queue can be transferred to the high-priority queue. In this way, the high-priority queue has more available resources, and can realize the real-time sending of more messages at the same time, ensuring the sending efficiency of high-priority messages.

[0091] In some cases, the currently available resources of the low-priority queue are insufficient to provide for the simultaneous execution of the tasks in it. In this case, the message sending frequency and the number of messages sent at a time can be dynamically adjusted according to the current amount of resources and the number of messages in the queue. The fewer the current amount of resources and the more messages there are, the lower the message sending frequency and the fewer messages sent at a time. The specific degree of increase or decrease can be adjusted according to the actual situation.

[0092] For example, for a low-priority queue, the current amount of resources is sufficient to execute 10 tasks at the same time, that is, to send 10 messages at the same time. However, there are currently 30 tasks stored in the queue to be executed, that is, 30 messages need to be sent in the future. At this time, the original configuration of sending 10 messages every 5 seconds in the low-priority queue can be changed to sending 8 messages every 5 seconds, or sending 10 messages every 6 seconds, or sending 1 message every 1 second, etc.

[0093] The business system messages are sent to the message notification server according to the message sending frequency and the number of messages sent at a time obtained in this way, which enables the message sending system to make reasonable resource utilization and ensure that the message sending is carried out in an orderly and efficient manner.

[0094] Specifically, the above step A3 may include:

[0095] Step A31: According to the priority of each business system, the message sending task of each business system is stored in the corresponding priority queue.

[0096] Each business system has a specific priority. A high priority queue corresponds to a specific priority interval. A low priority queue corresponds to a specific priority interval. After obtaining the specific priority of the business system, the specific priority interval in which the specific priority is located is determined, and then the priority queue corresponding to the specific priority interval is determined, so that the message sending task of the business system is stored in the priority queue.

[0097] For example, the business system corresponds to level 1, the high priority queue corresponds to level 1-2, and the low priority queue corresponds to level 3-4. At this time, it can be determined that the business system corresponds to the high priority queue, so that each message sending task of the business system is stored in the high priority queue.

[0098] Step A32: for each business system in each business system, determine the message sending frequency and the number of messages sent at a time for each business system as the message sending frequency and the number of messages sent at a time corresponding to the corresponding priority queue of each business system.

[0099] In certain embodiments of the present application, each business system corresponds to a high priority queue or a low priority queue. For a business system corresponding to a high priority queue, its corresponding message sending frequency and number of messages sent at a time are the message sending frequency and number of messages sent at a time corresponding to the high priority queue. For a business system corresponding to a low priority queue, its corresponding message sending frequency and number of messages sent at a time are the message sending frequency and number of messages sent at a time corresponding to the low priority queue.

[0100] For example: Business system 1 corresponds to a high priority queue, business system 2 corresponds to a low priority queue, and business system 3 corresponds to a low priority queue. The message sending frequency and number of messages sent at a time corresponding to the high priority queue are real-time unlimited sending. The message sending frequency and number of messages sent at a time corresponding to the low priority queue are 10 messages sent every 5 seconds. Then, the message sending frequency and number of messages sent at a time corresponding to business system 1 are real-time unlimited sending. The message sending frequency and number of messages sent at a time corresponding to business systems 2 and 3 are 10 messages sent every 5 seconds.

[0101] When the embodiment of the present application determines the message sending frequency and the number of messages sent at a single time of the business system, it no longer calculates and determines from scratch based on the specific parameters of the business system. Instead, it uses the message sending frequency and the number of messages sent at a single time pre-configured in the priority queue corresponding to the business system. This can save resource consumption generated by calculation and improve the efficiency of determining the message sending frequency and the number of messages sent at a single time.

[0102] After the message sending frequency and the number of messages sent at a time are redetermined, preparations for message sending may be continued according to the redetermined message sending frequency and the number of messages sent at a time.

[0103] When the resource utilization of the message sending system is less than or equal to the preset utilization, it indicates that the message sending system is currently operating normally, and the preparation work for message sending can continue according to the original message sending frequency and the number of messages sent at a time.

[0104] S44: Determine a target sending strategy corresponding to the target message from the first corresponding relationship.

[0105] S45: Determine the target server corresponding to the target business system from the second corresponding relationship.

[0106] The specific implementation methods of steps S44 and S45 are the same as those of steps S22 and S23 in the aforementioned embodiment, and will not be repeated here.

[0107] In some embodiments, the client of the message sending system is also configured with a sending time configuration item. Although the sending policy is generally configured with a sending time, the sending time configured in the sending policy is the sending time configured in general circumstances. If the business system has a personalized sending time requirement for a message sent at a time, at this time, the personalized configuration of the sending time of a message can be realized through the sending time configuration item, which improves the flexibility of message sending.

[0108] S46: Determine whether the sending time configuration item corresponding to the target message is empty. If so, execute S47; if not, execute S410.

[0109] In the interface provided by the message sending system client, there is also a sending time configuration item. If the message to be sent has a sending time different from the sending policy, the business system user can enter the sending time in the sending time configuration item and mark the message ID corresponding to the sending time. In this way, the corresponding message will be sent at the sending time, realizing personalized message sending.

[0110] S47: Determine whether the target message contains time information. If yes, execute S48; if no, execute S49.

[0111] If the Send Time configuration item is empty, it means that the business system user has not entered a separate send time for the target message, but this does not mean that the target message does not need to be sent according to the personalized time. Sometimes, the personalized send time is included in the target message. Therefore, you need to check whether there is time information in the target message.

[0112] In the specific judgment, it is possible to find out whether there is a time feature in the target message. The time feature can be a character combination that can represent the time, such as: Monday, morning, eight o'clock, 8:00, etc.

[0113] S48: Extracting time information from the target message, and determining the sending time of the target message based on the extracted time information.

[0114] S49: extracting time information from the target sending policy, and determining the sending time of the target message based on the extracted time information.

[0115] S410: extracting time information from the sending time configuration item, and determining the sending time of the target message based on the extracted time information.

[0116] That is, if the time information can be obtained from the sending time configuration item, the target message is prepared to be sent according to the time information. If the time information cannot be obtained from the sending time configuration item, the time information is obtained from the target message itself, and the target message is prepared to be sent according to the time information. If the time information cannot be obtained from the target message, the target message is finally prepared to be sent according to the sending time information in the target sending policy. That is, the sending time is selected in the order of the sending time configuration item, the target message, and the target sending policy.

[0117] S411: Generate a corresponding time scheduling instruction based on the extracted time information, where the time scheduling instruction is used to schedule and send a target message.

[0118] The time scheduling instructions here use the timing scheduling syntax of the operating system's bottom layer, such as cron expressions, rather than the timing scheduling syntax of the operating system's application layer, such as cron commands. Using the timing scheduling syntax of the operating system's bottom layer allows the target message to be sent immediately after the timing ends, saving the step of sending commands from the application layer to the bottom layer, and improving the efficiency of message sending.

[0119] In some embodiments, the target business system will generate a large number of identical messages in a short period of time. If all of them are notified, it will cause trouble to the message recipient. If the notification of subsequent messages is reduced, the message recipient will underestimate the severity of the message. Therefore, when the number of repeated messages reaches a certain number and the senders of the repeated messages are different, the repeated messages are pinned to the top and displayed with an important mark. While reducing the disturbance to the message recipient, it can achieve another reminder of important messages. For example: a bug occurs in a function of the business system, and users who use this function will send an error message to the administrator. If all messages are sent normally, the administrator will receive a large number of messages, forming a message storm. At this time, if a large number of repeated messages are no longer sent, the administrator will merge, pin, and display the small number of repeated messages previously received by the administrator with important marks. This can not only avoid message storms, but also enable the administrator to see the message first and obtain the message as more important, so as to give priority to processing and ensure that important messages are executed first.

[0120] In some embodiments, the important mark may be the number of message repetitions, or may be a content summary of the repeated message (eg, error reporting). This embodiment does not limit the specific content of the important mark.

[0121] S412: Determine whether the number of repeated messages based on the content of the target message and the historical message is greater than a preset number, and determine whether the sender of the target message is different from the sender of the historical message, and the historical message is a message that has been sent to the target server in the target business system. If both are yes, execute S413, if at least one is no, execute S414.

[0122] After the message sending system sends the message to the message notification server, it will also store and back up the message. During the backup, a correspondence between the message-business system-sender is established. After the message sending system obtains the next message, that is, the target message, it will compare it in the backup. First, search for messages with the same content as the target message in the backup, and determine the number of identical messages. Then, determine whether the number is greater than the preset number. If greater, obtain the sender of the message with the same content from the backup and compare it with the sender of the target message. If the comparison is consistent, determine that the first judgment result in S412 is yes, and the second judgment result is no. If the comparison is inconsistent, determine that the first judgment result in S412 is yes, and the second judgment result is yes. If less than or equal to, determine that the first judgment result in S412 is no, and there is no need to perform the second judgment.

[0123] The message duplication mentioned above may refer to the duplication of the content of the message, that is, the duplication of the text of the specific matter description, or the same semantics. If the text of the specific matter description in the message is consistent, or the similarity is greater than a preset degree, it can be considered a duplication.

[0124] S413: Generate a focus mark for the target message, and use a target sending strategy to send the target message and its focus mark to the target server, so that the target server controls the top display of the same historical message as the target message and adds the focus mark.

[0125] That is to say, the message sending system sends the duplicate target message and emphasis mark to the target server. When the target server receives the emphasis mark, it will no longer send the target message directly to the message recipient, but will search for the same message as the target message in the sent message backup, and send a request message to the message receiving system of the message recipient (for example: mailbox, SMS application, etc.). The request information is used to request that the same message be displayed at the top and an emphasis mark be added to the same message. Based on the request information, the message receiving system will display the same message at the top and add an emphasis mark to the same message. The next time the message recipient checks the message receiving system, he will be able to view the message and the emphasis mark, thereby determining that the message is more important and needs to be processed as a priority.

[0126] S414: Send the target message to the target server using the target sending strategy, so that the target server sends the target message.

[0127] The specific implementation method of this step S414 is the same as that of step S24 in the above embodiment, and will not be repeated here.

[0128] After sending the target message to the target server, in order to improve the execution rate of the target message, after determining that the target message has been read by the recipient, a to-do task corresponding to the target message may be created for the recipient.

[0129] The above steps S42-S43, S44, S45, S46-S411, S412-S414 can be executed simultaneously to improve the efficiency of message sending, or can be executed asynchronously, which is not limited here.

[0130] S415: Determine whether feedback information from the target server has been received, where the feedback information is used to indicate that the target message has been read. If yes, execute S416; if no, execute S417.

[0131] After the message sending system sends the target message to the target server, the target server receives the target message and notifies the corresponding message recipient of the target message. If the message recipient clicks on the notification, or stays on the target message for a few seconds, the target server will detect it. At this time, the target server will feedback to the message sending system that the target message has been read. After sending the target message, the message sending system can determine whether the target message has been read by the corresponding message recipient by judging whether the target message has been read within a preset time period, or judging whether the feedback information containing the read indication has been received. Otherwise, it is determined that the target message has not been read by the corresponding message recipient.

[0132] S416: Generate a pending task creation request based on the target message, and send the pending task creation request to the target server, so that the target server creates a pending task for the recipient of the target message, and the pending task is used to remind the message recipient to execute the target message. The recipient of the target message is the message recipient.

[0133] After confirming that the target message has been read, the message sending system can create a to-do task for the target message, that is, generate a to-do task creation request, which includes the content to be executed in the target message, and then send the request to the target server so that the target server can create a to-do task corresponding to the target message for the corresponding message recipient, and remind the message recipient to execute the content to be executed contained in the target message through the to-do task.

[0134] The to-do tasks created by the target server are still displayed to the message recipient through the message channel corresponding to the target server. For example, the target message is sent to the message recipient via SMS, and the to-do tasks are created in the SMS. However, some message channels generally do not have the function of to-do tasks. For example, to-do tasks cannot be created in SMS. In this case, if the application permissions in the message recipient's terminal allow, to-do tasks can be created in the itinerary application or an application with to-do task function to further remind the message recipient to pay attention to the content of the target message instructions.

[0135] Sometimes, sending a message to the target server does not mean that the target server has received the target message. Therefore, it is necessary to confirm whether the target message is sent successfully. If the message fails to be sent successfully for multiple times, check the network of the message sending system or replace the message notification server to ensure that the target message can be successfully notified.

[0136] S417: Send the target message to the designated server, so that the designated server sends the target message.

[0137] The designated server can be any message notification server connected to the message sending system. When the target message is sent repeatedly, the designated server is the target server. When the target message is sent through a different channel, the designated server is one or more servers other than the target server among all servers connected to the message sending system.

[0138] Specifically, the above step S417 may include:

[0139] Step B1: According to the response of the target server, determine whether the target message is sent successfully. If yes, execute step B2; if no, execute step B3.

[0140] Generally speaking, after receiving the target message, the target server will respond to the message sending system, that is, to the message sending system. If the message sending system does not receive the message receiving feedback after sending the target message, it is determined that the target message has not been sent successfully. If the message sending system receives the message receiving feedback after sending the target message, it is determined that the target message has been sent successfully.

[0141] Step B2: End the notification of this target message.

[0142] Step B3: Use the target sending strategy to send the target message to the target server again. When the target message is still not sent successfully after reaching the preset number of sending times, it is determined whether the network of the message sending system is normal, or the target message is sent to the designated server, and the other server is at least one server other than the target server in the multiple message notification servers. If it is determined to be normal, step B4 is executed, and if it is determined to be abnormal, step B5 is executed.

[0143] That is to say, if the number of failures in sending the target message to the target server reaches a certain number, it means that the failure is not caused by an accidental error in sending, and the target message will no longer be sent. Instead, check whether the network of the message sending system is normal, or directly replace it with another designated message notification server to send the target message.

[0144] When checking whether the network of the message sending system is normal, the message sending system can send a test message to other terminals or programs with normal networks. If other terminals or programs can receive the test message, it is determined that the network of the message sending system is normal. If other terminals or programs do not receive the test message, it is determined that the network of the message sending system is abnormal. Of course, it is also possible to determine whether the message sending system is normal by checking whether the network parameters of the message sending system, such as upload rate, download rate, etc., are continuously less than a preset threshold.

[0145] When replacing the designated message notification server, you can select one or more servers with the highest priority according to the priority order of the multiple message notification servers connected to the message sending system, or you can select the message notification server (except the target server) that has been used most frequently by the target message recipient in history to ensure that the target message can actually be notified.

[0146] Step B4: Send a message to the administrator of the target server to notify the administrator of the abnormality.

[0147] The message sending system fails to send the target message to the target server for many times, while the network of the message sending system is normal, indicating that there is a problem with the target server. At this time, a message sending exception prompt is sent to the administrator of the target server, so that the administrator of the target server can promptly fix the problem of not being able to receive messages, so that the target message can be notified as soon as possible.

[0148] Step B5: After a preset time interval, it is determined whether the network of the message sending system is normal. When it is determined that the network is normal, the target sending strategy is used again to send the target message to the target server.

[0149] In the case of a network anomaly in the message sending system, no message in the system can be sent. At this time, no attempt to send any message will be made, saving the system's use of resources, and constantly judging whether the network has returned to normal (provided that relevant personnel have been notified to restore the network). If it is determined that the network has returned to normal, the target message will be sent in a timely manner so that the target message can be notified as soon as possible.

[0150] While the target business system implements message notification, if the associated system of the target business system does not yet have the message notification function, the associated system of the target business system can also be connected to the message sending system to implement message notification for the entire ecological chain of the business system.

[0151] S418: Acquire the associated systems of the target business system, where the associated systems include the upstream system and / or downstream system of the target business system.

[0152] The upstream system here may refer to a system that provides data or services to the target business system. The downstream system here may refer to a system that the target business system provides data or services to.

[0153] The target business system can actively provide its associated system to the message sending system so that the message sending system can obtain the associated system of the target business system. The message sending system can also find the relevant system identifier from the historical messages sent by the target business system to obtain the associated system of the target business system.

[0154] If the associated systems of the target business system can be obtained, the subsequent steps can be continued. If the associated systems of the target business system cannot be obtained, it means that the target business system is running independently with a certain probability and there is no interaction with other systems, so the process ends and no subsequent steps are performed.

[0155] S419: Determine whether the associated system is connected to a message sending system. If yes, then end; if no, then execute S420.

[0156] The message sending system will record any business system that is connected to the message sending system. After the message sending system obtains the associated system of the target business system, in some embodiments, it can search in the record whether the associated system exists. If it exists, it means that the associated system of the target business system has been connected to the message sending system, and no connection operation is required. If it does not exist, it means that the associated system of the target business system has not been connected to the message sending system, and the associated system can be connected to the message sending system.

[0157] In other embodiments, the executable file and / or configuration file of the message sending system may also be searched in the associated system. The executable file or configuration file is used to deploy the message sending system. If the executable file and / or configuration file of the message sending system is found in the associated system, it is determined that the associated system of the target business system has been connected to the message sending system. If the executable file and / or configuration file of the message sending system is not found in the associated system, it is determined that the associated system of the target business system has not been connected to the message sending system.

[0158] S420: Connecting the associated system with the message sending system so that the message sending system can forward the message in the associated system.

[0159] During specific docking, the message sending system can send an executable file and / or configuration file to the associated system through the target business system. The executable file or configuration file is used to deploy the message sending system. The executable file or configuration file includes an automatic installation instruction. The automatic installation instruction is used to start the executable file or configuration file to install the message sending system. After the associated system receives the executable file or configuration file, the automatic installation instruction in the executable file or configuration file can control the automatic installation of the message sending system in the associated system. In one embodiment, the message sending system sends a transmission instruction to the target business system, and the instruction includes an upstream system identifier, a downstream system identifier, and an executable file and configuration file for deploying the message sending system. After the target business system receives the transmission instruction, it parses the transmission instruction to obtain the upstream system identifier and the downstream system identifier; the target business system transmits the executable file and configuration file to the upstream system represented by the upstream system identifier, so that the upstream system starts the executable file and configuration file, thereby installing the message sending system in the upstream system. The target business system also transmits the executable file and configuration file to the downstream system represented by the downstream system identifier, so that the downstream system starts the executable file and configuration file, thereby installing the message sending system in the downstream system.

[0160] After the server of the message sending system determines the upstream and downstream systems to be connected, it can send an executable file or a configuration file to the client of the target business system, so that the target business system sends the executable file or the configuration file to the upstream and downstream systems.

[0161] In addition, the message sending system can also realize some functions other than the above functions, as follows:

[0162] 1. Message withdrawal

[0163] For the sent message, a unique number is added. If it needs to be withdrawn, a request can be sent to the downstream system that displays the message. Based on the unique number, the notification status can be changed to "deleted, withdrawn" to prevent users from seeing it again.

[0164] 2. Message Receipt

[0165] After the message is sent, the user sees the message and is reminded that a receipt is required. He clicks the "Confirm" button. The system records the user's feedback and maintains the underlying status of the message.

[0166] 3. Permissions

[0167] For each push channel such as SMS, email, and instant messaging tools, if the user has permission, it will be marked as "yes / yes"; if the user does not have permission, it will be maintained as "no / no" to prevent the user from calling. If the user calls, it will be prompted with words such as "no permission".

[0168] 4. Whether to enable

[0169] Whether it is enabled is similar to whether it has permission. Whether it has permission is maintained by the system and whether the access party has permission. Whether it is enabled is provided to the access party for use. For example, if a business system fails or a special situation occurs, it is convenient to temporarily stop a certain capability.

[0170] 5. Signature

[0171] 6. Environment

[0172] The signature and the environment to which it belongs can be separated into two fields using one text for greater clarity.

[0173] The signature lets users know which system or application pushed the information.

[0174] In order to allow developers and other groups to use it better in non-production environments such as testing / pre-release, an environment option has been added. Use text words such as "test / test" and "pre / pre-release" to distinguish them. For example: On Saturday, an employee was resting at home and suddenly received a text message "[EHR system] XX, you have successfully initiated a resignation application...". The employee did not actually submit a resignation application, so the employee would be confused. In fact, on Saturday, a colleague was testing the function of [electronic signature] and the test environment, using XX's account for testing. However, the text of the text message did not show that it was a test environment, which caused panic to the person involved. If the environment option is added and the text "test / test" is added to the environment option. The text message received by the employee will contain the word "test / test". The employee will be able to know that the resignation application notification text message received is a test text message, eliminating panic.

[0175] 7. Whether to forward

[0176] In a non-production environment, a message cannot be sent directly to the real recipient of the message. If a test message is pushed to the real recipient, it will cause adverse consequences. The forwarding option controls whether the message is sent to the real recipient or the system developer.

[0177] 8. Copy, Blind Copy (or Blind Copy)

[0178] Similar to sending emails, this system also has the "CC / BCC" capability, and the standard communication interface provides these two fields. For a message sent to A, the recipient can add additional CCs (which the user can know) and BCCs (which the user cannot know).

[0179] 9. Maintain several fields

[0180] The time the message was received, the "creation time".

[0181] Whether the message is sent successfully, the sign of success is: the API of email, instant messaging tools, etc. returns a status of "success". In areas such as SMS sending, the interface returning "success" does not mean "ultimately 100% successful", and it is necessary to call the "SMS provider's query interface to query the final status".

[0182] 10. Copy

[0183] Sometimes, it is necessary to test the sending capabilities of some channels. Manually creating data and calling interfaces to pass parameters is too inefficient and not realistic enough. This system can copy 1 copy based on historical messages, and then modify fields such as "message content, recipient" for quick testing.

[0184] 11. View History

[0185] All the detailed data such as sending records, sending status, number of retries, etc. of emails, SMS, instant messaging tools, etc. are open to the corresponding access parties. Through the control permissions such as project code and module code provided by the access party,

[0186] 12. Import

[0187] Supports importing messages that need to be executed regularly in the form of tables, etc. The import must include the cron execution time and personnel (department ID, employee ID).

[0188] 13. Card and action processing

[0189] Ordinary messages are plain text messages that lack interaction. Some are rich text messages, such as short messages, which can have pictures or links, which are more enhanced. This system supports "card messages" to support more convenient interaction.

[0190] The message content is not only pure display content, but also reserves some extensible parameters. When the user clicks buttons such as "Accept" and "Confirm", some API interface URLs can be called to complete the transmission of information such as "Agree", "Got it", and "Accepted".

[0191] 14. Failure notification

[0192] According to the user's retry strategy, when the number of retries reaches a certain number, it is considered as "sending failure" and a "reminder" is immediately sent to the relevant person.

[0193] 15. Ciphertext transmission

[0194] The email account and password of each business system, the secret key of the instant messaging tool, etc. can be encrypted and stored in this system, or dynamically transferred to the encrypted specific account by the connected business system. When the message is actually sent, it is decrypted by the secret key to ensure a certain degree of security.

[0195] In addition to the message content, a unique value is generated for the external message content, such as the md5 value (based on the message content, recipient, and secret key sign value). If the md5 values ​​are the same, it means the content is safe and has not been tampered with.

[0196] For example, offer emails include sensitive information such as salary. The business system transmits the encrypted content to this system, decrypts it, and then sends it to the user. Ordinary users of this system cannot see the plain text, but specific authorized personnel can use their own secret keys to decrypt and view it.

[0197] 16. Blacklist, Do Not Disturb List

[0198] Blacklist: For message recipients, such as resigned employees, it is necessary to automatically exclude them from any messages. Before sending a message, the message recipient is searched in the blacklist. If the same recipient is not found, the message is sent normally. If the same recipient is found, the message will no longer be sent to the found recipient, realizing automatic shielding of the message sending object.

[0199] Do Not Disturb List: For message recipients, for example, an employee sends a message to all employees of the company, but the message itself is not important and there is no need to send the message to high-level employees of the company. In this case, you can configure a group in the whitelist (the group is VP and above). Before sending the message, delete the people in the group from the message recipients, and then send the message to avoid disturbing the group with unimportant messages.

[0200] At this point, the message sending method provided in the embodiments of the present application has been fully described.

[0201] Based on the same inventive concept, as an implementation of the above method, an embodiment of the present application also provides a message sending system.

[0202] The message sending system can be connected to at least one business system, and is used to forward messages in different business systems to corresponding message notification servers according to corresponding sending strategies. The message sending system is pre-set with a first correspondence between different message types and sending strategies in each business system, and a second correspondence between each business system and the message notification server. The message sending system is pre-connected with at least one message notification server.

[0203] Figure 5 The structure of the message sending system in the embodiment of the present application is shown as follows: Figure 1 , see Figure 5 As shown, the system may include: an acquisition module 51 , a first determination module 52 , a second determination module 53 and a sending module 54 .

[0204] The acquisition module 51 is used to acquire a target message to be sent by a target business system, where the target business system is a business system in at least one business system.

[0205] The first determining module 52 is configured to determine a target sending strategy corresponding to the target message from the first corresponding relationship.

[0206] The second determining module 53 is used to determine the target server corresponding to the target business system from the second corresponding relationship.

[0207] The sending module 54 is used to send the target message to the target server by adopting the target sending strategy, so that the target server sends the target message.

[0208] In some embodiments, as a Figure 5 As a refinement and expansion of the system shown, an embodiment of the present application also provides a message sending system.

[0209] The clients of the message sending system are respectively embedded in multiple business systems, and the server of the message sending system is installed on a designated server. The clients can send messages to be sent in the corresponding business system to the server.

[0210] Figure 6 The structure of the message sending system in the embodiment of the present application is shown as follows: Figure 2 , see Figure 6 As shown, the system may include: an acquisition module 61, a resource judgment module 62, a first determination module 63, a second determination module 64, a time judgment module 65, a repeat judgment module 66, a sending module 67, a task creation module 68, a repeat sending module 69 and a notification docking module 610.

[0211] The acquisition module 61 is used to acquire a target message to be sent by a target business system, where the target business system is a business system in at least one business system.

[0212] The resource judgment module 62 is used to judge whether the resource utilization of the message sending system is greater than the preset utilization; if so, adjust the message sending frequency and the number of messages sent at a time corresponding to at least one business system to make the resource utilization of the message sending system less than or equal to the preset utilization.

[0213] The resource judgment module 62 is specifically used to judge whether the number of messages received from the target business system within the previously preset time period is greater than the preset number; if so, the message sending frequency and the number of messages sent at a single time of the target business system are reduced according to the adjustment degree corresponding to the priority of the target business system, wherein the priority is negatively correlated with the adjustment degree; if not, the message sending frequency and the number of messages sent at a single time of the corresponding business system are determined according to the priority of each business system, so that the messages to be sent in the corresponding business system are sent to the corresponding message notification server according to the determined message sending frequency and the number of messages sent at a single time, wherein the message sending frequency is positively correlated with the priority, the number of messages sent at a single time is positively correlated with the priority, and the message sending frequency is negatively correlated with the number of messages sent at a single time.

[0214] The resource judgment module 62 is specifically used to store the message sending tasks of each business system in the corresponding priority queue according to the priority of each business system, wherein the priority queue includes a high priority queue and a low priority queue, the high priority queue can use the resources of the low priority queue, the high priority queue can send messages in real time, and the low priority queue can dynamically adjust the message sending frequency and the number of messages sent at a time according to the current amount of resources and the number of messages in the queue; for each business system in each business system, the message sending frequency and the number of messages sent at a time for each business system are determined to be the message sending frequency and the number of messages sent at a time corresponding to the corresponding priority queue of each business system.

[0215] The first determining module 63 is configured to determine a target sending strategy corresponding to the target message from the first corresponding relationship.

[0216] The second determining module 64 is used to determine the target server corresponding to the target business system from the second corresponding relationship.

[0217] The time judgment module 65 is used to judge whether the sending time configuration item corresponding to the target message is empty; if it is empty, judge whether there is time information in the target message; if it exists, extract the time information from the target message, and determine the sending time of the target message based on the extracted time information; if it does not exist, extract the time information from the target sending strategy, and determine the sending time of the target message based on the extracted time information; if it is not empty, extract the time information from the sending time configuration item, and determine the sending time of the target message based on the extracted time information.

[0218] The time judgment module 65 is specifically used to generate corresponding time scheduling instructions based on the extracted time information, and the time scheduling instructions are used to schedule and send the target message.

[0219] The duplication judgment module 66 is used to judge whether the number of message duplications between the target message and the historical message based on the content is greater than a preset number, and to judge whether the sender of the target message is different from the sender of the historical message, where the historical message is a message that has been sent to the target server in the target business system; if both are yes, a focus mark is generated for the target message, and the target message and its focus mark are sent to the target server using a target sending strategy, so that the target server controls the historical message that is the same as the target message to be displayed at the top, and adds a focus mark.

[0220] The sending module 67 is used to send the target message to the target server by adopting the target sending strategy, so that the target server sends the target message.

[0221] The task creation module 68 is used to determine whether feedback information from the target server has been received, and the feedback information is used to indicate that the target message has been read; if so, a to-do task creation request is generated based on the target message; the to-do task creation request is sent to the target server so that the target server creates a to-do task for the recipient of the target message, and the to-do task is used to remind the recipient to execute the content indicated by the target message.

[0222] The repeated sending module 69 is used to determine whether the target message is successfully sent according to the response of the target server. If yes, the notification of the target message is terminated. If no, the target message is sent to the target server again using the target sending strategy. When the preset number of sending times is reached and the target message is still not successfully sent, it is determined whether the network of the message sending system is normal, or the target message is sent to a designated server, where the other server is at least one server other than the target server among the multiple message notification servers. If it is determined to be normal, a message sending abnormality prompt is sent to the administrator of the target server. If it is determined to be abnormal, it is determined again whether the network of the message sending system is normal after a preset time interval. When it is determined that the network is normal, the target sending strategy is used again to send the target message to the target server.

[0223] The notification docking module 610 is used to obtain the associated systems of the target business system, the associated systems include the upstream system and / or downstream system of the target business system; determine whether the associated system is docked with a message sending system; if not, dock the associated system with the message sending system so that the message sending system can forward the message in the associated system.

[0224] It should be noted here that the description of the above system embodiment is similar to the description of the above method embodiment, and has similar beneficial effects as the method embodiment. For technical details not disclosed in the system embodiment of the present application, please refer to the description of the method embodiment of the present application for understanding.

[0225] Based on the same inventive concept, an embodiment of the present application also provides an electronic device.

[0226] Figure 7 This is a schematic diagram of the structure of the electronic device in the embodiment of the present application, see Figure 7 As shown, the electronic device may include: a processor 71, a memory 72, and a bus 73; wherein the processor 71 and the memory 72 communicate with each other via the bus 73; the processor 71 is used to call program instructions in the memory 72 to execute the methods in one or more of the above embodiments.

[0227] It should be noted that the description of the above electronic device embodiment is similar to the description of the above method embodiment, and has similar beneficial effects as the method embodiment. For technical details not disclosed in the electronic device embodiment of this application, please refer to the description of the method embodiment of this application for understanding.

[0228] Based on the same inventive concept, an embodiment of the present application further provides a computer-readable storage medium, which may include: a stored program; wherein, when the program is running, the device where the storage medium is located is controlled to execute the method in one or more of the above embodiments.

[0229] It should be noted here that the description of the above storage medium embodiment is similar to the description of the above method embodiment, and has similar beneficial effects as the method embodiment. For technical details not disclosed in the storage medium embodiment of the present application, please refer to the description of the method embodiment of the present application for understanding.

[0230] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A message sending method, characterized in that: The method is applied to a message sending system, which can be connected to at least one business system and is used to forward messages in different business systems to corresponding message notification servers according to corresponding sending strategies. The message sending system is pre-set with a first correspondence between different message types in each business system and a sending strategy, and a second correspondence between each business system and a message notification server. The message sending system is pre-connected with at least one message notification server. The method includes: Acquire a target message to be sent by a target business system, wherein the target business system is a business system in the at least one business system; Determining a target sending strategy corresponding to the target message from the first corresponding relationship; Determining a target server corresponding to the target business system from the second corresponding relationship; The target message is sent to the target server using the target sending strategy, so that the target server sends the target message.

2. The method according to claim 1, characterized in that: After obtaining the target message to be sent by the target business system, the method further includes: Determining whether the resource utilization rate of the message sending system is greater than a preset utilization rate; If so, the message sending frequency and the number of messages sent at a single time corresponding to the at least one business system are adjusted so that the resource utilization rate of the message sending system is less than or equal to the preset utilization rate.

3. The method according to claim 2, characterized in that The adjusting the message sending frequency and the number of messages sent at a time corresponding to the at least one business system includes: Determine whether the number of messages received from the target business system within a previously preset period of time is greater than a preset number; If so, reducing the message sending frequency and the number of messages sent at a single time of the target business system according to the adjustment degree corresponding to the priority of the target business system, wherein the priority is negatively correlated with the adjustment degree; If not, then the message sending frequency and the number of messages sent at a single time of the corresponding business system are determined according to the priority of each business system, so that the messages to be sent in the corresponding business system are sent to the corresponding message notification server according to the determined message sending frequency and the number of messages sent at a single time, wherein the message sending frequency is positively correlated with the priority, the number of messages sent at a single time is positively correlated with the priority, and the message sending frequency is negatively correlated with the number of messages sent at a single time.

4. The method according to claim 3, characterized in that Determining the message sending frequency and the number of messages sent at a time of the corresponding business system according to the priority of each business system includes: According to the priority of each business system, the message sending task of each business system is stored in the corresponding priority queue, where the priority queue includes a high priority queue and a low priority queue. The high priority queue can use the resources of the low priority queue and can send messages in real time. The low priority queue can dynamically adjust the message sending frequency and the number of messages sent at a time according to the current resource amount and message quantity in the queue; For each of the business systems, the message sending frequency and the number of messages sent at a time for each of the business systems are determined to be the message sending frequency and the number of messages sent at a time corresponding to the corresponding priority queue of each of the business systems.

5. The method according to claim 1, characterized in that Before sending the target message to the target server using the target sending strategy, the method further includes: Determine whether the sending time configuration item corresponding to the target message is empty; If it is empty, determine whether there is time information in the target message; If so, extracting the time information from the target message, and determining the sending time of the target message based on the extracted time information; If not, extracting time information from the target sending policy, and determining the sending time of the target message based on the extracted time information; If it is not empty, time information is extracted from the sending time configuration item, and the sending time of the target message is determined based on the extracted time information.

6. The method according to claim 5, characterized in that The method further comprises: Based on the extracted time information, a corresponding time scheduling instruction is generated, and the time scheduling instruction is used to schedule and send the target message.

7. The method according to claim 1, characterized in that After sending the target message to the target server using the target sending strategy, the method further includes: Determining whether feedback information from the target server is received, the feedback information being used to indicate that the target message has been read; If so, a to-do task creation request is generated based on the target message; the to-do task creation request is sent to the target server so that the target server creates a to-do task for the recipient of the target message, and the to-do task is used to remind the recipient to execute the content indicated by the target message.

8. The method according to claim 1, characterized in that: After sending the target message to the target server using the target sending strategy, the method further includes: Acquire the associated systems of the target business system, where the associated systems include the upstream system and / or downstream system of the target business system; Determining whether the associated system is connected to the message sending system; If not, the association system is connected to the message sending system so that the message sending system can forward the message in the association system.

9. The method according to any one of claims 1 to 8, characterized in that Before sending the target message to the target server using the target sending strategy, the method further includes: Determine whether the number of content-based message repetitions between the target message and the historical message is greater than a preset number, and determine whether the sender of the target message is different from the sender of the historical message, where the historical message is a message that has been sent to the target server in the target business system; If both are yes, then generate a focus mark for the target message, and use the target sending strategy to send the target message and its focus mark to the target server, so that the target server controls the historical messages identical to the target message to be displayed on top, and adds the focus mark.

10. A message sending system, characterized in that: The system can be connected to at least one business system, and is used to forward messages in different business systems to corresponding message notification servers according to corresponding sending strategies. The message sending system is pre-set with a first correspondence between different message types in each business system and sending strategies, and a second correspondence between each business system and the message notification server. The message sending system is pre-connected with at least one message notification server. The system includes: An acquisition module, used for acquiring a target message to be sent by a target business system, wherein the target business system is a business system in the at least one business system; A first determining module, configured to determine a target sending strategy corresponding to the target message from the first corresponding relationship; A second determining module, used to determine a target server corresponding to the target business system from the second corresponding relationship; The sending module is used to send the target message to the target server by adopting the target sending strategy, so that the target server sends the target message.

11. An electronic device, characterized in that: The electronic device comprises: a processor, a memory, and a bus; wherein the processor and the memory communicate with each other via the bus; and the processor is used to call program instructions in the memory to execute the method as claimed in any one of claims 1 to 9.

12. A computer-readable storage medium, characterized in that: The storage medium comprises: a stored program; wherein, when the program is running, the device where the storage medium is located is controlled to execute the method as claimed in any one of claims 1 to 9.