flexbe_states.input_state module

class flexbe_states.input_state.InputState(*args: Any, **kwargs: Any)

Bases: EventState

Implements a state where the state machine needs an input from the operator.

Requests of different types, such as requesting a waypoint, a template, or a pose, can be specified.

– request uint8 One of the custom-defined values to specify the type of request. – message string Message displayed to the operator to let him know what to do. – timeout float Timeout in seconds to wait for server to be available.

#> data object The data provided by the operator. The exact type depends on the request.

<= received Returned as soon as valid data is available. <= aborted The operator declined to provide the requested data. <= no_connection No request could be sent to the operator. <= data_error Data has been received, but could not be deserialized successfully.

Note: This state uses the Pickle module, and is subject to this warning from the Pickle manual:

Warning: The pickle module is not secure against erroneous or maliciously constructed data. Never unpickle data received from an untrusted or unauthenticated source.

If using this state to accept user input, it is up to the user to protect their network from untrusted data!

execute(userdata)
on_enter(userdata)