State Machine definition

State Machines provide the ability to track and evaluate a "state" and to determine when an object transitions from one state to another. A single state machine can be defined with multiple states, and each state can have one or more expression rules. For example, you can define a state location as "At the port" or "At the warehouse". A transition may be when an object associated with that state machine moves from the "At the port" state to the "At the warehouse" location.

For help on configuring expression rules that run for the states in a state machine, see StateChange trigger. An expression rule can be configured to set the state or get the state of a state machine.

Note: State Machines and their states can be configured and managed through the Axeda Configuration application and through Axeda Platform Web services. Refer to the topic, View and manage state machines, for information about adding, editing, and managing state machines. Refer to the Axeda® Platform Web Services Developer's Reference Guide for details about using the Web services for state rules.

A State Machine is a complex object containing states and Expression Rules. State Machines provide the ability to evaluate when a monitored device or object is transitioning from one predefined state or condition to another and then run rules based on the state. Both the Axeda® Configuration application and the Axeda® Connected Product Management Applications Web services provide support for creating, updating, and deleting State Machine objects; each operation is performed on the object as a whole.

State Machines are comprised of states, and each state can have one or more associated Expression Rules. An example of a State Machine could be a Truck. Examples of states for the Truck State Machine could be: dock (State1), transit (State2), idle (State3), destination (State4), and so forth. Each state can have multiple associated expression rules that are run when the State Machine enters that state (that is, that state evaluates to true), including when the State Machine is entering or leaving the state. For example, when the Truck is in transit, the expression rules defined for State2 run (Consecutively or not, depending on how the ExpressionRule is configured). Then, when the Truck is idling, the expression rule(s) for that state run, and so forth.

For information about configuring state machines using the Axeda Configuration application, refer to the following topics:

o        Configure the state machine

o        Apply this state machine to models and assets

o        View and manage state machines

For information about using Axeda Applications Web services for state machines, refer to the Axeda® Connected Product Management Applications Web Services Developer's Reference.

For information about security for state machines, refer to Security for Objects in Axeda® Connected Product Management Applications and for information about security for these objects when Delegated Administration is enabled, refer to Security for Objects in Delegated Administration Units.

In a Platform with Delegated Administration enabled, the names of state machines may have prefixes; for details, refer to Names of Objects in DA Units.