Event-driven rule-based messaging system
First Claim
1. A method for manipulating a message in an apparatus including a messaging system, said method comprising the steps of:
- inputting selected information via a user input device into at least one data field;
formulating, in response to said selected information input into said at least one data field, at least one rule comprising an event portion, a condition portion, and an action portion;
translating said at least one rule into an instruction stream for execution by said apparatus; and
executing said instruction stream in said apparatus to manipulate said message in accordance with said instruction stream;
wherein said user input device comprises at least one graphical user interface presenting a template, and the step of inputting selected information includes filling in at least one blank in said template which provides said at least one data field and provides at least one of said event portion, said condition portion, and said action portion of said at least one rule;
wherein said inputting step includes interacting with said graphical user interface and said formulating step includes composing said at least one rule according to a scripting language to form a completed rule.
11 Assignments
0 Petitions
Accused Products
Abstract
A flexible, event driven and conditional rule based mail messaging system which can be transparently implemented for use in electronic mail applications. A rule mechanism is implemented having a "When-If-Then" event-driven, conditional, action-invoking paradigm or "triplet" which permits definition of a repertoire of events considered to be significant events upon which to trigger actions in the electronic mail messaging system. Each particular event may be associated with a specific mail message and/or rules to promote efficient mapping of messages, events and rules so that only rules associated with a specific event are invoked upon occurrence of the event. Only relevant rules, i.e. those associated with a satisfied event, need be further processed. A graphical user interface to a structured rule editor facilitates synthesis of rules by a user via a substantially transparent rule engine. A modular architecture for the structured rule editors effects an extensible and portable facility invoking selected rule scripting language to implement various functions in the context of various electronic mail messaging environments.
365 Citations
22 Claims
-
1. A method for manipulating a message in an apparatus including a messaging system, said method comprising the steps of:
-
inputting selected information via a user input device into at least one data field; formulating, in response to said selected information input into said at least one data field, at least one rule comprising an event portion, a condition portion, and an action portion; translating said at least one rule into an instruction stream for execution by said apparatus; and executing said instruction stream in said apparatus to manipulate said message in accordance with said instruction stream; wherein said user input device comprises at least one graphical user interface presenting a template, and the step of inputting selected information includes filling in at least one blank in said template which provides said at least one data field and provides at least one of said event portion, said condition portion, and said action portion of said at least one rule; wherein said inputting step includes interacting with said graphical user interface and said formulating step includes composing said at least one rule according to a scripting language to form a completed rule. - View Dependent Claims (2)
-
-
3. Apparatus for connection to a network for sending messages from said apparatus and for receiving messages from at least one other network connected device, comprising:
-
a processor processing messages received from said at least one other network connected device in accordance with at least one of a plurality of rules, said at least one of said plurality of rules comprising a plurality of fields including an event portion, a condition portion, and an action portion, said event portion specifying at least one of a plurality of types of occurrence that initiate evaluation of said condition portion, said condition portion specifying at least one condition which upon satisfaction initiates execution of an action specified in said action portion; at least one user interface in electrical communication with said processor and having at least one selectively alterable field that is altered by a selection made by a user, said selection providing information for at least one of said plurality of fields; a translation mechanism receiving said selection and incorporating said at least one of said plurality of fields to form at least one completed rule, said translation mechanism translating said at least one completed rule into a processor executable information stream; and an event mechanism operative to indicate the occurrence of at least one of said plurality of types of occurrence and processing event information upon occurrence of said plurality of types of occurrence, said event mechanism conveying said event information to said processor whereupon said processor executes said processor executable information stream to evaluate said condition portion and to initiate performance of said action upon satisfaction of said condition portion; wherein said event mechanism further comprises an event manager which further comprises at least one event queue, said event manager is operative to create event records in accordance with said plurality of events to store in said at least one event queue, and said event manager is operative to retrieve event records from said at least one event queue; and wherein said at least one event queue comprises a persistent event queue for storing events which persist across invocations of said rule processor and a non-persistent event queue for storing events that do not persist across invocations of said rule processor. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for manipulating a message in an apparatus including a messaging system, said method comprising the steps of:
-
inputting selected information via a user input device into at least one data field; formulating, in response to said inputting step, at least one rule according to a scripting language comprising an event portion, a condition portion, and an action portion; translating said at least one rule into an instruction stream for execution by said apparatus; and executing said instruction stream in said apparatus to manipulate said message in accordance with said instruction stream. - View Dependent Claims (15)
-
-
16. A method for manipulating a message in an apparatus including a messaging system, said method comprising the steps of:
-
inputting selected information via a user input device into at least one data field; formulating, in response to said inputting step, at least one rule comprising an event portion, a condition portion, and an action portion; translating said at least one rule into a byte-code stream forming an instruction stream for execution by said apparatus; and executing said instruction stream in said apparatus to manipulate said message in accordance with said instruction stream. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification