viam.proto.robot ================ .. py:module:: viam.proto.robot .. autoapi-nested-parse:: @generated by Viam. Do not edit manually! Classes ------- .. autoapisummary:: viam.proto.robot.RobotServiceBase viam.proto.robot.RobotServiceStub viam.proto.robot.UnimplementedRobotServiceBase viam.proto.robot.BlockForOperationRequest viam.proto.robot.BlockForOperationResponse viam.proto.robot.CancelOperationRequest viam.proto.robot.CancelOperationResponse viam.proto.robot.ConfigStatus viam.proto.robot.FrameSystemConfig viam.proto.robot.FrameSystemConfigRequest viam.proto.robot.FrameSystemConfigResponse viam.proto.robot.GetCloudMetadataRequest viam.proto.robot.GetCloudMetadataResponse viam.proto.robot.GetMachineStatusRequest viam.proto.robot.GetMachineStatusResponse viam.proto.robot.GetModelsFromModulesRequest viam.proto.robot.GetModelsFromModulesResponse viam.proto.robot.GetOperationsRequest viam.proto.robot.GetOperationsResponse viam.proto.robot.GetPoseRequest viam.proto.robot.GetPoseResponse viam.proto.robot.GetSessionsRequest viam.proto.robot.GetSessionsResponse viam.proto.robot.GetStatusRequest viam.proto.robot.GetStatusResponse viam.proto.robot.GetVersionRequest viam.proto.robot.GetVersionResponse viam.proto.robot.JobStatus viam.proto.robot.ListTunnelsRequest viam.proto.robot.ListTunnelsResponse viam.proto.robot.LogRequest viam.proto.robot.LogResponse viam.proto.robot.ModuleModel viam.proto.robot.ModuleStatus viam.proto.robot.Operation viam.proto.robot.PackageStatus viam.proto.robot.PeerConnectionInfo viam.proto.robot.PeerConnectionType viam.proto.robot.ResourceNamesRequest viam.proto.robot.ResourceNamesResponse viam.proto.robot.ResourceRPCSubtype viam.proto.robot.ResourceRPCSubtypesRequest viam.proto.robot.ResourceRPCSubtypesResponse viam.proto.robot.ResourceStatus viam.proto.robot.RestartModuleRequest viam.proto.robot.RestartModuleResponse viam.proto.robot.SendSessionHeartbeatRequest viam.proto.robot.SendSessionHeartbeatResponse viam.proto.robot.SendTracesRequest viam.proto.robot.SendTracesResponse viam.proto.robot.Session viam.proto.robot.ShutdownRequest viam.proto.robot.ShutdownResponse viam.proto.robot.StartSessionRequest viam.proto.robot.StartSessionResponse viam.proto.robot.Status viam.proto.robot.StopAllRequest viam.proto.robot.StopAllResponse viam.proto.robot.StopExtraParameters viam.proto.robot.StreamStatusRequest viam.proto.robot.StreamStatusResponse viam.proto.robot.TransformPCDRequest viam.proto.robot.TransformPCDResponse viam.proto.robot.TransformPoseRequest viam.proto.robot.TransformPoseResponse viam.proto.robot.Tunnel viam.proto.robot.TunnelRequest viam.proto.robot.TunnelResponse viam.proto.robot.UploadDataFromPathRequest viam.proto.robot.UploadDataFromPathResponse Package Contents ---------------- .. py:class:: RobotServiceBase Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: GetOperations(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetOperationsRequest, robot.v1.robot_pb2.GetOperationsResponse]) -> None :abstractmethod: :async: .. py:method:: GetSessions(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetSessionsRequest, robot.v1.robot_pb2.GetSessionsResponse]) -> None :abstractmethod: :async: .. py:method:: ResourceNames(stream: grpclib.server.Stream[robot.v1.robot_pb2.ResourceNamesRequest, robot.v1.robot_pb2.ResourceNamesResponse]) -> None :abstractmethod: :async: .. py:method:: ResourceRPCSubtypes(stream: grpclib.server.Stream[robot.v1.robot_pb2.ResourceRPCSubtypesRequest, robot.v1.robot_pb2.ResourceRPCSubtypesResponse]) -> None :abstractmethod: :async: .. py:method:: CancelOperation(stream: grpclib.server.Stream[robot.v1.robot_pb2.CancelOperationRequest, robot.v1.robot_pb2.CancelOperationResponse]) -> None :abstractmethod: :async: .. py:method:: BlockForOperation(stream: grpclib.server.Stream[robot.v1.robot_pb2.BlockForOperationRequest, robot.v1.robot_pb2.BlockForOperationResponse]) -> None :abstractmethod: :async: .. py:method:: GetModelsFromModules(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetModelsFromModulesRequest, robot.v1.robot_pb2.GetModelsFromModulesResponse]) -> None :abstractmethod: :async: .. py:method:: GetStatus(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetStatusRequest, robot.v1.robot_pb2.GetStatusResponse]) -> None :abstractmethod: :async: .. py:method:: StreamStatus(stream: grpclib.server.Stream[robot.v1.robot_pb2.StreamStatusRequest, robot.v1.robot_pb2.StreamStatusResponse]) -> None :abstractmethod: :async: .. py:method:: StopAll(stream: grpclib.server.Stream[robot.v1.robot_pb2.StopAllRequest, robot.v1.robot_pb2.StopAllResponse]) -> None :abstractmethod: :async: .. py:method:: StartSession(stream: grpclib.server.Stream[robot.v1.robot_pb2.StartSessionRequest, robot.v1.robot_pb2.StartSessionResponse]) -> None :abstractmethod: :async: .. py:method:: SendSessionHeartbeat(stream: grpclib.server.Stream[robot.v1.robot_pb2.SendSessionHeartbeatRequest, robot.v1.robot_pb2.SendSessionHeartbeatResponse]) -> None :abstractmethod: :async: .. py:method:: Log(stream: grpclib.server.Stream[robot.v1.robot_pb2.LogRequest, robot.v1.robot_pb2.LogResponse]) -> None :abstractmethod: :async: .. py:method:: GetCloudMetadata(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetCloudMetadataRequest, robot.v1.robot_pb2.GetCloudMetadataResponse]) -> None :abstractmethod: :async: .. py:method:: RestartModule(stream: grpclib.server.Stream[robot.v1.robot_pb2.RestartModuleRequest, robot.v1.robot_pb2.RestartModuleResponse]) -> None :abstractmethod: :async: .. py:method:: Shutdown(stream: grpclib.server.Stream[robot.v1.robot_pb2.ShutdownRequest, robot.v1.robot_pb2.ShutdownResponse]) -> None :abstractmethod: :async: .. py:method:: GetMachineStatus(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetMachineStatusRequest, robot.v1.robot_pb2.GetMachineStatusResponse]) -> None :abstractmethod: :async: .. py:method:: GetVersion(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetVersionRequest, robot.v1.robot_pb2.GetVersionResponse]) -> None :abstractmethod: :async: .. py:method:: Tunnel(stream: grpclib.server.Stream[robot.v1.robot_pb2.TunnelRequest, robot.v1.robot_pb2.TunnelResponse]) -> None :abstractmethod: :async: .. py:method:: ListTunnels(stream: grpclib.server.Stream[robot.v1.robot_pb2.ListTunnelsRequest, robot.v1.robot_pb2.ListTunnelsResponse]) -> None :abstractmethod: :async: .. py:method:: FrameSystemConfig(stream: grpclib.server.Stream[robot.v1.robot_pb2.FrameSystemConfigRequest, robot.v1.robot_pb2.FrameSystemConfigResponse]) -> None :abstractmethod: :async: .. py:method:: GetPose(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetPoseRequest, robot.v1.robot_pb2.GetPoseResponse]) -> None :abstractmethod: :async: .. py:method:: TransformPose(stream: grpclib.server.Stream[robot.v1.robot_pb2.TransformPoseRequest, robot.v1.robot_pb2.TransformPoseResponse]) -> None :abstractmethod: :async: .. py:method:: TransformPCD(stream: grpclib.server.Stream[robot.v1.robot_pb2.TransformPCDRequest, robot.v1.robot_pb2.TransformPCDResponse]) -> None :abstractmethod: :async: .. py:method:: SendTraces(stream: grpclib.server.Stream[robot.v1.robot_pb2.SendTracesRequest, robot.v1.robot_pb2.SendTracesResponse]) -> None :abstractmethod: :async: .. py:method:: UploadDataFromPath(stream: grpclib.server.Stream[robot.v1.robot_pb2.UploadDataFromPathRequest, robot.v1.robot_pb2.UploadDataFromPathResponse]) -> None :abstractmethod: :async: .. py:method:: __mapping__() -> Dict[str, grpclib.const.Handler] .. py:class:: RobotServiceStub(channel: grpclib.client.Channel) .. py:attribute:: GetOperations .. py:attribute:: GetSessions .. py:attribute:: ResourceNames .. py:attribute:: ResourceRPCSubtypes .. py:attribute:: CancelOperation .. py:attribute:: BlockForOperation .. py:attribute:: GetModelsFromModules .. py:attribute:: GetStatus .. py:attribute:: StreamStatus .. py:attribute:: StopAll .. py:attribute:: StartSession .. py:attribute:: SendSessionHeartbeat .. py:attribute:: Log .. py:attribute:: GetCloudMetadata .. py:attribute:: RestartModule .. py:attribute:: Shutdown .. py:attribute:: GetMachineStatus .. py:attribute:: GetVersion .. py:attribute:: Tunnel .. py:attribute:: ListTunnels .. py:attribute:: FrameSystemConfig .. py:attribute:: GetPose .. py:attribute:: TransformPose .. py:attribute:: TransformPCD .. py:attribute:: SendTraces .. py:attribute:: UploadDataFromPath .. py:class:: UnimplementedRobotServiceBase Bases: :py:obj:`RobotServiceBase` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: GetOperations(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetOperationsRequest, robot.v1.robot_pb2.GetOperationsResponse]) -> None :async: .. py:method:: GetSessions(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetSessionsRequest, robot.v1.robot_pb2.GetSessionsResponse]) -> None :async: .. py:method:: ResourceNames(stream: grpclib.server.Stream[robot.v1.robot_pb2.ResourceNamesRequest, robot.v1.robot_pb2.ResourceNamesResponse]) -> None :async: .. py:method:: ResourceRPCSubtypes(stream: grpclib.server.Stream[robot.v1.robot_pb2.ResourceRPCSubtypesRequest, robot.v1.robot_pb2.ResourceRPCSubtypesResponse]) -> None :async: .. py:method:: CancelOperation(stream: grpclib.server.Stream[robot.v1.robot_pb2.CancelOperationRequest, robot.v1.robot_pb2.CancelOperationResponse]) -> None :async: .. py:method:: BlockForOperation(stream: grpclib.server.Stream[robot.v1.robot_pb2.BlockForOperationRequest, robot.v1.robot_pb2.BlockForOperationResponse]) -> None :async: .. py:method:: GetModelsFromModules(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetModelsFromModulesRequest, robot.v1.robot_pb2.GetModelsFromModulesResponse]) -> None :async: .. py:method:: GetStatus(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetStatusRequest, robot.v1.robot_pb2.GetStatusResponse]) -> None :async: .. py:method:: StreamStatus(stream: grpclib.server.Stream[robot.v1.robot_pb2.StreamStatusRequest, robot.v1.robot_pb2.StreamStatusResponse]) -> None :async: .. py:method:: StopAll(stream: grpclib.server.Stream[robot.v1.robot_pb2.StopAllRequest, robot.v1.robot_pb2.StopAllResponse]) -> None :async: .. py:method:: StartSession(stream: grpclib.server.Stream[robot.v1.robot_pb2.StartSessionRequest, robot.v1.robot_pb2.StartSessionResponse]) -> None :async: .. py:method:: SendSessionHeartbeat(stream: grpclib.server.Stream[robot.v1.robot_pb2.SendSessionHeartbeatRequest, robot.v1.robot_pb2.SendSessionHeartbeatResponse]) -> None :async: .. py:method:: Log(stream: grpclib.server.Stream[robot.v1.robot_pb2.LogRequest, robot.v1.robot_pb2.LogResponse]) -> None :async: .. py:method:: GetCloudMetadata(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetCloudMetadataRequest, robot.v1.robot_pb2.GetCloudMetadataResponse]) -> None :async: .. py:method:: RestartModule(stream: grpclib.server.Stream[robot.v1.robot_pb2.RestartModuleRequest, robot.v1.robot_pb2.RestartModuleResponse]) -> None :async: .. py:method:: Shutdown(stream: grpclib.server.Stream[robot.v1.robot_pb2.ShutdownRequest, robot.v1.robot_pb2.ShutdownResponse]) -> None :async: .. py:method:: GetMachineStatus(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetMachineStatusRequest, robot.v1.robot_pb2.GetMachineStatusResponse]) -> None :async: .. py:method:: GetVersion(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetVersionRequest, robot.v1.robot_pb2.GetVersionResponse]) -> None :async: .. py:method:: Tunnel(stream: grpclib.server.Stream[robot.v1.robot_pb2.TunnelRequest, robot.v1.robot_pb2.TunnelResponse]) -> None :async: .. py:method:: ListTunnels(stream: grpclib.server.Stream[robot.v1.robot_pb2.ListTunnelsRequest, robot.v1.robot_pb2.ListTunnelsResponse]) -> None :async: .. py:method:: FrameSystemConfig(stream: grpclib.server.Stream[robot.v1.robot_pb2.FrameSystemConfigRequest, robot.v1.robot_pb2.FrameSystemConfigResponse]) -> None :async: .. py:method:: GetPose(stream: grpclib.server.Stream[robot.v1.robot_pb2.GetPoseRequest, robot.v1.robot_pb2.GetPoseResponse]) -> None :async: .. py:method:: TransformPose(stream: grpclib.server.Stream[robot.v1.robot_pb2.TransformPoseRequest, robot.v1.robot_pb2.TransformPoseResponse]) -> None :async: .. py:method:: TransformPCD(stream: grpclib.server.Stream[robot.v1.robot_pb2.TransformPCDRequest, robot.v1.robot_pb2.TransformPCDResponse]) -> None :async: .. py:method:: SendTraces(stream: grpclib.server.Stream[robot.v1.robot_pb2.SendTracesRequest, robot.v1.robot_pb2.SendTracesResponse]) -> None :async: .. py:method:: UploadDataFromPath(stream: grpclib.server.Stream[robot.v1.robot_pb2.UploadDataFromPathRequest, robot.v1.robot_pb2.UploadDataFromPathResponse]) -> None :async: .. py:class:: BlockForOperationRequest(*, id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:class:: BlockForOperationResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: CancelOperationRequest(*, id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:class:: CancelOperationResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: ConfigStatus(*, revision: str = ..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: revision :type: str revision of the last config that the machine successfully ingested. .. py:method:: last_updated() -> google.protobuf.timestamp_pb2.Timestamp config ingestion timestamp. .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: FrameSystemConfig(*, frame: common.v1.common_pb2.Transform | None = ..., kinematics: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: frame() -> common.v1.common_pb2.Transform this is an experimental API message .. py:method:: kinematics() -> google.protobuf.struct_pb2.Struct .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: FrameSystemConfigRequest(*, supplemental_transforms: collections.abc.Iterable[common.v1.common_pb2.Transform] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: supplemental_transforms() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.Transform] pose information on any additional reference frames that are needed to supplement the robot's frame system .. py:class:: FrameSystemConfigResponse(*, frame_system_configs: collections.abc.Iterable[Global___FrameSystemConfig] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: frame_system_configs() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___FrameSystemConfig] .. py:class:: GetCloudMetadataRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: GetCloudMetadataResponse(*, primary_org_id: str = ..., location_id: str = ..., machine_id: str = ..., machine_part_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: primary_org_id :type: str .. py:attribute:: location_id :type: str .. py:attribute:: machine_id :type: str .. py:attribute:: machine_part_id :type: str .. py:class:: GetMachineStatusRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: GetMachineStatusResponse(*, resources: collections.abc.Iterable[Global___ResourceStatus] | None = ..., config: Global___ConfigStatus | None = ..., state: Global___GetMachineStatusResponse = ..., job_statuses: collections.abc.Iterable[Global___JobStatus] | None = ..., modules: collections.abc.Iterable[Global___ModuleStatus] | None = ..., packages: collections.abc.Iterable[Global___PackageStatus] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: State Bases: :py:obj:`_State` .. py:attribute:: STATE_UNSPECIFIED :type: GetMachineStatusResponse .. py:attribute:: STATE_INITIALIZING :type: GetMachineStatusResponse the machine is reachable but still in the process of configuring initial modules and resources. .. py:attribute:: STATE_RUNNING :type: GetMachineStatusResponse the machine has finished initializing. .. py:attribute:: state :type: Global___GetMachineStatusResponse.State.ValueType .. py:method:: resources() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___ResourceStatus] .. py:method:: config() -> Global___ConfigStatus .. py:method:: job_statuses() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___JobStatus] .. py:method:: modules() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___ModuleStatus] .. py:method:: packages() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___PackageStatus] .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: GetModelsFromModulesRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: GetModelsFromModulesResponse(*, models: collections.abc.Iterable[Global___ModuleModel] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: models() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___ModuleModel] .. py:class:: GetOperationsRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: GetOperationsResponse(*, operations: collections.abc.Iterable[Global___Operation] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: operations() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___Operation] .. py:class:: GetPoseRequest(*, component_name: str = ..., destination_frame: str = ..., supplemental_transforms: collections.abc.Iterable[common.v1.common_pb2.Transform] | None = ..., extra: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: component_name :type: str the component whose pose is being requested .. py:attribute:: destination_frame :type: str the reference frame in which the component's pose should be provided, if unset this defaults to the "world" reference frame .. py:method:: supplemental_transforms() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.Transform] pose information on any additional reference frames that are needed to compute the component's pose .. py:method:: extra() -> google.protobuf.struct_pb2.Struct Additional arguments to the method .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: GetPoseResponse(*, pose: common.v1.common_pb2.PoseInFrame | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: pose() -> common.v1.common_pb2.PoseInFrame .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: GetSessionsRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: GetSessionsResponse(*, sessions: collections.abc.Iterable[Global___Session] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: sessions() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___Session] .. py:class:: GetStatusRequest(*, resource_names: collections.abc.Iterable[common.v1.common_pb2.ResourceName] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: resource_names() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.ResourceName] .. py:class:: GetStatusResponse(*, status: collections.abc.Iterable[Global___Status] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: status() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___Status] .. py:class:: GetVersionRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: GetVersionResponse(*, platform: str = ..., version: str = ..., api_version: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: platform :type: str platform type of viam-server (ie. `rdk` or `micro-rdk`). .. py:attribute:: version :type: str version of viam-server. If built without a version, it will be dev-. .. py:attribute:: api_version :type: str .. py:class:: JobStatus(*, job_name: str = ..., recent_successful_runs: collections.abc.Iterable[google.protobuf.timestamp_pb2.Timestamp] | None = ..., recent_failed_runs: collections.abc.Iterable[google.protobuf.timestamp_pb2.Timestamp] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: job_name :type: str .. py:method:: recent_successful_runs() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.timestamp_pb2.Timestamp] .. py:method:: recent_failed_runs() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.timestamp_pb2.Timestamp] .. py:class:: ListTunnelsRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: ListTunnelsResponse(*, tunnels: collections.abc.Iterable[Global___Tunnel] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: tunnels() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___Tunnel] .. py:class:: LogRequest(*, logs: collections.abc.Iterable[common.v1.common_pb2.LogEntry] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: logs() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.LogEntry] .. py:class:: LogResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: ModuleModel(*, module_name: str = ..., model: str = ..., api: str = ..., from_local_module: bool = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: module_name :type: str .. py:attribute:: model :type: str .. py:attribute:: api :type: str .. py:attribute:: from_local_module :type: bool .. py:class:: ModuleStatus(*, module_name: str = ..., state: Global___ModuleStatus = ..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None = ..., error: str = ..., consecutive_failures: int = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: State Bases: :py:obj:`_State` .. py:attribute:: STATE_UNSPECIFIED :type: ModuleStatus state is unknown or has not been set yet .. py:attribute:: STATE_PENDING :type: ModuleStatus module is configured but viam-server has not yet attempted to start it (because e.g. a required package is still downloading) transitions -> state_starting after pre-setup completes .. py:attribute:: STATE_STARTING :type: ModuleStatus module process has been spawned and viam-server is waiting for it to send a Ready response and register its models transitions -> state_ready on success .. py:attribute:: STATE_READY :type: ModuleStatus module has sent a Ready response, registered its models, and is running transitions -> state_unhealthy on bad exit .. py:attribute:: STATE_UNHEALTHY :type: ModuleStatus module failed to start, exited unexpectedly, or is being restarted after a crash. any failure in any other state goes to this state .. py:attribute:: STATE_CLOSING :type: ModuleStatus module process is shutting down, either because the module is being removed from the machine or because it is restarting during a reconfigure. on removal the module's status stops being tracked once shutdown completes; on restart it transitions -> state_starting .. py:attribute:: module_name :type: str .. py:attribute:: state :type: Global___ModuleStatus.State.ValueType .. py:attribute:: error :type: str when a module transitions to unhealthy, this field is populated with the error that caused the transition. the error persists until the module reenters the Ready state, guaranteed to be nil in the Ready state .. py:attribute:: consecutive_failures :type: int number of times this module has entered the unhealthy state since the last time this module was in the ready state this will increment if the module is in a restart loop (state transitioning between pending and starting repeatedly) Resets to zero when the module enters the ready state or is reconfigured. Useful for detecting modules stuck in a restart loop (like a python module with a syntax error) .. py:method:: last_updated() -> google.protobuf.timestamp_pb2.Timestamp updated on every state transition .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: Operation(*, id: str = ..., method: str = ..., arguments: google.protobuf.struct_pb2.Struct | None = ..., started: google.protobuf.timestamp_pb2.Timestamp | None = ..., session_id: str | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:attribute:: method :type: str .. py:attribute:: session_id :type: str .. py:method:: arguments() -> google.protobuf.struct_pb2.Struct .. py:method:: started() -> google.protobuf.timestamp_pb2.Timestamp .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: _WhichOneofArgType__session_id) -> _WhichOneofReturnType__session_id | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:class:: PackageStatus(*, name: str = ..., type: app.packages.v1.packages_pb2.PackageType.ValueType = ..., state: Global___PackageStatus = ..., error: str = ..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None = ..., version: str = ..., bytes_downloaded: int = ..., total_bytes: int = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: State Bases: :py:obj:`_State` .. py:attribute:: STATE_UNSPECIFIED :type: PackageStatus state is unknown or has not been set yet .. py:attribute:: STATE_DOWNLOADING :type: PackageStatus package tarball is actively being fetched from the cloud .. py:attribute:: STATE_LOADING :type: PackageStatus tarball has been downloaded and is being extracted/verified .. py:attribute:: STATE_FIRST_RUN :type: PackageStatus first_run.sh script is executing (module packages only) .. py:attribute:: STATE_READY :type: PackageStatus package is fully installed and available for use .. py:attribute:: STATE_FAILED :type: PackageStatus package failed to download, extract, or complete first run .. py:attribute:: name :type: str the package name as declared in the robot config (PackageConfig.Name) .. py:attribute:: type :type: app.packages.v1.packages_pb2.PackageType.ValueType the package type (module, ml_model, slam_map, etc.) .. py:attribute:: state :type: Global___PackageStatus.State.ValueType current lifecycle state .. py:attribute:: error :type: str human-readable error detail when state == STATE_FAILED .. py:attribute:: version :type: str the version string from PackageConfig .. py:attribute:: bytes_downloaded :type: int number of bytes of the package tarball downloaded so far. Only populated while state == STATE_DOWNLOADING; equals total_bytes once the download completes. .. py:attribute:: total_bytes :type: int total size of the package tarball in bytes. Zero if the size is unknown. .. py:method:: last_updated() -> google.protobuf.timestamp_pb2.Timestamp when this status was last updated .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: PeerConnectionInfo(*, type: Global___PeerConnectionType = ..., remote_address: str | None = ..., local_address: str | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: type :type: Global___PeerConnectionType .. py:attribute:: remote_address :type: str .. py:attribute:: local_address :type: str .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: _WhichOneofArgType__local_address) -> _WhichOneofReturnType__local_address | None WhichOneof(oneof_group: _WhichOneofArgType__remote_address) -> _WhichOneofReturnType__remote_address | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:class:: PeerConnectionType Bases: :py:obj:`_PeerConnectionType` .. py:class:: ResourceNamesRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: ResourceNamesResponse(*, resources: collections.abc.Iterable[common.v1.common_pb2.ResourceName] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: resources() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.ResourceName] .. py:class:: ResourceRPCSubtype(*, subtype: common.v1.common_pb2.ResourceName | None = ..., proto_service: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: proto_service :type: str .. py:method:: subtype() -> common.v1.common_pb2.ResourceName .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: ResourceRPCSubtypesRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: ResourceRPCSubtypesResponse(*, resource_rpc_subtypes: collections.abc.Iterable[Global___ResourceRPCSubtype] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: resource_rpc_subtypes() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___ResourceRPCSubtype] .. py:class:: ResourceStatus(*, name: common.v1.common_pb2.ResourceName | None = ..., state: Global___ResourceStatus = ..., last_updated: google.protobuf.timestamp_pb2.Timestamp | None = ..., revision: str = ..., error: str = ..., cloud_metadata: Global___GetCloudMetadataResponse | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: State Bases: :py:obj:`_State` .. py:attribute:: STATE_UNSPECIFIED :type: ResourceStatus .. py:attribute:: STATE_UNCONFIGURED :type: ResourceStatus a newly created resource. .. py:attribute:: STATE_CONFIGURING :type: ResourceStatus a resource that is being configured. .. py:attribute:: STATE_READY :type: ResourceStatus a resource that has been successfully configured once, and is not re-configuring, being removed, or unhealthy. .. py:attribute:: STATE_REMOVING :type: ResourceStatus a resource that is being removed from the robot. .. py:attribute:: STATE_UNHEALTHY :type: ResourceStatus a resource that is in an unhealthy state. .. py:attribute:: state :type: Global___ResourceStatus.State.ValueType current state. .. py:attribute:: revision :type: str revision of the last config that successfully updated this resource. .. py:attribute:: error :type: str error details for a resource. This is guaranteed to be null if the resource is ready and non-null if the resource unhealthy. .. py:method:: name() -> common.v1.common_pb2.ResourceName resource name. .. py:method:: last_updated() -> google.protobuf.timestamp_pb2.Timestamp state transition timestamp. .. py:method:: cloud_metadata() -> Global___GetCloudMetadataResponse infomation about resource orgID, locationID and partID .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: _WhichOneofArgType__cloud_metadata) -> _WhichOneofReturnType__cloud_metadata | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:class:: RestartModuleRequest(*, module_id: str = ..., module_name: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: module_id :type: str ID is for registry modules, name for local modules .. py:attribute:: module_name :type: str .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: _WhichOneofArgType_id_or_name) -> _WhichOneofReturnType_id_or_name | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:class:: RestartModuleResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: SendSessionHeartbeatRequest(*, id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:class:: SendSessionHeartbeatResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: SendTracesRequest(*, resource_spans: collections.abc.Iterable[opentelemetry.proto.trace.v1.trace_pb2.ResourceSpans] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: resource_spans() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.trace.v1.trace_pb2.ResourceSpans] .. py:class:: SendTracesResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: Session(*, id: str = ..., peer_connection_info: Global___PeerConnectionInfo | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:method:: peer_connection_info() -> Global___PeerConnectionInfo .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: _WhichOneofArgType__peer_connection_info) -> _WhichOneofReturnType__peer_connection_info | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:class:: ShutdownRequest Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: ShutdownResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: StartSessionRequest(*, resume: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: resume :type: str resume can be used to attempt to continue a stream after a disconnection event. If a session is not found, a new one will be created and returned. .. py:class:: StartSessionResponse(*, id: str = ..., heartbeat_window: google.protobuf.duration_pb2.Duration | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: id :type: str .. py:method:: heartbeat_window() -> google.protobuf.duration_pb2.Duration .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: Status(*, name: common.v1.common_pb2.ResourceName | None = ..., status: google.protobuf.struct_pb2.Struct | None = ..., last_reconfigured: google.protobuf.timestamp_pb2.Timestamp | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: name() -> common.v1.common_pb2.ResourceName .. py:method:: status() -> google.protobuf.struct_pb2.Struct .. py:method:: last_reconfigured() -> google.protobuf.timestamp_pb2.Timestamp .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: StopAllRequest(*, extra: collections.abc.Iterable[Global___StopExtraParameters] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: extra() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___StopExtraParameters] .. py:class:: StopAllResponse Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: StopExtraParameters(*, name: common.v1.common_pb2.ResourceName | None = ..., params: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: name() -> common.v1.common_pb2.ResourceName .. py:method:: params() -> google.protobuf.struct_pb2.Struct .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: StreamStatusRequest(*, resource_names: collections.abc.Iterable[common.v1.common_pb2.ResourceName] | None = ..., every: google.protobuf.duration_pb2.Duration | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: resource_names() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.ResourceName] .. py:method:: every() -> google.protobuf.duration_pb2.Duration how often to send a new status. .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: StreamStatusResponse(*, status: collections.abc.Iterable[Global___Status] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: status() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___Status] .. py:class:: TransformPCDRequest(*, point_cloud_pcd: bytes = ..., source: str = ..., destination: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: point_cloud_pcd :type: bytes the point clouds to transform. This should be in the PCD format, [encoded into bytes](https://pointclouds.org/documentation/tutorials/pcd_file_format.html). .. py:attribute:: source :type: str the reference frame of the point cloud. .. py:attribute:: destination :type: str the reference frame into which the source data should be transformed, if unset this defaults to the "world" reference frame. Do not move the robot between the generation of the initial pointcloud and the receipt of the transformed pointcloud because that will make the transformations inaccurate .. py:class:: TransformPCDResponse(*, point_cloud_pcd: bytes = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: point_cloud_pcd :type: bytes .. py:class:: TransformPoseRequest(*, source: common.v1.common_pb2.PoseInFrame | None = ..., destination: str = ..., supplemental_transforms: collections.abc.Iterable[common.v1.common_pb2.Transform] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: destination :type: str the reference frame into which the source pose should be transformed, if unset this defaults to the "world" reference frame .. py:method:: source() -> common.v1.common_pb2.PoseInFrame the original pose to transform along with the reference frame in which it was observed .. py:method:: supplemental_transforms() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common.v1.common_pb2.Transform] pose information on any additional reference frames that are needed to perform the transform .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: TransformPoseResponse(*, pose: common.v1.common_pb2.PoseInFrame | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:method:: pose() -> common.v1.common_pb2.PoseInFrame .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: Tunnel(*, port: int = ..., connection_timeout: google.protobuf.duration_pb2.Duration | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: port :type: int .. py:method:: connection_timeout() -> google.protobuf.duration_pb2.Duration .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:class:: TunnelRequest(*, destination_port: int = ..., data: bytes = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: destination_port :type: int .. py:attribute:: data :type: bytes .. py:class:: TunnelResponse(*, data: bytes = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: data :type: bytes .. py:class:: UploadDataFromPathRequest(*, path: str = ..., upload_metadata: app.datasync.v1.data_sync_pb2.UploadMetadata | None = ..., extra: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: path :type: str File or folder path on the robot to upload. .. py:method:: upload_metadata() -> app.datasync.v1.data_sync_pb2.UploadMetadata Optional metadata to apply to uploaded files. .. py:method:: extra() -> google.protobuf.struct_pb2.Struct Additional arguments to the method. .. py:method:: HasField(field_name: _HasFieldArgType) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:method:: WhichOneof(oneof_group: _WhichOneofArgType__upload_metadata) -> _WhichOneofReturnType__upload_metadata | None Returns the name of the field that is set inside a oneof group. If no field is set, returns None. :param oneof_group: the name of the oneof group to check. :type oneof_group: str :returns: The name of the group that is set, or None. :rtype: str or None :raises ValueError: no group with the given name exists .. py:class:: UploadDataFromPathResponse(*, files_uploaded: int = ..., files_failed: int = ..., bytes_uploaded: int = ..., bytes_total: int = ..., ids: collections.abc.Iterable[str] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: files_uploaded :type: int Total number of files successfully uploaded. .. py:attribute:: files_failed :type: int Total number of files that failed to upload. .. py:attribute:: bytes_uploaded :type: int Total bytes successfully uploaded. .. py:attribute:: bytes_total :type: int Total bytes discovered in the directory. .. py:method:: ids() -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[str] Successfully uploaded binary data ids.