package bosdyn.api.mission

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service MissionService

mission_service.proto:18

The MissionService can be used to specify high level autonomous behaviors for Spot using behavior trees.

service RemoteMissionService

remote_service.proto:17

Interface for mission callbacks. Mission RemoteGrpc nodes will act as clients to this service type, calling out to this service when loaded, ticked, or unloaded.

enum AnswerQuestionResponse.Status

mission.proto:186

Possible results for answering a question.

Used in: AnswerQuestionResponse

message BosdynDockState

nodes.proto:317

Get the state of the docking service from the robot.

Used in: Node

message BosdynGraphNavLocalize

nodes.proto:429

Tell GraphNav to re-localize the robot using a SetLocalizationRequest. This overrides whatever the current localization is. This can be useful to reinitialize the system at a known state.

Used in: Node

message BosdynGraphNavState

nodes.proto:409

Get GraphNav state from the robot and save it to the blackboard.

Used in: Node

message BosdynGripperCameraParamsState

nodes.proto:619

Get the state of the gripper camera params from the robot.

Used in: Node

message BosdynNavigateRoute

nodes.proto:380

Tell the robot to navigate a route.

Used in: Node

message BosdynNavigateTo

nodes.proto:354

Tell the robot to navigate to a waypoint.

Used in: Node

message BosdynPowerRequest

nodes.proto:343

Make a robot power request

Used in: Node

message BosdynQueryStoredCaptures

nodes.proto:977

Write the QueryStoredCapturesResponse for a given QueryParameters message to the blackboard.

Used in: Node

message BosdynQueryStoredCaptures.CaptureActionIdFormat

nodes.proto:992

Format strings that will be used together with the blackboard to generate a CaptureActionId.

Used in: BosdynQueryStoredCaptures

message BosdynRecordEvent

nodes.proto:453

Record an APIEvent

Used in: Node

message BosdynRobotCommand

nodes.proto:332

Execute a RobotCommand. These nodes will "succeed" once a feedback response is received indicating success. Any commands that require an "end time" will have that information set based on the end time of the mission.

Used in: Node

message BosdynRobotState

nodes.proto:304

Get state from the robot.

Used in: Node

message ClearBehaviorFaults

nodes.proto:1072

This node will: 1. Check if there are behavior faults. If there are none, it will return success. 2. Check if all behavior faults are clearable. If not, it will return failure. 3. Try to clear the clearable behavior faults. If it cannot, it will return failure.

Used in: Node

message Condition

nodes.proto:255

Checks a simple comparison statement.

Used in: Node

enum Condition.Compare

nodes.proto:272

Comparison operator.

Used in: Condition

enum Condition.HandleStaleness

nodes.proto:293

When comparing runtime values in the blackboard, some values might be "stale" (i.e too old). This defines how the comparator should behave when a read value is stale.

Used in: Condition

message Condition.Operand

nodes.proto:257

Options for where to retrieve values from.

Used in: Condition

message ConstantResult

nodes.proto:1001

Just returns a constant when calling tick().

Used in: Node

message ConstantValue

util.proto:50

A constant value. Corresponds to the VariableDeclaration Type enum.

Used in: Condition.Operand, Value

message CreateMissionText

nodes.proto:1094

Creates a message, puts it in the current tick state messages, then ticks the child node. The MissionText will remain active while the node is ticked and RUNNING. Clients can retrieve active mission text through the GetState RPC.

Used in: Node

message DataAcquisition

nodes.proto:824

Trigger the acquisition and storage of data.

Used in: DataAcquisitionOnInterruption, Node

enum DataAcquisition.CompletionBehavior

nodes.proto:833

Used in: autowalk.Action.DataAcquisition, DataAcquisition

message DataAcquisitionOnInterruption

nodes.proto:1015

Send an AcquireDataRequest to the data acquisition service when the mission is interrupted. Interruptions are anything that causes the mission to stop ticking automatically.

Used in: Node

message DateToBlackboard

nodes.proto:970

Record a datetime string into the blackboard. Writes the date according to ISO8601 format.

Used in: Node

message DefineBlackboard

nodes.proto:898

Defines new blackboard variables within the scope of the child. Shadows blackboard variables in the parent scope.

Used in: Node

message Dock

nodes.proto:742

Used in: Node

enum EstablishSessionResponse.Status

remote.proto:42

Possible results of establishing a session.

Used in: EstablishSessionResponse

message ExecuteChoreography

nodes.proto:522

Sends a request to play a choreography sequence with the given name, and then monitors the state of the dancing robot.

Used in: Node

message FailedNode

mission.proto:236

General message describing a node that has failed, for example as part of a PlayMission or LoadMission RPC.

Used in: autowalk.LoadAutowalkResponse, LoadMissionResponse, RestartMissionResponse

message ForDuration

nodes.proto:203

Run this child for a maximum amount of mission execution time. Will exit with child's status if the child finishes early, FAILURE if the child remains in RUNNING state for too long and no timeout_child is specified, or the status of the timeout_child.

Used in: Node

message FormatBlackboard

nodes.proto:929

Sets a blackboard variable to a formatted string, reading from other blackboard vars.

Used in: Node

message GetInfoRequest

mission.proto:400

Request mission information. This covers information that stays static until a new mission is loaded.

Used as request type in: MissionService.GetInfo, MissionService.GetInfoAsChunks

message GetMissionRequest

mission.proto:477

For requesting the mission as it was loaded in LoadMission.

Used as request type in: MissionService.GetMission, MissionService.GetMissionAsChunks

message KeyValue

util.proto:18

Key/Value pair, used in other messages.

Used in: autowalk.Action.RemoteGrpc, DefineBlackboard, Node, RemoteGrpc, SetBlackboard, State.NodeStatesAtTick.NodeState.BlackboardState, TickRequest

message LoadMissionResponse

mission.proto:369

The LoadMission response returns the mission info generated by the service if successfully loaded, and a status and other information if the request fails.

Used as response type in: MissionService.LoadMission, MissionService.LoadMissionAsChunks

enum LoadMissionResponse.Status

mission.proto:374

Possible results of loading a mission.

Used in: LoadMissionResponse

message MissionInfo

mission.proto:211

Static information about the mission. Used to interpret the mission state.

Used in: GetInfoResponse, LoadMissionResponse

message MissionText

util.proto:61

Nodes can pass arbitrary text back through the mission state.

Used in: State

message MissionUploadChoreography

nodes.proto:532

Uploads the given set of animations and choreography sequences to the robot.

Used in: Node

message Node

nodes.proto:38

Wrapper for a mission node. Contains the basics common to all mission nodes. Specifics of what the node does are contained in the "impl" field.

Used in: autowalk.Action, autowalk.CompileAutowalkResponse, BosdynDockState, BosdynGraphNavState, BosdynGripperCameraParamsState, BosdynRobotState, CreateMissionText, DataAcquisitionOnInterruption, DefineBlackboard, Dock, ForDuration, GetMissionResponse, LoadMissionRequest, ParallelAnd, Prompt, Repeat, RestartWhenPaused, Retry, Selector, Sequence, SimpleParallel, Switch

message NodeInfo

mission.proto:221

Provides children and metadata of a single node within the mission.

Used in: MissionInfo

message ParallelAnd

nodes.proto:243

Run many child nodes together, returning only after they have all completed or an early exit is triggered.

Used in: Node

enum PauseMissionResponse.Status

mission.proto:429

Possible results of a pause request.

Used in: PauseMissionResponse

enum PlayMissionResponse.Status

mission.proto:293

Possible results for a play request.

Used in: PlayMissionResponse

message PlaySettings

mission.proto:268

"Global" settings to use while a mission is running. Some of these settings are not globally applicable. For example, the velocity_limit does not change the speed at which the robot poses the body.

Used in: PlayMissionRequest, RestartMissionRequest

message Prompt

nodes.proto:545

Prompt the world at large to answer a question. This node represents a request for information from ANY listeners that may be out there.

Used in: Node

message Prompt.Option

nodes.proto:564

Data about the options to choose from.

Used in: Prompt, OptionsList, Question

message Prompt.OptionsList

nodes.proto:571

Used in: Prompt

message Question

mission.proto:139

A question posed by a Prompt node, or by the internal operation of another node.

Used in: State, State.AnsweredQuestion

message RemoteGrpc

nodes.proto:474

Call out to another system using the RemoteMission service.

Used in: Node

message Repeat

nodes.proto:170

Repeat a child node.

Used in: Node

enum RestartMissionResponse.Status

mission.proto:336

Possible results of requesting a restart.

Used in: RestartMissionResponse

message RestartWhenPaused

nodes.proto:1009

This node will run and return the status of the child node. If the mission is paused while this node is executing, the child will be restarted when the mission is resumed.

Used in: Node

enum Result

util.proto:97

Results from executing / ticking / running a single node.

Used in: ConstantResult, State.NodeStatesAtTick.NodeState

message RetainLease

nodes.proto:888

Send RetainLease for every Lease the mission service is given via PlayMissionRequest. Returns RUNNING while there are more leases to retain, SUCCESS once a lease for each resource has been retained, and FAILURE if any one lease cannot be retained.

Used in: Node

message Retry

nodes.proto:188

Retry a child node until it succeeds, or exceeds a number of attempts.

Used in: Node

message Selector

nodes.proto:129

Run all children in order until a child succeeds.

Used in: Node

message Sequence

nodes.proto:120

Run all children in order until a child fails.

Used in: Node

message SetBlackboard

nodes.proto:913

Sets existing blackboard variables within this scope to specific values, returning SUCCESS.

Used in: Node

message SetGraspOverride

nodes.proto:650

Set grasp override and carry state override requests

Used in: Node

message SetGripperCameraParams

nodes.proto:635

Set gripper camera params

Used in: Node

message SimpleParallel

nodes.proto:229

Run two child nodes together, returning the primary child's result when it completes.

Used in: Node

message Sleep

nodes.proto:508

When started, begins a sleep timer for X seconds. Returns "success" after the timer elapses, "running" otherwise.

Used in: Node

message SpotCamFocusState

nodes.proto:721

Set the focus on the Spot CAM PTZ

Used in: Node

message SpotCamLed

nodes.proto:709

Set the LEDs to a specified brightness

Used in: Node

message SpotCamPtz

nodes.proto:662

Point the PTZ to a specified orientation

Used in: Node

message SpotCamPtz.AdjustParameters

nodes.proto:673

Used in: SpotCamPtz

message SpotCamResetAutofocus

nodes.proto:733

Reset the autofocus on the Spot CAM PTZ

Used in: Node

message SpotCamStoreMedia

nodes.proto:691

Store media using the Spot CAM.

Used in: Node

message State

mission.proto:52

State of the mission service.

Used in: GetStateResponse

message State.AnsweredQuestion

mission.proto:56

A question that has been answered already.

Used in: State

message State.NodeStatesAtTick

mission.proto:71

Used in: State

message State.NodeStatesAtTick.NodeState

mission.proto:72

Used in: NodeStatesAtTick

message State.NodeStatesAtTick.NodeState.BlackboardState

mission.proto:80

Used in: NodeState

enum State.Status

mission.proto:99

Possible overall status states of the mission.

Used in: State

enum StopMissionResponse.Status

mission.proto:458

Possible results of a stop request.

Used in: StopMissionResponse

enum StopResponse.Status

remote.proto:166

Possible results for a StopRequest.

Used in: StopResponse

message StoreMetadata

nodes.proto:799

Triggers a StoreMetadataRequest to the data acquisition store.

Used in: Node

message Switch

nodes.proto:151

Run a specific child based on a specified pivot_value. This node exists because of a subtle implementation detail in Selector(always_restart = true). The astute reader might believe that they can construct a switch node by using a selector with sequences & conditions as children. This is ALMOST true, EXCEPT that a selector (with always_restart = true) can leave multiple children in the running state IF: - A later selector child was RUNNING last tick - An earlier selector child returns RUNNING this tick Even though the later selector child won't be ticked, it will still be left in the running state and not restart when the selector advances to it again later. Sometimes this is desirable, sometimes it isn't. Switch is constrained to only have one child running, and if the switch ever switches children and return to a previously running child, that child will be restarted.

Used in: Node

enum TeardownSessionResponse.Status

remote.proto:193

Possible results of ending a session.

Used in: TeardownSessionResponse

enum TickResponse.Status

remote.proto:110

Possible results from the node. The FAILURE, RUNNING, and SUCCESS statuses map to the behavior tree terms, all others indicate an error in the TickRequest.

Used in: TickResponse

message UserData

util.proto:82

Data a user can associate with a node.

Used in: Node, NodeInfo

message Value

util.proto:24

A value of a run-time or compile-time variable.

Used in: BosdynRecordEvent, KeyValue, Switch

message VariableDeclaration

util.proto:33

Declaration of a run-time or compile-time variable.

Used in: Condition.Operand, EstablishSessionRequest, EstablishSessionResponse, Node, TickResponse, Value

enum VariableDeclaration.Type

util.proto:37

Supported types for blackboard or parameter values.

Used in: VariableDeclaration