Messaging State Machine Logic Injection for Custom Application Flows

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing large-scale messaging systems lack convenient means for enterprises to define custom processing logic for messaging state machines, limiting their ability to implement applications tailored to their specific needs.

Innovation Solution

A distributed computer system that allows users to define application-specific flows using a message application processor, which includes a flow service for evaluating flow definitions and transitioning messages between states, enabling custom logic execution at state transitions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If enterprises use general-purpose messaging state machines, then system scalability and reliability are improved, but the ability to implement custom application-specific logic is limited

Engineering Contradiction:
Improvemessaging system reliabilityVSAvoidcustom processing logic capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system segments the messaging platform into a core general-purpose state machine engine and separable enterprise-specific flow definitions. The core engine handles reliable message routing and state transitions, while enterprises can attach their custom flow logic as independent, configurable layers that hook into specific state transitions without modifying the core engine.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces flow definitions as intermediary components that mediate between the general-purpose state machine and enterprise-specific requirements. These flow definitions act as configurable intermediaries that can be attached to state transitions, allowing custom logic to be injected without compromising the stability of the core messaging system.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If enterprises define custom flows themselves, then application versatility is improved, but system complexity increases

Engineering Contradiction:
Improveapplication-specific flow customizationVSAvoidflow definition complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system enables enterprises to define and manage their own flow configurations through self-service mechanisms. Enterprises can create, modify, and deploy their custom flow definitions without requiring system administrators or vendor intervention, thereby reducing operational complexity while maintaining high versatility.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The flow definition system uses universal, channel-agnostic state machine models that can be applied across multiple messaging channels (SMS, WhatsApp, email, etc.). This universal approach reduces complexity by providing a single configurable framework that works across diverse applications and channels rather than requiring separate customizations for each.

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

3Adaptability or versatility

If flow definitions are evaluated at each state transition, then custom logic execution is improved, but processing time increases

Engineering Contradiction:
Improvecustom logic executionVSAvoidmessage processing time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system evaluates flow definitions selectively rather than exhaustively at every state transition. Flow hooks are attached to specific state transitions where custom logic is needed, and the evaluation is performed only when those specific transitions occur, avoiding unnecessary processing overhead while maintaining custom logic execution capability.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12395459B2Logic injection in messaging state machines
Publication Date: 2025.08.19 MESSAGEBIRD BIDCO BV
  • US12395459B2 patent drawing
  • US12395459B2 patent drawing
  • US12395459B2 patent drawing

AI summary

A computer-implemented method, comprising using a message application processor, receiving a first request from a separate application server computer executing a particular computer program application to create and cause sending a digital electronic mess age; in response to the request, the message application processor creating the message and assigning a status value to the message, the status value being associated with a first state of the message; the message application processor causing the message to transition to a subsequent state; the message application processor performing a flow hook lookup to determine whether a flow definition is associated with the transition from the first state to the subsequent state and with the particular computer program application, and in response thereto, evaluating the flow definition based on the message to result in executing an operation specified in the flow definition using one or more of a payload of the message, the status value, or a channel identifier of the message; the message application processor selecting, based on the channel identifier, a particular communication channel among a plurality of different communication channels, and transmitting a request to the particular communication channel to transmit the message using the particular communication channel.