Mission Manager API
The Mission Manager API allows creation, deletion, and modification of OutdoorNav missions. Mission data is stored in a databse-like structure on-disk. The web UI is the primary method of managing missions, but this service API provides the ability to write your own UI if desired.
Topics Exported by Mission Manager
mission_manager/state
Message Type: onav_mission_manager_msgs/msg/StorageState
Description: Latched topic that publishes the current database contents every time a change is made.
Services Exported by Mission Manager
mission_manager/add_task_to_waypoint
Service Type: onav_mission_manager_msgs/srv/AddRemoveById
Description: Add an existing Task to an existing Waypoint. If the position
parameter is negative the Task
is added to the end of the Waypoint's tasks
list.
mission_manager/add_waypoint_to_mission
Service Type: onav_mission_manager_msgs/srv/AddRemoveById
Description: Add an existing Waypoint to an existing Mission. If the position
parameter is negative the Waypoint
is added to the end of the Task's waypoints
list.
mission_manager/clone_mission
Service Type: onav_mission_manager_msgs/srv/CloneMission
Description: Create a deep-copy of a Mission. The new Mission will be given the provided name, or reuse the original
mission's name wth -copy
appended to the end if no name is provided. All Waypoints and their associated Tasks are also
duplicated but not renamed.
In 0.8.0 onward, all missions are required to have unique names. If the specified name is not unique the cloning will
fail. Cloning a mission multiple times without specifying a unique name will add incrementing numbers to the suffix:
-copy
for the first, -copy1
for the second, -copy2
for the third, and so on.
mission_manager/clone_task
Service Type: onav_mission_manager_msgs/srv/GetTask
Description: Create a deep-copy of a Task.
mission_manager/clone_waypoint
Service Type: onav_mission_manager_msgs/srv/GetWaypoint
Description: Create a deep-copy of a Waypoint. The new Waypoint will be renamed to have -copy
at the end. All
Tasks in the original Waypoint are also duplicated.
mission_manager/create_mission
Service Type: onav_mission_manager_msgs/srv/CreateMission
Description: Create a new Mission.
In 0.8.0 onward, all missions are required to have unique names. Creating a mission with a duplicate mission will fail.
mission_manager/create_task
Service Type: onav_mission_manager_msgs/srv/CreateTask
Description: Create a new Task.
mission_manager/create_waypoint
Service Type: onav_mission_manager_msgs/srv/CreateWaypoint
Description: Create a new Waypoint.
mission_manager/delete_all
Service Type: onav_mission_manager_msgs/srv/DeleteEverything
Description: Delete everything in the database.
Use with extreme caution; this procedure cannot be undone.
mission_manager/delete_mission
Service Type: onav_mission_manager_msgs/srv/DeleteById
Description: Delete the Mission with the given ID. Waypoints that are included in this mission are not deleted, as they may be referenced by other Missions.
mission_manager/delete_orphan_objects
Service Type: onav_mission_manager_msgs/srv/DeleteEverything
Description: Delete all Waypoints that are not referenced by any Missions and all Tasks that are not referenced by any Waypoints.
Use with caution; deleted items cannot be recovered.