actionlib
The actionlib stack provides a standardized interface for
interfacing with preemptable tasks. Examples of this include moving
the base to a target location, performing a laser scan and returning
the resulting point cloud, detecting the handle of a door, etc.
ActionClient Code API
ActionServer Code API
Communication Protocol
The values for the status of a goal are as follows:
- PENDING - The goal has yet to be processed by the action server
- ACTIVE - The goal is currently being processed by the action server
- REJECTED - The goal was rejected by the action server without being processed and without a request from the action client to cancel
- SUCCEEDED - The goal was achieved successfully by the action server
- ABORTED - The goal was aborted by the action server
- PREEMPTING - Processing of the goal was canceled by either another goal, or a cancel request sent to the action server
- PREEMPTED - The goal was preempted by either another goal, or a preempt message being sent to the action server
- RECALLING - The goal has not been processed and a cancel request has been received from the action client, but the action server has not confirmed the goal is canceled
- RECALLED - The goal was canceled by either another goal, or a cancel request before the action server began processing the goal
- LOST - The goal was sent by the ActionClient, but disappeared due to some communication error