Message notification method and system, electronic equipment and storage medium
By introducing the logical chain processing mechanism in the message notification system, users are allowed to build a processing logic through dragging and connecting logic blocks to solve the problem of high development difficulty and poor development of the news notification system in the existing technology, and achieve higher generalability And flexible.
Patent Information
- Application Number
- CN202310876833.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-17
- Publication Date
- 2025-01-28
AI Technical Summary
The message notification system in the prior art needs to be developed for different information officer systems, resulting in high development difficulty and poor versatility.
Through the target information from the source system, and processing according to the set logic chain, the output notification message is output, and finally sent to the set object through the preset method. This method includes multiple logical blocks and logic editing units, allowing users to build a logical chain by dragging and connecting logic blocks to reduce the difficulty of operation.
The notification needs of various data have been realized, and they have better use of flexibility and versatility, which solves the problem of high development difficulty and poor generality.
Smart Images

Figure CN119376965A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of industrial information technology, and in particular to a message notification method, system, electronic device, and storage medium. Background Art
[0002] As informatization and digitalization deepen, factories, parks, enterprises and other scenarios will generate a large amount of information, such as alarm messages, energy consumption reports, production capacity reports, etc. In order to connect people and information, it is necessary to enable the systems that generate the above information to implement message notifications. However, the systems that generate the above information are different. If each system implements the message notification function, it will cause problems such as repeated development and repeated configuration.
[0003] Message notification scenarios are diverse and complex, including but not limited to report distribution, factory alarm message distribution, etc. Currently, industrial data acquisition and monitoring control system SCADA (Supervisory Control And Data Acquisition) on the market, such as Ignition, Kepware, Thing Worx and other message notification systems are only used for alarm events, and the alarm message notification objects are configured through a simple form. There are the following problems: only specific data can be processed, that is, alarms, which is not universal enough. The processing logic of message notifications is not expressive enough, and it is impossible to implement scenarios such as notification upgrades, delayed notification push, and repeated notifications. The reusability is insufficient, and notification logic needs to be configured for each message.
[0004] Therefore, the message notification system in the related art needs to be developed for the information officer system, which has the problems of high development difficulty and poor versatility.
[0005] This section is intended to provide a background or context to the embodiments of the invention recited in the claims. No admission is made that the description herein is prior art by its inclusion in this section. Summary of the invention
[0006] A message notification method, system, electronic device, and storage medium provided by the embodiments of the present invention at least solve the problem that the message notification system in the related art needs to be developed for the information officer system, has high development difficulty, and poor versatility.
[0007] An embodiment of the present invention provides a message notification method, comprising: obtaining target information from a source system, wherein the target information includes data required for the notification message; processing the target information according to a set logic chain, and outputting a notification message, wherein the logic chain is used to execute processing logic corresponding to different data to generate corresponding notification messages, and the logic chain includes multiple logic blocks set according to the processing logic of the target information, and the logic blocks are used to process the target information, and the logic blocks are connected according to the processing logic; and sending the notification message to a set object in a preset manner.
[0008] The beneficial effects of the embodiments of the present invention are as follows: a logical chain is set according to requirements, and the acquired target information is processed through the logical chain to generate a notification message and send it to the set object, thereby meeting the notification requirements of various data, having better flexibility of use, and effectively improving versatility. The logical chain is set by selecting and connecting logical blocks, and the operation is easy. This solves the problem that the message notification system in the related art needs to be developed for the information officer system, which has high development difficulty and poor versatility.
[0009] As an optional embodiment, the target information is processed according to a set logic chain, and before the notification message is output, the method also includes: on the logic editing page, responding to the editing operation of the logic block, generating a logic chain to be tested; debugging the logic chain to be tested through the target information; and when the debugging meets the requirements, using the logic chain to be tested as the set logic chain.
[0010] In the logic editing page, the logic chain to be tested is generated by editing the logic block, and the target information is debugged to obtain a logic chain that meets the requirements. On the one hand, the required logic chain can be created according to the requirements of the target information to achieve high versatility, and on the other hand, after the creation is completed, debugging is performed to ensure the accuracy of the logic chain.
[0011] As an optional embodiment, debugging the logic chain to be tested through the target information includes: inputting the target information into the logic chain to be tested for operation processing; obtaining the operation information of each logic block of the logic chain to be tested; adjusting the logic block with operation errors according to the operation information until the output of the logic chain to be tested is a notification message of the target information.
[0012] When debugging a logic chain, the operation information of each logic block in the logic chain is obtained to determine whether the logic block is normal, and then the abnormal location is quickly discovered, thereby improving the efficiency of debugging the logic chain.
[0013] As an optional embodiment, inputting the target information into the logic chain to be tested for operation processing includes: responding to the state operation of the logic block of the logic chain to be tested, changing the debugging state of the logic block; running the logic chain to be tested according to the debugging state of the logic block, and recording the operation information of each logic block during operation.
[0014] When debugging a logic chain, you can debug part of the logic blocks by turning on the debugging switch of the logic block to put the logic block into the debugging state. After inputting the target information into the logic chain, the operation information of the logic block in the debugging state is automatically obtained, so that part of the logic block can be debugged in a targeted manner, thereby improving the debugging efficiency of the logic chain.
[0015] As an optional embodiment, the debugging state includes: running, breakpoint, pause, failure and stop; in response to the state operation of the logic block of the logic chain to be tested, changing the debugging state of the logic block includes: when the debugging state of the logic block is running, changing the debugging state to a breakpoint state in response to a breakpoint operation, or changing the debugging state to a pause state in response to a pause operation, or changing the debugging state to a failure state in case of execution failure, or changing the debugging state to a stop state in response to a stop operation; when the debugging state of the logic block is a breakpoint, pause or failure, changing the debugging state to a breakpoint state in response to a resume operation, or changing the debugging state to a stop state in response to a stop operation; when the debugging state of the logic block is stopped, terminating the debugging.
[0016] There are multiple debugging states for logic blocks, which are changed according to fixed logic. Different debugging states represent different processing situations of the logic block. According to the debugging state, it is possible to quickly determine whether the logic block is abnormal and the cause of the abnormality, so as to quickly debug the logic block and thus improve the debugging efficiency of the logic chain.
[0017] An embodiment of the present invention also provides a message notification system, including: an extensible interface, a message logic module, and a message notification module; the extensible interface is connected to a source system that generates target information, and the extensible interface is used to expand a corresponding interface according to the communication requirements of the source system, and receive the target information, wherein the target information includes data required for the notification message; the extensible interface is also connected to the message logic module; the message logic module is used to process the target information according to a set logic chain, and output a corresponding notification message, and the logic chain includes a plurality of logic blocks connected according to the processing logic of the target information, and the logic blocks are used to process the target information; the message notification module is connected to the message logic module, and the message notification module is used to send the notification message to a set object in a preset manner.
[0018] Through the extensible interface, the communication interface of the source system corresponding to the target information is adapted to obtain the data of each source system to improve the versatility. Through the message logic module, the logic chain is set according to the needs to process the target information, and the processing logic of the target information is realized with low operation difficulty. After the target information is effectively processed, a message notification is generated. Notification is made in the set manner through the message notification module. A high versatility and low operation difficulty are achieved. The message notification system in the related technology is solved, which needs to be developed for the information officer system, has high development difficulty and poor versatility.
[0019] As an optional embodiment, the message logic module includes: multiple logic blocks and a logic editing unit; the multiple logic blocks include at least one of the following: a start logic block, a multi-way switch logic block, an expression logic block, a variable setting logic block, a delay logic block, a jump logic block, a script logic block, a notification logic block, and a multi-way fork logic block; the logic editing unit is used to select different logic blocks and connect them into a logic chain according to the editing operation.
[0020] The message logic module stores multiple logic blocks, which can be adapted by modifying the configuration. The logic blocks are selected and configured by the logic editing unit to realize the generation of the logic chain. Compared with the method of developing the logic chain by professionals in the related art, the operation difficulty is reduced and the operation efficiency is improved.
[0021] As an optional embodiment, the start logic block is used to input the start logic block of the target information, and the start logic block configures the source system identifier of the target information to obtain the notification logic instance corresponding to the source system, wherein the notification logic instance is an instance generated according to a pre-configured logic chain, and the source system identifier includes a two-dimensional array, the first dimension of the two-dimensional array represents the splicing through different target information, and the second dimension of the two-dimensional array represents the path of the target information. A notification logic chain has one and only one start logic block.
[0022] The corresponding notification logic instance is automatically called through the source system identifier of the two-dimensional array, and the logic chain in the notification logic instance is used to perform logic processing to implement the message notification logic.
[0023] As an optional embodiment, the multi-way switch logic block is used to obtain the numerical value of the variable, and configure the processing formula of the numerical value, as well as the output interface corresponding to the numerical values of different processing results, wherein the processing formula includes the variable formula and / or the calculation method, the correct output interface of the multi-way switch includes a user-defined numerical output interface and a default output interface, the default output interface represents the output interface when the numerical value of the variable does not exist, the variable formula is used to obtain the numerical value from the variable, and the variable formula includes the path of the variable.
[0024] The numerical values of the variables are processed through processing formulas, and then the variables are calculated to obtain different processing results, which are output using the corresponding output interfaces to implement multi-channel processing logic.
[0025] As an optional embodiment, the expression logic block is used to configure an expression, wherein the expression includes a variable formula and / or a calculation method, and the correct output interface of the expression includes a true interface and a false interface. When the final result of the expression is true, the output is from the true interface, and when the final result of the expression is false, the output is from the false interface.
[0026] The data is processed by the expression logic block and output from the corresponding interface to achieve different logic implementations according to different data processing results.
[0027] As an optional embodiment, the variable setting logic block is used to configure the effective range of variables, variable names, and variable calculation methods, wherein the variables are variables required for generating notifications for the target information, and the variables include global variables, local variables, and notification variables. The global variables are used to be set and obtained by all notification logic instances, the local variables are used to be set and obtained by the partial notification logic instances to which they belong, and the notification variables are used to be set and obtained by the logic block that obtains the notification message.
[0028] Global variables, local variables and notification variables can all be modified through the variable setting logic block, which can meet more complex processing logic and thus improve the effect of message notification. Compared with the related technology that can only modify local variables, it has higher practicality.
[0029] As an optional embodiment, the delay logic block is used to configure a delay time, and the delay time is paused when data passes through.
[0030] The pause time of data processing is controlled by the delay logic block.
[0031] As an optional embodiment, the jump logic block is used to configure the jump between logic chains.
[0032] By jumping logic blocks, references to different logic chains are realized, the reusability of the logic chain is improved, and the problem of insufficient reusability and the need for users to repeatedly configure is solved.
[0033] As an optional embodiment, the script logic block is used to configure a data processing script, supports scripts in multiple computer languages, and the data processing script supports built-in functions related to variables.
[0034] The built-in functions are set and the scripts are run through the script logic block.
[0035] As an optional embodiment, the notification logic block is used to generate a final notification message through message merging, message packaging, and notification service, wherein the message merging means merging multiple notification messages into one before pushing the notification message, and the configuration parameters of the message merging include delay time and sending frequency; the delay time indicates the delay time after the arrival of the first notification message of a single merging behavior, and the sending frequency indicates the frequency limit of pushing notification messages. The notification service is configured with notification information, which is used to send the notification message to the notification object in a set communication method according to the notification information.
[0036] The notification logic block can be used to merge, package and send notification messages as required to meet different notification requirements.
[0037] As an optional embodiment, the multi-way fork logic block is used to configure the number of forks of the logical chain and distribute data to different notification logical links, wherein the data distribution mode of the multi-way fork logic block supports replication and reference, replication means forming multiple data that do not interfere with each other and then distributing them, and reference means using the same data for distribution.
[0038] The same piece of data can be copied or referenced through multi-way forked logic blocks, and parallel or referenced logic chains can be generated to implement complex processing logic.
[0039] As an optional embodiment, the logic block includes: an input interface, an output interface, a name, and configuration information; the input interface is used to receive the target information, or the intermediate data output by the connected logic block; the configuration information is used to identify the processing parameters of the logic block for the input data, and processes the input data according to the processing parameters to obtain output data; the output interface is used to output the output data, wherein the output interface includes at least one of the following: all output interfaces, used to output the processing results in all execution situations; the correct output interface, used to output the processing results under normal execution conditions; the error output interface, used to output the processing results under normal execution conditions; the input interface and the output interface are also used to respond to connection operations and connect to the input interface or output interface of other logic blocks; the name is used to identify the logic block so that during operation, the number of times a single piece of data enters the logic block is recorded, and when the number of entries exceeds a preset number, the single piece of data is discarded.
[0040] The logic block includes an input interface and an output interface for receiving input data and outputting processed data. The name is used to identify the logic block so as to record the number of times a single piece of data enters the logic block. When the number of entries exceeds the preset number, the single piece of data is discarded to avoid the generation of an infinite loop. The configuration information is used to configure the data processing flow of the logic block. By changing the configuration information, the logic block can process the target information to ensure that the logic block can achieve the required data processing.
[0041] As an optional embodiment, the logic block also includes: an operation bar, a debugging switch, the operation bar includes multiple operation controls for operating the logic block, the multiple operation controls include at least one of the following: a delete control for deleting the logic block, a copy control for copying the logic block, a configuration control for modifying configuration information, and an add output control for adding a new output interface; the debugging switch is used to control the start and stop of the debugging state of the logic block.
[0042] The logic block also includes a plurality of operation controls to implement relevant operations on the logic block, and the debugging switch is used to put the logic block into a debugging state and then obtain operation information for debugging.
[0043] As an optional embodiment, the logic editing unit includes: a logic editing page, the logic editing page includes a logic block list, an editing window, and a configuration window; the logic block list includes identification information of multiple logic blocks, which is used to respond to a drag operation and display the dragged logic block in the editing window; the editing window is used to respond to a connection operation to connect the corresponding logic blocks; the configuration window is used to respond to a configuration operation and display and edit the configuration information of the logic block.
[0044] By dragging and dropping from the logic block list on the logic editing page, select a logic block and place it in the editing window for connection, and edit the configuration information of the logic block through the configuration window to create a logic chain.
[0045] As an optional embodiment, the message logic module also includes: a logic debugging unit for performing logic chain debugging; the logic debugging page of the logic debugging unit includes a debugging window, a variable window, and a running window; the debugging window is used to select a logic block to be debugged and to change the debugging state of the logic block, the variable window is used to display the variable processing process in the logic block to be debugged, and the running window is used to display the running information of the logic block to be debugged, wherein the running information includes the debugging state, error information, and error location; the logic debugging unit also includes a debugging state machine for controlling the state change logic of the logic block.
[0046] Debug the logic block through the debugging window of the logic debugging page, display the variable processing process through the variable window, and display the running information through the running window. Combine the debugging state and control the changes of the debugging state to realize the debugging of the logic block.
[0047] As an optional embodiment, the content and format of the target information of different source systems are different, and the extensible interface is used to dynamically organize the basic type data of the target information in the form of mapping tables and arrays to generate the target information in the form of mapping tables and arrays; wherein the basic type data can be used for logical chain processing, and the basic type data includes at least one of the following: integer data, floating point data, string data, Boolean data.
[0048] By organizing basic types of data in the form of mapping tables and arrays, target information of various contents and formats from various source systems can be effectively received, and subsequent data processing is convenient.
[0049] An embodiment of the present invention further provides an electronic device, comprising: a processor, and a memory storing a program, wherein the program comprises instructions, and when the instructions are executed by the processor, the processor executes any one of the methods described above.
[0050] An embodiment of the present invention further provides a non-transitory machine-readable medium storing computer instructions, wherein the computer instructions are used to enable the computer to execute any one of the above methods.
[0051] The details of one or more embodiments of the invention are set forth in the following drawings and description so that other features, objects, and advantages of the invention are more readily apparent. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the prior art descriptions. Obviously, the drawings described below are only some embodiments of the present invention, and for ordinary technicians in this field, other embodiments can be obtained based on these drawings without creative work.
[0053] Figure 1 The present invention is a flowchart of a message notification method according to an embodiment of the present invention.
[0054] Figure 2 The present invention is a flowchart of another message notification method according to an embodiment of the present invention.
[0055] Figure 3 It is a schematic diagram of a message notification system according to an embodiment of the present invention.
[0056] Figure 4It is a schematic diagram of the message notification system architecture of an embodiment of the present invention.
[0057] Figure 5 is a schematic diagram of logic blocks of an embodiment of the present invention.
[0058] Figure 6-1 Schematic diagram of a starting logic block of an embodiment of the present invention.
[0059] Figure 6-2 Schematic diagram of a multi-way switch logic block according to an embodiment of the present invention.
[0060] Figure 6-3 It is a schematic diagram of the expression logic block of an embodiment of the present invention.
[0061] Figure 6-4 Schematic diagram of a variable setting logic block according to an embodiment of the present invention.
[0062] Figure 6-5 Schematic diagram of a delay logic block according to an embodiment of the present invention.
[0063] Figure 6-6 Schematic diagram of a jump logic block according to an embodiment of the present invention.
[0064] Figure 6-7 Schematic diagram of a script logic block according to an embodiment of the present invention.
[0065] Figure 6-8 Schematic diagram of a multi-way bifurcation logic block according to an embodiment of the present invention.
[0066] Figure 6-9 Schematic diagram of a notification logic block according to an embodiment of the present invention.
[0067] Figure 7 It is a schematic diagram of a logic editing page according to an embodiment of the present invention.
[0068] Figure 8 is a schematic diagram of an exemplary logic chain of an embodiment of the present invention.
[0069] Fig. 9 It is a schematic diagram of a logic debugging interface according to an embodiment of the present invention.
[0070] Fig.10 Schematic diagram of a debugging state machine according to an embodiment of the present invention.
[0071] Fig.11 Schematic diagram of the structure of the electronic device of this embodiment.
[0072] The figures in the above drawings are as follows:
[0073] 401—Notification service module; 402—Notification logic module; 403—Notification interface module; 404—External message; 405—Message sender; 501—Debug switch; 502—All output interfaces; 503—Normal output interface; 504—Error output interface; 505—Add output interface; 506—Configuration operation; 507—Copy operation; 508—Delete operation; 509—Name; 510—Input interface; 511—Configuration information. DETAILED DESCRIPTION
[0074] Embodiments of the present embodiment will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present embodiment are shown in the accompanying drawings, it should be understood that the present embodiment can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein, which are instead provided for a more thorough and complete understanding of the present embodiment. It should be understood that the drawings and embodiments of the present embodiment are only for exemplary purposes and are not intended to limit the scope of protection of the present embodiment.
[0075] The process of enterprise information digitization is generally to program or develop the processing logic for message notification for the source system that generates the target information. However, there are usually many source systems that need to be notified, and the processing logic for message notification generated by the target information of different source systems is different. If the message notification function is implemented for each target information of each source system, it will cause problems such as repeated development and repeated configuration.
[0076] Currently, the message notification systems for industrial data acquisition and monitoring control systems (SCADA) on the market are only used for alarm events. The alarm message notification objects are configured through a simple form, which has the following problems: they can only process specific target information, that is, alarms, and are not general enough. The logical expression ability of message notifications is insufficient, and it is impossible to implement scenarios such as notification upgrades, delayed notification push, and repeated notifications. The reusability is insufficient, and the notification logic needs to be configured for each target information.
[0077] Similar message push systems also exist in related technologies, but they all have various problems. For example, the Ignition system does not support the routing of messages other than alarm messages; the alarm message notification capability does not support notification variables, but only supports global variables and local variables; the alarm message notification capability does not support independent processing of correct and incorrect logic blocks, but does not distinguish between them; the alarm message notification does not support debugging.
[0078] For another example, the Kepware system does not support the routing of various target information, and only supports directly forwarding alarm messages to the OPC AE (Alarm and Event) server. The Thing Worx system does not support the routing of messages other than alarm messages; the alarm message notification capability does not support logical definition, and can only configure a certain type of alarm message to the notification object; the alarm message notification configuration information does not support reuse; the alarm message notification capability does not support testing / debugging, and it is impossible to determine whether the notification message can reach the notification object normally.
[0079] In summary, the source system direct push method is that the source system configures the notification object by itself during configuration. The disadvantages are repeated configuration, large workload, and no support for complex logical judgment. The form configuration method requires configuration of the source system of the target information and the object of the message notification, such as Kepware. The disadvantage is that it can only express relatively simple logic. The code implementation method requires customized development of the message notification processing logic for each type of target information. The disadvantages are high customization, high labor cost, high requirements for developers, and high difficulty in operation.
[0080] Therefore, the message notification system in the related art needs to be developed for the information officer system, which has the problems of high development difficulty and poor versatility.
[0081] This embodiment provides a message notification method and system, which adapts to the communication interface of the source system corresponding to the target information through an extensible interface, obtains data from each source system, and improves versatility. Through the message logic module, the target information is processed according to the logic chain set according to the needs, and the processing logic of the target information is realized with a lower operating difficulty. After the target information is effectively processed, a message notification is generated. Notification is performed in the set manner through the message notification module. A higher versatility and lower operating difficulty are achieved. The message notification system in the related art is solved, which needs to be developed for the information officer system, has high development difficulty and poor versatility.
[0082] The message notification method provided in this specification can be applied to electronic devices of the message notification system. The electronic devices may include notebooks, desktop computers, smart phones, smart wearable devices (virtual reality glasses, smart watches, etc.), tablet computers, etc. Of course, the message notification method provided in this specification can also be applied to applications running in the above-mentioned electronic devices. For example, the message notification method can be applied to a browser with instant messaging function, and can also be applied to instant messaging software.
[0083] In order to solve the above technical problems, an embodiment of the present invention provides a message notification method. Figure 1 is a flow chart of a message notification method according to an embodiment of the present invention. Figure 1As shown, the method comprises the following steps:
[0084] Step S101, obtaining target information from a source system, wherein the target information includes data required for a notification message;
[0085] Step S102, processing the target information according to the set logic chain and outputting a notification message, wherein the logic chain is used to execute the processing logic corresponding to different data to generate the corresponding notification message, and the logic chain includes a plurality of logic blocks set according to the processing logic of the target information, and the logic blocks are used to process the target information, and the logic blocks are connected according to the processing logic;
[0086] Step S103: Send the notification message to the set object in a preset manner.
[0087] The message notification method provided in the embodiment of the present invention sets a logic chain according to the requirements, processes the acquired target information through the logic chain, generates a notification message and sends it to the set object, thereby meeting the notification requirements of various data, having better flexibility of use, and effectively improving versatility. The logic chain is set by selecting and connecting logic blocks, and the operation difficulty is small. This solves the problem that the message notification system in the related art needs to be developed for the information officer system, has high development difficulty, and has poor versatility.
[0088] To address the above technical issues, traditional drag-and-drop logic arrangement can be introduced. However, there are still problems such as the fixed format of input target information, which limits the flexibility of message notification; the problem of not adapting to specific message notification scenarios and being unable to implement applicable message notification processing logic; and the problem of insufficient reusability, which requires configuring notification logic for each target information.
[0089] To this end, this embodiment introduces and improves the drag-and-drop logic arrangement for existing industrial SCADA message notification scenarios, thereby realizing a more complex message notification processing logic. The content and type of the input target information of the message notification system are not limited through an extensible interface, and the basic data is dynamically organized in the form of a mapping table and an array. The problem of fixed data format or only trigger relationship in traditional drag-and-drop logic arrangement tools is solved, thereby supporting message notifications of different types of target information.
[0090] The above-mentioned source system is also the system that generates the target information. In information digitization, it can be various manufacturing management systems with data processing or data collection, such as enterprise resource planning system ERP (Enterprise Resource Planning), product lifecycle management system PLM (Product Lifecycle Management); manufacturing execution system MES (Manufacturing Execution System); warehouse management system WMS (Warehouse Management System), etc.
[0091] The above source system will generate a lot of data, including the final result data and various intermediate data, which can be used as the above target information for message notification processing. The above message notification processes the input target information according to a certain logic to achieve the purpose of alarm, notification and release.
[0092] Different target information corresponds to different message notification processing logics. This embodiment adopts a method of presetting corresponding logic chains to implement the processing logic of the target information. The logic chain is formed by connecting multiple logic blocks. The logic block can be understood as a processing unit, which is used to perform fixed logic processing on the target information or process intermediate data. The processing logic of the target information is realized by connecting multiple logic blocks, so that effective message notification can be performed on target information with different processing logic requirements.
[0093] Moreover, the way of forming a logical chain with logical blocks is much easier than programming development in related technologies. You only need to clarify the usage of logical blocks and how to operate them to realize the logical arrangement of the processing logic of any target information and realize the processing logic corresponding to the target information to notify the target information. This reduces the difficulty of message notification operation.
[0094] The above message notification system has designed a dedicated notification logic block to adapt to the message notification scenario, which can achieve capabilities that traditional drag-and-drop logic blocks cannot achieve. For example, the variable setting logic block supports three valid ranges: global variables, local variables, and notification variables, which solves the problem that traditional drag-and-drop logic arrangement only supports local variables and causes a lack of logic expression capabilities.
[0095] The multi-way fork logic block supports data replication or reference, solving the problem of state synchronization failure caused by the replication method used in traditional drag-and-drop logic orchestration. The jump logic block supports the internal forwarding of the message notification processing logic to other message notification processing logics, solving the problem of task logic reuse caused by the inability of traditional drag-and-drop logic orchestration tasks to be internally forwarded to each other.
[0096] Considering the differences in communication protocols and communication methods of different source systems, this embodiment can receive the target information of the source system through an extensible interface, that is, using the communication interface in the extensible interface that matches the source system to receive the target information of the source system. When there is no interface for communicating with the source system, the extensible interface is used to create a matching communication interface to communicate with the source system to receive the target information of the source system.
[0097] It should be noted that the target information of the source system can be received by actively pulling the target information; or it can be received passively, that is, the external source system or a third-party module actively pushes the target information of the source system to the extensible interface.
[0098] When performing a message notification of target information, the received target information is input into the configured logic chain for processing, and the logic chain generates the final processing result, which is the above-mentioned notification message, and then pushes the notification message to the set receiving object using the set notification method.
[0099] The above notification methods can be SMS, email, APP application message and other methods. Of course, new notification methods can also be expanded. Among the multiple notification methods, you can pre-select the priority, or select some notification methods for notification.
[0100] The receiving object may be a communication terminal, such as a notebook, a personal computer, a tablet computer, a mobile phone, or other smart devices. The notification message is transmitted to the corresponding person of the communication interruption through the communication terminal to achieve the purpose of notification.
[0101] As an optional embodiment, the target information is processed according to a set logic chain, and before the notification message is output, the method also includes: on the logic editing page, responding to the editing operation of the logic block, generating a logic chain to be tested; debugging the logic chain to be tested through the target information; and when the debugging meets the requirements, using the logic chain to be tested as the set logic chain.
[0102] In the logic editing page, the logic chain to be tested is generated by editing the logic block, and the target information is debugged to obtain a logic chain that meets the requirements. On the one hand, the required logic chain can be created according to the requirements of the target information to achieve high versatility, and on the other hand, after the creation is completed, debugging is performed to ensure the accuracy of the logic chain.
[0103] The above-mentioned logic editing page can be an operation page provided to the user through a user interaction device. On the logic editing page, the user can perform editing operations, such as dragging logic blocks, linking logic blocks, configuring logic blocks, etc., to edit, configure and connect logic blocks, thereby effectively generating a logic chain.
[0104] It should be noted that the above-mentioned logic chain to be tested may be a logic chain that has been initially created but has not been debugged. In order to improve the accuracy and effectiveness of the logic chain, the created logic chain to be tested is debugged to ensure that the logic chain can normally and effectively complete the required processing logic.
[0105] The arrangement logic of the above logic chain supports directed cyclic graphs. For example, the next logical block A is logical block B, the next logical block B is logical block C, and the next logical block C is A or stops running directly. Then in the above logic flow, there may be a circular logic such as A->B->C->A->…, which is called a loop. Directed means one-way between logical blocks, such as A to B.
[0106] This prevents dead loops by monitoring the number of times the same logic block is processed, solving the problem that traditional drag-and-drop logic orchestration cannot express complex loop logic. The debugging of message notification processing logic supports automatic triggering and customization, solving the problem that the input data of traditional drag-and-drop logic orchestration requires additional client creation and cannot be modified.
[0107] Figure 2 is a flow chart of another message notification method according to an embodiment of the present invention. Figure 2 As shown, the embodiment of the present invention also provides another message notification method, which is applied to the message notification system. Optionally, the message notification method provided by the embodiment of the present invention can be used in the message notification method provided by the above embodiment. In the above message notification method, debugging the logic chain to be tested by using target information includes:
[0108] Step S201, inputting target information into the logic chain to be tested for operation processing;
[0109] Step S202, obtaining the operation information of each logic block of the logic chain to be tested;
[0110] Step S203, adjusting the logic block with operation error according to the operation information until the output of the logic chain to be tested is a notification message of the target information.
[0111] The message notification method provided in the embodiment of the present invention can determine whether the logic block is normal by obtaining the operation information of each logic block in the logic chain when debugging the logic chain, so as to quickly find the abnormal location and improve the efficiency of logic chain debugging.
[0112] The target information is input into the logic chain to be tested for operation processing. Each logic block of the logic chain to be tested will process the target information according to the processing logic, and obtain the operation information of each logic block of the logic chain, and adjust the logic block with operation error according to the operation information until the output of the logic chain to be tested is the notification message of the target information.
[0113] The above debugging capability of the logic chain of message notification supports automatic triggering and customization, that is, logic debugging can be targeted at the entire logic chain, or part of the logic block of the logic chain. This solves the problem that the input data of traditional drag-and-drop logic arrangement requires additional client creation and cannot be modified.
[0114] The operation information of each logic block of the above-mentioned logic chain to be tested includes but is not limited to the debugging status of each logic block, the logic block where an error occurs in the logic chain, and the error information of the logic block where an error occurs.
[0115] As an optional embodiment, inputting target information into the logic chain to be tested for operation processing includes: responding to the state operation of the logic block of the logic chain to be tested, changing the debugging state of the logic block; running the logic chain to be tested according to the debugging state of the logic block, and recording the operation information of each logic block during operation.
[0116] When debugging a logic chain, you can debug part of the logic blocks by turning on the debugging switch of the logic block to put the logic block into the debugging state. After inputting the target information into the logic chain, the operation information of the logic block in the debugging state is automatically obtained, so that part of the logic block can be debugged in a targeted manner, thereby improving the debugging efficiency of the logic chain.
[0117] Specifically, a debugging switch is provided on the logic block, and the debugging switch can be turned on and off to enter or exit debugging of the logic block. The logic block that is not in the debugging state processes data normally and does not obtain operation information, so that the logic chain can be debugged more specifically.
[0118] As an optional embodiment, the debugging status includes: running, breakpoint, pause, failure and stop; in response to the status operation of the logic block of the logic chain to be tested, changing the debugging status of the logic block includes: when the debugging status of the logic block is running, changing the debugging status to a breakpoint status in response to a breakpoint operation, or changing the debugging status to a pause status in response to a pause operation, or changing the debugging status to a failure status in case of execution failure, or changing the debugging status to a stop status in response to a stop operation; when the debugging status of the logic block is a breakpoint, pause or failure, changing the debugging status to a breakpoint status in response to a resume operation, or changing the debugging status to a stop status in response to a stop operation; when the debugging status of the logic block is stopped, terminating the debugging.
[0119] There are multiple debugging states for logic blocks, which change according to the debugging state and the set logic. Different debugging states represent different processing situations of the logic block. According to the debugging state, it is possible to quickly determine whether the logic block is abnormal and the cause of the abnormality, so as to quickly debug the logic block and thus improve the debugging efficiency of the logic chain.
[0120] It should be noted that the debugging state machine described above is for the debugging state of the logic block, including RUNNING, BREAK, PAUSE, FAIL and STOP.
[0121] When the logic block is in the running state, it can be converted to the breakpoint state through the breakpoint behavior and record the breakpoint logic block; it can be converted to the pause state through the pause behavior and record the paused logic block; when the logic block fails to execute, it can be converted to the failure state and record the stopped logic block and the error cause; it can be converted to the stop state through the stop behavior.
[0122] When a logic block is in a breakpoint state, it can be converted to a running state through a continue action and the logic block information of the breakpoint can be cleared; it can be converted to a stop state through a stop action.
[0123] When a logic block is in a paused state, it can be converted to a running state through a continue behavior and the paused logic block information can be cleared; it can be converted to a stopped state through a stop behavior.
[0124] When the logic block is in a failed state, it can be converted to a running state through a continue behavior, and the erroneous logic block information and error information can be cleared; it can be converted to a stop state through a stop behavior.
[0125] When the logic block is in the stopped state, the debugger immediately destroys the logic block debug runtime.
[0126] Figure 3 is a schematic diagram of a message notification system according to an embodiment of the present invention. Figure 3 As shown, based on the above message notification method provided by an embodiment of the present invention, an embodiment of the present invention further provides a message notification system, which includes: an extensible interface 31, a message logic module 32, and a message notification module 33; the system is described in detail below.
[0127] The extensible interface 31 is connected to the source system that generates the target information. The extensible interface 31 is used to expand the corresponding interface and receive the target information according to the communication requirements of the source system, wherein the target information includes the data required for the notification message; the extensible interface 31 is also connected to the message logic module 32; the message logic module 32 is used to process the target information according to the set logic chain and output the corresponding notification message. The logic chain includes multiple logic blocks connected according to the processing logic of the target information, and the logic blocks are used to process the target information; the message notification module 33 is connected to the message logic module 32, and the message notification module 33 is used to send the notification message to the set object in a preset manner.
[0128] The above-mentioned message notification system provided by the embodiment of the present invention adapts to the communication interface of the source system corresponding to the target information through an extensible interface, obtains data from each source system, and improves versatility. Through the message logic module, the target information is processed according to the logic chain set according to the needs, and the processing logic of the target information is realized with a relatively low operating difficulty, and the message notification is generated after the target information is effectively processed. Notification is performed in the set manner through the message notification module. A high degree of versatility and a low degree of operating difficulty are achieved. The message notification system in the related art is solved, which needs to be developed for the information officer system, has high development difficulty, and poor versatility.
[0129] The above message notification system can be applied to the distribution of target information such as alarm messages, energy consumption reports, production capacity reports, and three-party messages. The specific scenario can be report distribution, for example, factory report classification push: push to different roles according to the type of factory report, such as factory equipment health report push to relevant maintenance workers and workshop directors; factory energy consumption report push to relevant workshop directors and factory managers. Factory report processing push: After the factory indicator calculation results are pushed to the message notification system, they are processed and beautified into pictures, PDFs, etc., and pushed to specific personnel.
[0130] Specific scenarios can also distribute factory alarm messages, such as: alarm upgrade: factory production line equipment failure alarm, immediately notify the operator, if 5 minutes later, notify his supervisor; alarm delay push: factory production line equipment failure alarm, delay 5 seconds to notify the operator, if the alarm is eliminated during this period, the notification will be deleted and no longer pushed; alarm repeated reminder: factory production line equipment failure alarm, notify the operator to handle, if 5 minutes later, notify the operator again; alarm classification push: the rated voltage of a motor on the factory production line is 220V. If it exceeds 10%, it is a "minor alarm" and only needs to notify the operator to handle it; if it exceeds 20%, it is a "serious alarm" that may cause fire and other problems, and the operator and factory administrator will be notified.
[0131] In addition to the above scenarios, there are other message notification scenarios that are not listed here.
[0132] Figure 4 Schematic diagram of the message notification system architecture of an embodiment of the present invention. Figure 4 As shown, the specific message notification system involves a notification service module 401, a notification logic module 402, a notification interface module 403, an external message 404, and a message sender 405. The notification logic module 402 processes the data of the notification entry, packages the message, and pushes the message to the notification service module 401.
[0133] The above-mentioned message notification system includes a notification interface module, a notification logic module and a notification service module; the notification interface module provides external notification entrances including but not limited to HTTP, MQTT, AMQP, etc., receives or subscribes to external target information, and hands the input target information to the notification logic module for processing.
[0134] The notification logic module supports logic blocks such as "start", "variable setting", "delay", "multi-way fork", "multi-way switch", "expression", "jump", "script", and "notification". It forms a notification logic chain by connecting the end to the beginning to realize message packaging and message push to a specific notification service module; the notification logic module supports graphical debugging of notification logic.
[0135] The notification service module provides the notification logic block with the ability to distribute notification messages and notify specific individuals or organizations. There are many ways to distribute notification messages, such as email, application message, SMS, phone call, etc. The above applications can be work applications, chat applications, etc.
[0136] The content and format of the above target information are not fixed. The extensible interface can dynamically organize basic types of data such as integers, floating points, strings, Booleans, etc. in the form of mapping tables and arrays; mapping tables and arrays can be nested but will not reference each other; the sources of the target information include but are not limited to reporting systems, alarm monitoring and control systems, third-party applications and other source systems.
[0137] Taking the alarm message of factory production line equipment as an example, SrcMsgId represents the ID of the source system, which uniquely identifies an alarm monitoring and control object; Content represents the alarm content; CreateAt represents the time when the alarm is generated; Meat represents whether the alarm condition is met (true alarm is generated, false alarm is eliminated); Objects represents the equipment attribute code related to the alarm (uniquely locates a certain collection attribute).
[0138] {
[0139] 'SrcMsgId':'Motor1.Speed / State',
[0140] 'Content':'The Speed value of the asset Motor1 is 105, which is greater than the maximum value of 100. Please check the fault.',
[0141] 'CreateAt':1669011102,
[0142] 'Meat':true,
[0143] 'Objects':[{
[0144] 'AssetCode':'Motor1',
[0145] 'AttributeCode':'Speed'
[0146] }]
[0147] }
[0148] In order to solve the problem of repeated configuration and heavy workload of processing logic of message notifications directly pushed by the source system, this embodiment proposes a templated message notification processing logic configuration method, which reduces the workload of construction personnel, improves work efficiency, and reduces personnel costs.
[0149] In order to address the problems that direct push from the source system does not support complex logical judgments; the "form configuration method" can only express relatively simple logic; and the "code implementation" has a high degree of customization, high labor costs, and high requirements for developers, it is proposed to arrange various logic blocks ("start", "variable setting", "delay", "multi-way fork", "multi-way switch", "expression", "jump", "script", "notification", etc.) by dragging and dropping, so as to express the processing logic of complex message notifications, reduce the complexity of notification logic configuration, and reduce the requirements for construction personnel.
[0150] As an optional embodiment, the message logic module includes: multiple logic blocks and a logic editing unit; the multiple logic blocks include at least one of the following: a start logic block, a multi-way switch logic block, an expression logic block, a variable setting logic block, a delay logic block, a jump logic block, a script logic block, a notification logic block, and a multi-way fork logic block; the logic editing unit is used to select different logic blocks and connect them into a logic chain according to the editing operation.
[0151] The message logic module stores multiple logic blocks, which can be adapted by modifying the configuration. The logic blocks are selected and configured by the logic editing unit to realize the generation of the logic chain. Compared with the method of developing the logic chain by professionals in the related art, the operation difficulty is reduced and the operation efficiency is improved.
[0152] The input of the notification logic block is the target information, and the output is the notification message; the input of the "start" logic block can be the target information received by the notification interface module, which is usually the first logic block in the logic chain. Except for the first logic block in the logic chain, the input of the logic block can come from multiple other logic blocks.
[0153] The outputs of the logic block include "normal", "error" and "all"; if the internal execution of the logic block is normal, it will be output from the "normal" output interface; if the internal execution of the logic block is incorrect, it will be output from the "error" output interface; and the "all" output interface will output regardless of the execution status.
[0154] Figure 5 Schematic diagram of logic blocks of an embodiment of the present invention, such as Figure 5 As shown, the logic block consists of input interface 510, output interface, name 509, configuration information 511, operation bar, and debug switch 501. The output interface includes three types: "normal" output interface 503, "error" output interface library 504, and "all" output interface 502.
[0155] Configuration information 511 indicates that it is not configured or configured incorrectly through a red indicator light, and indicates that it is configured or configured correctly through a green indicator light.
[0156] The "configure" operation 506 may be used to further configure the information, ie, modify 511 the content of the configuration information.
[0157] The types of logic blocks also include a variety of logic blocks to implement different types of data processing, meet the logic processing requirements of target information generation notification messages, and thus ensure that logic chains can be effectively created for a variety of target information, message notifications can be made, and versatility can be improved.
[0158] The above message notification system uses a dedicated notification logic block to adapt to the message notification scenario, and can achieve capabilities that traditional drag-and-drop logic blocks cannot achieve.
[0159] For example, the "Variable Setting" logic block supports three valid ranges: global variables, local variables, and notification variables, which solves the problem of lack of logical expression ability caused by traditional drag-and-drop logic arrangement that only supports local variables.
[0160] The "multi-way fork" logic block supports data replication or reference, solving the problem of state synchronization failure caused by the replication method used in traditional drag-and-drop logic arrangement.
[0161] The "jump" logic block supports forwarding the internal data of the message notification processing logic to other message notification processing logics, solving the problem that the task logic cannot be reused due to the inability of traditional drag-and-drop logic arrangement tasks to be internally forwarded to each other.
[0162] As an optional embodiment, the start logic block is used to input the start logic block of the target information, and the start logic block configures the source system identifier of the target information to obtain the notification logic instance corresponding to the source system, wherein the notification logic instance is an instance generated according to a pre-configured logic chain, and the source system identifier includes a two-dimensional array, the first dimension of the two-dimensional array represents the splicing through different target information, and the second dimension of the two-dimensional array represents the path of the target information. A notification logic chain has one and only one start logic block.
[0163] The start logic block is used to input the target information of the logic chain. Through the source system identifier of the two-dimensional array, the corresponding notification logic instance is automatically called, and the logic chain in the notification logic instance is used for logic processing to realize the message notification logic.
[0164] Figure 6-1 Schematic diagram of the starting logic block of an embodiment of the present invention, such as Figure 6-1 As shown in the figure, the "Start" logic block needs to configure the source system identifier, and obtain the target information of the source system through the identifier to obtain the corresponding notification logic instance. If it does not exist, it will be automatically created; and the target information is encapsulated into thread-safe internal data, which will be used for notification logic execution later.
[0165] The source system identifier can be a two-dimensional array, the first dimension represents the splicing through different target information, and the second dimension represents the path of the target information; a notification logic chain has and only has one "start" logic block. For example, the source system is [['SrcMsgId'], ['Objects', 0, 'AssetCode'], ['Objects', 0, 'AttributeCode']], that is, the values of 'SrcMsgId' and 'Objects'.0.'AttributeCode' in the target information are spliced (that is, 'Motor1.Speed / State+Motor1+Speed') as the ID of the notification logic instance.
[0166] As an optional embodiment, the multi-way switch logic block is used to obtain the numerical value of the variable, and configure the processing formula of the numerical value, as well as the output interface corresponding to the numerical values of different processing results, wherein the processing formula includes the variable formula and / or the calculation method, and the correct output interface of the multi-way switch includes a user-defined numerical output interface and a default output interface, the default output interface represents the output interface when the numerical value of the variable does not exist, and the variable formula is used to obtain the numerical value from the variable, and the variable formula includes the path of the variable.
[0167] The multi-way switch logic block can be used for the output of the logic chain and for configuring the branches of the logic chain. The numerical values of the variables are processed by processing formulas, and then the variables are calculated to obtain different processing results, which are then output using the corresponding output interfaces to implement multi-way processing logic.
[0168] Figure 6-2 Schematic diagram of a multi-way switch logic block of an embodiment of the present invention, Figure 6-2As shown in the figure, the "multi-way switch" logic block needs to be configured with the formula for obtaining the value and the output interface corresponding to different values; the formula supports variable formulas and calculation methods, such as getGlobal(['Level'],0)+1; the "correct" output interface includes user-defined values and defaults, where the default represents the output interface when the user-defined value does not exist.
[0169] As an optional embodiment, the expression logic block is used to configure an expression, which includes a variable formula and / or a calculation method. The correct output interface of the expression includes a true interface and a false interface. When the final result of the expression is true, it is output from the true interface. When the final result of the expression is false, it is output from the false interface.
[0170] The expression logic block can be used for the output of the logic chain and for configuring data calculation expressions. The expression logic block is used to process the data and output it from the corresponding interface, so as to realize different logic implementations according to different data processing results.
[0171] Figure 6-3 Schematic diagram of expression logic blocks of an embodiment of the present invention, such as Figure 6-3 As shown, the "Expression" logic block needs to configure an expression, supports variable formulas and calculation methods, and the final expression result is a Boolean type; the "correct" output interface includes true and false; if the final result is true, it is distributed from the true output interface; if the final result is false, it is distributed from the false output interface.
[0172] As an optional embodiment, the variable setting logic block is used to configure the effective range of the variable, the variable name, and the calculation method of the variable, wherein the variable is the variable required to generate the notification of the target information, and the variables include global variables, local variables, and notification variables. The global variables are used to be set and obtained by all notification logic instances, the local variables are used to be set and obtained by the partial notification logic instance to which they belong, and the notification variables are used to be set and obtained by the logic block that obtains the notification message.
[0173] Global variables, local variables and notification variables can all be modified through the variable setting logic block, which can meet more complex processing logic and thus improve the effect of message notification. Compared with the related technology that can only modify local variables, it has higher practicality.
[0174] Figure 6-4 Schematic diagram of a variable setting logic block of an embodiment of the present invention, such as Figure 6-4As shown, the "Variable Setting" logic block needs to configure the effective scope of the variable (global variable, local variable or notification variable) and the variable name. The variable name is a one-dimensional array representing the path (mapping table and array are supported), for example, ['Alarming'] represents the variable 'Alarming'.
[0175] Variable values need to be configured to support the acquisition of various types of data, including but not limited to obtaining specific variable values from global variables, local variables and notification variables, obtaining time, location, resource usage and other values from the system, and setting them back to global variables, local variables and notification variables after certain calculations; calculation methods include but are not limited to addition, subtraction, multiplication, division, square, mapping, etc.
[0176] As an optional embodiment, the delay logic block is used to configure the delay time, and the delay time will be paused when data passes.
[0177] The pause time of data processing is controlled by the delay logic block.
[0178] Figure 6-5 is a schematic diagram of a delay logic block of an embodiment of the present invention, such as Figure 6-5 As shown, the "delay" logic block needs to be configured with a delay time (such as 10 seconds), and the data passing through the logic block will pause for a specific time.
[0179] As an optional embodiment, the jump logic block is used to configure the jump between logic chains.
[0180] By jumping logic blocks, different logic chains can be referenced and reused, solving the problem of insufficient reusability and requiring users to repeatedly configure.
[0181] Figure 6-6 Schematic diagram of a jump logic block of an embodiment of the present invention, such as Figure 6-6 As shown, the "jump" logic block needs to be configured with the jump destination, that is, the name of the processing logic of other message notifications; after executing this logic block, the data will be distributed to the processing logic of another message notification for processing.
[0182] The above message notification system uses the source system identification mechanism to achieve data differentiation and runtime isolation, and cooperates with the "jump" logic block capability to achieve the reuse of message notification processing logic. This design solves the problem that traditional drag-and-drop logic arrangement is not reusable enough and requires users to repeatedly configure.
[0183] As an optional embodiment, the script logic block is used to configure the data processing script, supports scripts in multiple computer languages, and the data processing script supports built-in functions related to variables.
[0184] The built-in functions are set and the scripts are run through the script logic block.
[0185] Figure 6-7 Schematic diagram of the script logic block of an embodiment of the present invention, such as Figure 6-7 As shown, the "script" logic block requires script configuration, supporting languages including but not limited to shell, python, etc.; the script supports built-in functions such as variable settings and variable formulas.
[0186] As an optional embodiment, a multi-way fork logic block is used to configure the number of forks of the logical chain and distribute data to different notification logical links, wherein the data distribution mode of the multi-way fork logic block supports replication and reference, replication means forming multiple data that do not interfere with each other and then distributing them, and reference means using the same data for distribution.
[0187] The same piece of data can be copied or referenced through multi-way forked logic blocks, and parallel or referenced logic chains can be generated to implement complex processing logic.
[0188] Figure 6-8 Schematic diagram of a multi-way bifurcation logic block of an embodiment of the present invention, such as Figure 6-8 As shown in the figure, the "multi-way fork" logic block needs to configure the number of multi-way forks to realize the distribution of data to different notification logical links; the data distribution mode supports replication and reference, replication means forming multiple data that do not interfere with each other and then distributing them; reference means using the same data for distribution, and different data processing may affect each other.
[0189] As an optional embodiment, the notification logic block is used to generate a final notification message through message merging, message packaging, and notification service, wherein message merging means merging multiple notification messages into one before pushing the notification message, and the configuration parameters of message merging include delay time and sending frequency; the delay time indicates the delay time after the arrival of the first notification message of a single merging behavior, and the sending frequency indicates the frequency limit of pushing the notification message. The notification service is configured with notification information, which is used to send the notification message to the notification object in a set communication method according to the notification information.
[0190] The notification logic block can be used to merge, package and send notification messages as required to meet different notification requirements.
[0191] Figure 6-9 Schematic diagram of a notification logic block of an embodiment of the present invention. Figure 6-9As shown in the figure, the "Notification" logic block needs to configure message merging, message packaging, and notification service; message merging means merging multiple notification messages into one before pushing the notification message, including delay time and sending frequency; delay time means the arrival delay time of the first notification message of a single merging behavior; sending frequency means the frequency limit of pushing notification messages, such as 10 notification messages per minute; message packaging methods include but are not limited to Markdown, PDF, pictures and other forms; the notification service information to which the notification message is pushed is determined according to different notification service modules.
[0192] It should be noted that the above variable formulas include three types: obtaining from global variables (getGlobal), obtaining from local variables (getLocal), and obtaining from notification variables (getNotification); the first parameter of the three formulas is the path of the variable, that is, an array, such as ['Objects',0,'AttributeCode'] means obtaining the value of 'Objects'.0.'AttributeCode' from the variable; the second parameter is the default value. If the corresponding data does not exist in the variable, the default value will be returned, supporting basic data types such as integer, floating point, string, Boolean, etc.
[0193] As an optional embodiment, the logic block includes: an input interface, an output interface, a name, and configuration information; the input interface is used to receive target information, or intermediate data output by a connected logic block; the configuration information is used to identify processing parameters of the logic block for the input data, and processes the input data according to the processing parameters to obtain output data; the output interface is used to output output data, wherein the output interface includes at least one of the following: all output interfaces, used to output the processing results in all execution situations; the correct output interface, used to output the processing results under normal execution conditions; the error output interface, used to output the processing results under normal execution conditions; the input interface and the output interface are also used to respond to connection operations and connect to the input interface or output interface of other logic blocks; the name is used to identify the logic block so that during operation, the number of times a single piece of data enters the logic block is recorded, and when the number of entries exceeds a preset number, the single piece of data is discarded.
[0194] The logic block includes an input interface and an output interface for receiving input data and outputting processed data. The name is used to identify the logic block so as to record the number of times a single piece of data enters the logic block. When the number of entries exceeds the preset number, the single piece of data is discarded to avoid the generation of an infinite loop. The configuration information is used to configure the data processing flow of the logic block. By changing the configuration information, the logic block can process the target information to ensure that the logic block can achieve the required data processing.
[0195] As an optional embodiment, the logic block also includes: an operation bar, a debugging switch, the operation bar includes multiple operation controls for operating the logic block, the multiple operation controls include at least one of the following: a delete control for deleting the logic block, a copy control for copying the logic block, a configuration control for modifying configuration information, and an add output control for adding a new output interface; the debugging switch is used to control the start and stop of the debugging state of the logic block.
[0196] The logic block also includes a plurality of operation controls to implement relevant operations on the logic block, and the debugging switch is used to put the logic block into a debugging state and then obtain operation information for debugging.
[0197] like Figure 5 As shown, the operation column includes but is not limited to a “delete” operation 508 , a “copy” operation 507 , a “configure” operation 506 , an add output interface 505 , and the like.
[0198] Add output interface 505 can be used to add “normal” output interface 503 , “error” output interface library 504 , “all” output interface 502 , or other output interfaces.
[0199] There are multiple output interfaces, and the multiple output interfaces are used to output different output data; the operation bar also includes: add output control, and the add output control is used to add a new output interface.
[0200] The logic block has at least one output for different data processing methods. Different outputs may require different logic chains to be configured. Multiple output interfaces are set up to transmit different processing data, form different processing logics, and ensure the integrity of the logic chain creation.
[0201] The above message notification system expands the capabilities of traditional drag-and-drop logic arrangement to achieve expression capabilities that are almost like code. For example, logic blocks distinguish between running "error", "normal" and "all (indistinguishable)", solving the problem that traditional drag-and-drop logic arrangement will no longer be executed if it runs "error".
[0202] As an optional embodiment, the logic editing unit includes: a logic editing page, the logic editing page includes a logic block list, an editing window, and a configuration window; the logic block list includes identification information of multiple logic blocks, which is used to respond to drag operations and display the dragged logic blocks in the editing window; the editing window is used to respond to connection operations to connect corresponding logic blocks; the configuration window is used to respond to configuration operations and display and edit the configuration information of the logic blocks.
[0203] By dragging and dropping from the logic block list on the logic editing page, select a logic block and place it in the editing window for connection, and edit the configuration information of the logic block through the configuration window to create a logic chain.
[0204] Figure 7 Schematic diagram of the logic editing page of an embodiment of the present invention. Figure 7 As shown in the figure, it represents a notification logic editing page. The notification logic chain is formed by connecting the logic blocks end to end. The selection of logic blocks is based on the needs. The notification logic chain supports directed cyclic graphs, and the logic blocks on the ring can use the "multi-way switch" logic block or "expression" to form a link for the output interface to jump out of the ring.
[0205] The notification logic chain has a system-unique name. During operation, the logic block will record the number of times a single piece of data enters. If the number exceeds a certain limit, the data will be discarded to prevent an infinite loop.
[0206] Figure 8 is a schematic diagram of an example logic chain of an embodiment of the present invention, such as Figure 8 As shown in the figure, it shows the details of a notification logic chain, which realizes the functions of: factory production line equipment failure alarm, removing duplicate alarms, and then notifying the operator to handle it. If it is not restored within 5 minutes, the operator is notified again; the notification logic chain execution process includes:
[0207] Step S01, receiving a device alarm message;
[0208] Step S02, obtaining the Meet variable in the device alarm message, true indicates that an alarm is generated, and false indicates that the alarm is eliminated; if false, executing step 403, if true, executing step 404;
[0209] Step S03, setting the "Alarming" in the local variable to false, ending the entire processing link;
[0210] Step S04, obtain "Alarming" in the local variable. If true, it means that there is another repeated alarm being processed, and the alarm message is abandoned; if false, execute step 405;
[0211] Step S05, set the "Alarming" in the local variable to true, and continue to execute step 406;
[0212] Step S06, notifying the operator through a specific notification service module;
[0213] Step S07, delay for 5 minutes (if an alarm is eliminated or data concurrency is generated within these 5 minutes, proceed to step S01);
[0214] Step S08, obtain "Alarming" in the local variable. If true, it means that the alarm has not been eliminated, and step S06 is executed again; if false, it means that the alarm has been eliminated, and the entire processing link is terminated.
[0215] Variables include three effective ranges: global variables, local variables, and notification variables. Global variables can be set and obtained by all notification logic instances. Local variables can be set and obtained by the notification logic instance to which they belong. Notification variables, i.e. notification messages, can be set and obtained by the logic block that obtains the notification message. The notification logic instance can be the processing logic for a message notification of a target information.
[0216] As an optional embodiment, the message logic module also includes: a logic debugging unit for performing logic chain debugging; the logic debugging page of the logic debugging unit includes a debugging window, a variable window, and a running window; the debugging window is used to select a logic block to be debugged and to change the debugging state of the logic block, the variable window is used to display the variable processing process in the logic block to be debugged, and the running window is used to display the running information of the logic block to be debugged, wherein the running information includes the debugging state, error information, and error location; the logic debugging unit also includes a debugging state machine for controlling the state change logic of the logic block.
[0217] Debug the logic block through the debugging window of the logic debugging page, display the variable processing process through the variable window, and display the running information through the running window. Debug the logic block through the debugging state and control the change of the debugging state.
[0218] When the message notification system is started, a copy of the logic block will be automatically backed up. At this time, the processing logic of these logic blocks will not change and will remain in operation. If the user wants to change the processing logic of the logic block, he will enter the logic arrangement page to modify it. The modification process will not affect the running logic block. After the user makes the modification, click "Save".
[0219] At this point, debugging is generally performed to determine whether the logic block is intact. If it is indeed good, the user will click "Publish". At this point, the running logic block will stop and be replaced with a new logic block, and continue to run.
[0220] For the logic block being debugged, the debug state machine is RUNNING and the logic block is marked with a breakpoint. Then the logic block is recorded as a breakpoint, the debug state is switched to a breakpoint, and the logic block is suspended and waits for the signal to continue or stop. If the debug state machine is RUNNING and the logic block is not marked with a breakpoint, the related logic will continue to run. If the debug state machine is BREAK, FAIL, or PAUSE, the logic block will be suspended and waits for the signal to continue or stop. If the debug state machine is STOP or does not exist, the logic block will stop running. For the logic block not being debugged, the related logic will be run directly.
[0221] Fig. 9 Schematic diagram of a logic debugging interface of an embodiment of the present invention. Fig. 9As shown, specifically, for graphical debugging of notification logic, turn on the debugging switch of the logic block on the logic debugging page; then the user can choose to start, pause, stop, continue, initiate a notification, manually modify variables, view running information and other debugging operations.
[0222] The start, pause, stop, and continue operations will change the debugging state and need to satisfy the debugging state machine. They cannot be operated at will. Initiating a notification means initiating a system default data entry notification logic. Manually modifying variables means that global variables, local variables, and notification variables can be obtained and modified, thereby implementing customized variables or messages.
[0223] Fig.10 Schematic diagram of a debugging state machine according to an embodiment of the present invention. Fig.10 As shown, in the RUNNING state, you can use the breakpoint ( Fig.10 1, the system automatically converts the behavior into BREAK and records the breakpoint logic block; by pausing ( Fig.10 The behavior 3) in the figure is converted to PAUSE, and the paused logic block is recorded; when the logic block fails to execute (5 in the figure), it is converted to FAIL, and the stopped logic block and the error reason are recorded; by stopping ( Fig.10 7) behavior to convert it to STOP.
[0224] When in the BREAK state, you can continue ( Fig.10 The behavior in 2) is converted to RUNNING and the logic block information of the breakpoint is cleared; you can stop ( Fig.10 The behavior in 10) is converted to STOP.
[0225] When in PAUSE state, you can continue ( Fig.10 The behavior in 4) is converted to RUNNING and the suspended logic block information is cleared; it can be stopped by ( Fig.10 The behavior in 9) is converted to STOP.
[0226] When in FAIL state, you can continue ( Fig.10 The behavior in 6) is converted to RUNNING, and the wrong logic block information and error information are cleared; you can stop ( Fig.10 The behavior in 8) is converted to STOP.
[0227] When in STOP state, the debugger immediately destroys the logic block notified by the message while the debugger is running.
[0228] An embodiment of the present invention further provides an electronic device, comprising: at least one processor; and a memory in communication with the at least one processor. The memory stores a computer program executable by the at least one processor, and when the at least one processor executes the computer program, the electronic device executes the method of the embodiment of the present invention.
[0229] An embodiment of the present invention further provides a non-transitory machine-readable medium storing a computer program, wherein the computer program, when executed by a processor of a computer, is used to cause the computer to execute the method of the embodiment of the present invention.
[0230] An embodiment of the present invention further provides a computer program product, including a computer program, wherein the computer program, when executed by a processor of a computer, is used to enable the computer to execute the method of the embodiment of the present invention.
[0231] As an optional embodiment, the content and format of target information of different source systems are different, and the extensible interface is used to dynamically organize the basic type data of the target information in the form of mapping tables and arrays to generate the target information in the form of mapping tables and arrays; wherein the basic type data can be used for logical chain processing, and the basic type data includes at least one of the following: integer data, floating point data, string data, Boolean data.
[0232] By organizing basic types of data in the form of mapping tables and arrays, target information of various contents and formats from various source systems can be effectively received, and subsequent data processing is convenient.
[0233] The content and format of the above target information are not fixed. The extensible interface can dynamically organize basic types of data such as integers, floating points, strings, Booleans, etc. in the form of mapping tables and arrays; mapping tables and arrays can be nested but will not reference each other; the sources of the target information include but are not limited to reporting systems, alarm monitoring and control systems, third-party applications and other source systems.
[0234] refer to Fig.11 , a block diagram of an electronic device that can be used as a server or client of an embodiment of the present invention will now be described, which is an example of a hardware device that can be applied to various aspects of the present invention. Electronic devices are intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. Electronic devices can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0235] like Fig.11 As shown, the electronic device includes a computing unit 1101, which can store data stored in a read-only memory (ROM)
[0236] The computer program in the computing unit 1101, the ROM 1102 or the computer program loaded from the storage unit 1108 into the random access memory (RAM) 1103 is used to perform various appropriate actions and processes. In the RAM 1103, various programs and data required for the operation of the electronic device can also be stored. The computing unit 1101, the ROM 1102 and the RAM 1103 are connected to each other via a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.
[0237] Multiple components in the electronic device are connected to the I / O interface 1105, including: an input unit 1106, an output unit 1107, a storage unit 1108, and a communication unit 1109. The input unit 1106 can be any type of device that can input information to the electronic device, and the input unit 1106 can receive input digital or character information, and generate key signal input related to user settings and / or function control of the electronic device. The output unit 1107 can be any type of device that can present information, and can include but is not limited to a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The storage unit 1108 can include but is not limited to a disk, an optical disk. The communication unit 1109 allows the electronic device to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and can include but is not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver, and / or a chipset, such as a Bluetooth device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.
[0238] The computing unit 1101 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 1101 include, but are not limited to, a CPU, a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 1101 performs the various methods and processes described above. For example, in some embodiments, the method embodiments of the present invention may be implemented as a computer program, which is tangibly contained in a machine-readable medium, such as a storage unit 1108. In some embodiments, part or all of the computer program may be loaded and / or installed on an electronic device via a ROM 1102 and / or a communication unit 1109. In some embodiments, the computing unit 1101 may be configured to perform the above-described method in any other appropriate manner (e.g., by means of firmware).
[0239] The computer programs for implementing the methods of the embodiments of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer programs are executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer programs may be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.
[0240] In the context of an embodiment of the present invention, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable signal medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0241] It should be noted that the term "including" and its variations used in the embodiments of the present invention are open inclusions, that is, "including but not limited to". The term "based on" means "based at least in part on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one other embodiment"; the term "some embodiments" means "at least some embodiments". The modifications of "one" and "multiple" mentioned in the embodiments of the present invention are illustrative rather than restrictive. Those skilled in the art should understand that unless the context clearly indicates otherwise, it should be understood as "one or more".
[0242] The user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in the embodiments of the present invention are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0243] The various steps described in the method implementation methods provided in the embodiments of the present invention may be performed in different orders and / or in parallel. In addition, the method implementation methods may include additional steps and / or omit the steps shown. The scope of protection of the present invention is not limited in this respect.
[0244] The term "embodiment" in this specification refers to specific features, structures or characteristics described in conjunction with the embodiment that can be included in at least one embodiment of the present invention. The appearance of this phrase in various places in the specification does not necessarily mean the same embodiment, nor does it mean that it is mutually exclusive with other embodiments and is independent or optional. The various embodiments in this specification are described in a related manner, and the same or similar parts between the various embodiments refer to each other. In particular, for the device, equipment, and system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts refer to the partial description of the method embodiment.
[0245] The above-mentioned embodiments only express several implementation methods of the present invention, and the description thereof is relatively specific and detailed, but it cannot be understood as limiting the scope of patent protection. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present invention, and these all belong to the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be subject to the attached claims.
Claims
1. A message notification method, comprising: Acquire target information from a source system, wherein the target information includes data required for the notification message; Processing the target information according to a set logic chain and outputting a notification message, wherein the logic chain is used to execute processing logic corresponding to different data to generate corresponding notification messages, and the logic chain includes multiple logic blocks set according to the processing logic of the target information, and the logic blocks are used to process the target information, and the logic blocks are connected according to the processing logic; The notification message is sent to a set object in a preset manner.
2. The method according to claim 1, wherein: The target information is processed according to the set logic chain, and before the notification message is output, the method further includes: On the logic editing page, respond to the editing operation of the logic block and generate the logic chain to be tested; Debugging the logic chain to be tested by using the target information; When the debugging meets the requirements, the logic chain to be tested is used as the set logic chain.
3. The method according to claim 2, wherein: Debugging the logic chain to be tested by using the target information includes: Inputting the target information into the logic chain to be tested for operation processing; Obtaining operation information of each logic block of the logic chain to be tested; The logic block with the operation error is adjusted according to the operation information until the output of the logic chain to be tested is the notification message of the target information.
4. The method according to claim 3, wherein: Inputting the target information into the logic chain to be tested for operation processing includes: In response to the state operation of the logic block of the logic chain to be tested, the debugging state of the logic block is changed; The logic chain to be tested is run according to the debugging state of the logic block, and the running information of each logic block during the running is recorded.
5. The method according to claim 4, wherein: The debugging state includes: running, breakpoint, pause, failure and stop; in response to the state operation of the logic block of the logic chain to be tested, changing the debugging state of the logic block includes: When the debugging state of the logic block is running, the debugging state is changed to a breakpoint state in response to a breakpoint operation, or the debugging state is changed to a pause state in response to a pause operation, or the debugging state is changed to a failure state in case of execution failure, or the debugging state is changed to a stop state in response to a stop operation; When the debugging state of the logic block is a breakpoint, a pause or a failure, responding to a resume operation to change the debugging state to a breakpoint state, or responding to a stop operation to change the debugging state to a stop state; When the debugging state of the logic block is stopped, the debugging is terminated.
6. A message notification system, comprising: Extensible interface, message logic module, message notification module; The extensible interface is connected to a source system that generates target information, and the extensible interface is used to expand a corresponding interface according to a communication requirement of the source system to receive the target information, wherein the target information includes data required for a notification message; the extensible interface is also connected to the message logic module; The message logic module is used to process the target information according to a set logic chain and output a corresponding notification message, wherein the logic chain includes a plurality of logic blocks connected according to the processing logic of the target information, and the logic blocks are used to process the target information; The message notification module is connected to the message logic module, and the message notification module is used to send the notification message to the set object in a preset manner.
7. The system according to claim 6, wherein: The message logic module includes: a plurality of logic blocks, a logic editing unit; The plurality of logic blocks include at least one of the following: a start logic block, a multi-way switch logic block, an expression logic block, a variable setting logic block, a delay logic block, a jump logic block, a script logic block, a notification logic block, and a multi-way fork logic block; The logic editing unit is used to select different logic blocks and connect them into a logic chain according to the editing operation.
8. The system according to claim 7, wherein: The start logic block is used to input the start logic block of the target information, and the start logic block configures the source system identifier of the target information to obtain the notification logic instance corresponding to the source system, wherein the notification logic instance is an instance generated according to a pre-configured logic chain, the source system identifier includes a two-dimensional array, the first dimension of the two-dimensional array represents the splicing through different target information, the second dimension of the two-dimensional array represents the path of the target information, and a notification logic chain has and only has one start logic block; The multi-way switch logic block is used to obtain the value of the variable, and configure the processing formula of the value, and the output interface corresponding to the different processing result values, wherein the processing formula includes the variable formula and / or the calculation method, the correct output interface of the multi-way switch includes a user-defined value output interface and a default output interface, the default output interface represents the output interface when the value of the variable does not exist, the variable formula is used to obtain the value from the variable, and the variable formula includes the path of the variable; The expression logic block is used to configure an expression, the expression includes a variable formula and / or a calculation method, the correct output interface of the expression includes a true interface and a false interface, when the final result of the expression is true, it is output from the true interface, and when the final result of the expression is false, it is output from the false interface; The variable setting logic block is used to configure variables and a calculation method of the variables, wherein the variables are variables required for generating notifications for the target information, and the variables include global variables, local variables, and notification variables. The global variables are used to be set and obtained by all notification logic instances, the local variables are used to be set and obtained by the corresponding part of the notification logic instances, and the notification variables are used to be set and obtained by the logic block that obtains the notification message; The delay logic block is used to configure the delay time, and the delay time will be paused when data passes; The jump logic block is used to configure the jump between logic chains; The script logic block is used to configure data processing scripts, supports scripts in multiple computer languages, and the data processing scripts support built-in functions related to variables; The notification logic block is used to generate a final notification message through message merging, message packaging, and notification service, wherein the message merging means merging multiple notification messages into one before pushing the notification message, and the configuration parameters of the message merging include delay time and sending frequency; the delay time indicates the delay time after the first notification message of a single merging behavior arrives, and the sending frequency indicates the frequency limit of pushing the notification message. The notification service is configured with notification information, which is used to send the notification message to the notification object in a set communication mode according to the notification information; The multi-way fork logic block is used to configure the number of forks of the logical chain and distribute data to different notification logical links. The data distribution mode of the multi-way fork logic block supports replication and reference. Replication means forming multiple data that do not interfere with each other and then distributing them, and reference means using the same data for distribution.
9. The system according to claim 7, wherein: The logic block includes: input interface, output interface, name, and configuration information; The input interface is used to receive the target information, or intermediate data output by the connected logic block; The configuration information is used to identify processing parameters of the logic block for input data, and the input data is processed according to the processing parameters to obtain output data; The output interface is used to output the output data, wherein the output interface includes at least one of the following: all output interfaces, used to output the processing results in all execution situations; correct output interfaces, used to output the processing results in normal execution situations; error output interfaces, used to output the processing results in normal execution situations; The input interface and the output interface are also used to respond to a connection operation and connect to an input interface or an output interface of another logic block; The name is used to identify the logic block, so that during operation, the number of times a single piece of data enters the logic block is recorded, and when the number of times the single piece of data enters exceeds a preset number, the single piece of data is discarded.
10. The system according to claim 9, wherein: The logic block also includes: an operation bar, a debugging switch, The operation bar includes a plurality of operation controls for operating the logic block, and the plurality of operation controls include at least one of the following: a delete control for deleting a logic block, a copy control for copying a logic block, a configuration control for modifying configuration information, and an add output control for adding a new output interface; The debugging switch is used to control the start and stop of the debugging state of the logic block.
11. The system according to claim 7, wherein: The logic editing unit includes: a logic editing page, The logic editing page includes a logic block list, an editing window, and a configuration window; The logic block list includes identification information of a plurality of logic blocks, and is used to respond to a drag operation and display the dragged logic block in the editing window; The editing window is used to connect corresponding logic blocks in response to the connection operation; The configuration window is used to respond to configuration operations and display and edit the configuration information of the logic block.
12. The system according to claim 6, wherein: The message logic module further comprises: a logic debugging unit for performing logic chain debugging; The logic debugging page of the logic debugging unit includes a debugging window, a variable window, and a running window; The debugging window is used to select the debugged logic block and change the debugging state of the logic block, the variable window is used to display the variable processing process in the debugged logic block, and the running window is used to display the running information of the debugged logic block, wherein the running information includes the debugging state, error information, and error location; The logic debugging unit further includes a debugging state machine for controlling the state change logic of the logic block.
13. A system according to any one of claims 6 to 12, wherein: The target information of different source systems has different contents and formats. The extensible interface is used to dynamically organize the basic type data of the target information in the form of mapping tables and arrays to generate the target information in the form of mapping tables and arrays. The basic type data may be used for logic chain processing, and the basic type data includes at least one of the following: integer data, floating point data, string data, and Boolean data.
14. An electronic device comprising: A processor, and a memory storing a program, wherein the program comprises instructions which, when executed by the processor, cause the processor to perform the method according to any one of claims 1 to 5.
15. A non-transitory machine-readable medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 5.