Fsm
A FSM is a final state machine which is executed by the ENF (emulated network function) during the flow, the FSM can change from one state to another in response to events, as well as execute actions during state transition for checks/wait operations.
An FSM is configured as a list of transitions, each transition has a state, the next state, an event which initates the transtition, and a list of actions to execute during the state transition.
State
A state is a simple string value to describe the transition state. An FSM must have a "start_state" and "final_state".
Event
An event initiates the state transition actions, events that can be used are messages that the ENF (emulated network function) receives during its execution. The specific list of events that can be used during a flow execution is determined by the NF that the ENV is configured to emulate.
A "start" event must be configured as part of the "state_state" state.
Timeout
Configure the timeout for that specific state.
The above FSM can be view as the following
Actions
An action is an operation that is execute during the state transition. An ENF has 3 types of actions it can execute:
message
check
wait
message
A message action is defined as message."message name"; the "message name" must be part of the messages section of the flow
check
A check action is defined as check."check name"; the "check name" must be part of the checks section of the flow
wait
A wait action is defnied as wait."duration"; where duration is a string of decimal number with a unit suffix, such as "300ms", "1s". Valid time units are "ms", "s"
A wait action can be used to "wait" between messages, allowing to delay / control the rate of which messages are being sent between each state transtition
Last updated
Was this helpful?