Skip to navigation

SendManualControlFrame

Sends a single manual control frame, for example, joystick input, for a manual control task.

Clients call this RPC repeatedly to control the asset executing the task. Task Manager forwards each frame to the executing agent, which receives it through ListenForManualControlFrames. The task must be in STATUS_EXECUTING.

The client manages the control session. When it begins controlling, it generates a session_epoch_micros and includes it in every request, along with a sequence that increases with each frame. A higher epoch replaces the current session, which allows another operator to take over control. A lower epoch is rejected as stale with an ABORTED error.

SendManualControlFrameRequest

Request
This endpoint expects an object.
task_idstring

The ID of the manual control task this frame is for. The task must be in STATUS_EXECUTING.

session_epoch_microsuint64

Unix timestamp in microseconds identifying the control session. The client generates this value when it begins a control session, and includes the same value in every request for that session. Higher values replace previous sessions. Lower values are rejected as stale with an ABORTED error.

specificationobject
The control instructions for this frame. The format is specific to the task, and is passed through to the agent without being inspected by Lattice.
sequenceuint64

The sequence number of this frame within the current session. The client must increase it with each frame so that agents can detect out-of-order delivery. Reset it to 1 when starting a new session.

SendManualControlFrameResponse

Response
This endpoint returns an object.