Rules Engine Message Routing via MQTT Hierarchical Topics

Solution Overview

Problem

Complex systems with rules engines face difficulties in managing and maintaining proper configurations, especially in routing decisions and actions, which can be time-consuming and prone to interference with the timely execution of rules.

Innovation Solution

A system that integrates a rules engine with a router configured to programmatically route results of rule execution using a hierarchical structure, supporting a publish/subscribe connectivity protocol like MQTT, allowing automatic publication of rule outputs to specific topics and enabling multiple processes to subscribe and process results without needing external interfaces or synchronization of configuration data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a rules engine is integrated with external interfaces for routing decisions, then routing flexibility is improved, but system complexity and configuration maintenance difficulty increase

Engineering Contradiction:
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges the rules engine with a message broker (publish/subscribe system) into a single integrated component. The rules engine directly publishes results to topics and subscribes to input topics without external routing interfaces. This consolidation eliminates the need for separate routing configuration while maintaining routing flexibility through topic-based publication and subscription mechanisms.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The message broker serves multiple functions: it acts as the routing mechanism, the data distribution system, and the communication interface. The same publish/subscribe infrastructure handles both rule result distribution and sensor data input, eliminating the need for separate specialized interfaces and reducing overall system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If additional software components are added for routing and configuration management, then routing control capability is improved, but ease of operation and maintenance deteriorate

Engineering Contradiction:
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The rules engine autonomously publishes results to appropriate topics and subscribes to input topics using topic names derived from its own configuration. The system self-manages its routing without requiring external routing components or complex configuration synchronization. Each rule automatically determines its publication topic based on its configuration, eliminating manual routing setup.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The message broker acts as an intermediary that simplifies communication between the rules engine and other system components. Instead of the rules engine directly interfacing with multiple target systems, all communication goes through the standardized publish/subscribe mechanism, which handles routing, filtering, and distribution automatically based on topic subscriptions.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If complex additional functions are added to enhance rules, then functional capability is improved, but execution time and stability are worsened

Engineering Contradiction:
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system segments complex processing into two distinct phases: rule evaluation (time-critical) and result processing (flexible). The rules engine executes rules and publishes results without waiting for result processing, while complex additional functions process the published results asynchronously through subscriptions. This separation ensures that rule execution speed is not affected by the complexity of result processing functions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The rules engine continuously executes rules and publishes results without interruption, maintaining steady execution flow. Complex additional functions continuously subscribe and process results in parallel, ensuring that useful actions (rule evaluation and result processing) continue simultaneously without blocking each other, thereby maintaining high execution throughput.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10878323B2Rules engine combined with message routing
Publication Date: 2020.12.29
  • US10878323B2 patent drawing
  • US10878323B2 patent drawing
  • US10878323B2 patent drawing

AI summary

A networked system for managing a physical intrusion detection/alarm includes tiers devices and a rules engine and router to interact with the rules engine and rule engine results, where the router is configured to feed inputs to and receive outputs from the rules engine, and the router further configured to programmatically route results of rule execution by the rules engine to a hierarchical structure stored in computer storage for access by subscriber devices.