:py:mod:`viam.proto.robot` ========================== .. py:module:: viam.proto.robot .. autoapi-nested-parse:: @generated by Viam. Do not edit manually! Package Contents ---------------- 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.DiscoverComponentsRequest viam.proto.robot.DiscoverComponentsResponse viam.proto.robot.Discovery viam.proto.robot.DiscoveryQuery viam.proto.robot.FrameSystemConfig viam.proto.robot.FrameSystemConfigRequest viam.proto.robot.FrameSystemConfigResponse viam.proto.robot.GetCloudMetadataRequest viam.proto.robot.GetCloudMetadataResponse viam.proto.robot.GetOperationsRequest viam.proto.robot.GetOperationsResponse viam.proto.robot.GetSessionsRequest viam.proto.robot.GetSessionsResponse viam.proto.robot.GetStatusRequest viam.proto.robot.GetStatusResponse viam.proto.robot.LogRequest viam.proto.robot.LogResponse viam.proto.robot.Operation 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.RestartModuleRequest viam.proto.robot.RestartModuleResponse viam.proto.robot.SendSessionHeartbeatRequest viam.proto.robot.SendSessionHeartbeatResponse viam.proto.robot.Session 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 .. 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:: DiscoverComponents(stream: grpclib.server.Stream[robot.v1.robot_pb2.DiscoverComponentsRequest, robot.v1.robot_pb2.DiscoverComponentsResponse]) -> 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:: 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:: 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:: __mapping__() -> Dict[str, grpclib.const.Handler] .. py:class:: RobotServiceStub(channel: grpclib.client.Channel) .. 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:: DiscoverComponents(stream: grpclib.server.Stream[robot.v1.robot_pb2.DiscoverComponentsRequest, robot.v1.robot_pb2.DiscoverComponentsResponse]) -> None :async: .. py:method:: FrameSystemConfig(stream: grpclib.server.Stream[robot.v1.robot_pb2.FrameSystemConfigRequest, robot.v1.robot_pb2.FrameSystemConfigResponse]) -> 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:: 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: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:: DiscoverComponentsRequest(*, queries: collections.abc.Iterable[global___DiscoveryQuery] | 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:property:: queries :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DiscoveryQuery] .. py:class:: DiscoverComponentsResponse(*, discovery: collections.abc.Iterable[global___Discovery] | 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:property:: discovery :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Discovery] .. py:class:: Discovery(*, query: global___DiscoveryQuery | None = ..., results: 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:property:: query :type: global___DiscoveryQuery .. py:property:: results :type: google.protobuf.struct_pb2.Struct .. py:method:: HasField(field_name: Literal[query, b'query', results, b'results']) -> 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:: DiscoveryQuery(*, subtype: str = ..., model: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Discovery .. py:attribute:: subtype :type: str .. py:attribute:: model :type: str .. py:class:: FrameSystemConfig(*, frame: viam.gen.common.v1.common_pb2.Transform | None = ..., kinematics: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` this is an experimental API message .. py:property:: frame :type: viam.gen.common.v1.common_pb2.Transform .. py:property:: kinematics :type: google.protobuf.struct_pb2.Struct .. py:method:: HasField(field_name: Literal[frame, b'frame', kinematics, b'kinematics']) -> 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[viam.gen.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:property:: supplemental_transforms :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[viam.gen.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:property:: frame_system_configs :type: 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(*, robot_part_id: str = ..., 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:: robot_part_id :type: str use machine_part_id field. :type: Deprecated .. 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:: 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:property:: operations :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Operation] .. 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:property:: sessions :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Session] .. py:class:: GetStatusRequest(*, resource_names: collections.abc.Iterable[viam.gen.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:property:: resource_names :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[viam.gen.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:property:: status :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Status] .. py:class:: LogRequest(*, logs: collections.abc.Iterable[viam.gen.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:property:: logs :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[viam.gen.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:: 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:property:: arguments :type: google.protobuf.struct_pb2.Struct .. py:property:: started :type: google.protobuf.timestamp_pb2.Timestamp .. py:attribute:: id :type: str .. py:attribute:: method :type: str .. py:attribute:: session_id :type: str .. py:method:: HasField(field_name: Literal[_session_id, b'_session_id', arguments, b'arguments', session_id, b'session_id', started, b'started']) -> 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: Literal[_session_id, b'_session_id']) -> Literal[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:: 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: Literal[_local_address, b'_local_address', _remote_address, b'_remote_address', local_address, b'local_address', remote_address, b'remote_address']) -> 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: Literal[_local_address, b'_local_address']) -> Literal[local_address] | None WhichOneof(oneof_group: Literal[_remote_address, b'_remote_address']) -> Literal[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[viam.gen.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:property:: resources :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[viam.gen.common.v1.common_pb2.ResourceName] .. py:class:: ResourceRPCSubtype(*, subtype: viam.gen.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:property:: subtype :type: viam.gen.common.v1.common_pb2.ResourceName .. py:attribute:: proto_service :type: str .. py:method:: HasField(field_name: Literal[subtype, b'subtype']) -> 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:property:: resource_rpc_subtypes :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceRPCSubtype] .. 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: Literal[id_or_name, b'id_or_name', module_id, b'module_id', module_name, b'module_name']) -> 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: Literal[id_or_name, b'id_or_name']) -> Literal[module_id, module_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:: 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:property:: peer_connection_info :type: global___PeerConnectionInfo .. py:attribute:: id :type: str .. py:method:: HasField(field_name: Literal[_peer_connection_info, b'_peer_connection_info', peer_connection_info, b'peer_connection_info']) -> 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: Literal[_peer_connection_info, b'_peer_connection_info']) -> Literal[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:: 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:property:: heartbeat_window :type: google.protobuf.duration_pb2.Duration .. py:attribute:: id :type: str .. py:method:: HasField(field_name: Literal[heartbeat_window, b'heartbeat_window']) -> 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: viam.gen.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:property:: name :type: viam.gen.common.v1.common_pb2.ResourceName .. py:property:: status :type: google.protobuf.struct_pb2.Struct .. py:property:: last_reconfigured :type: google.protobuf.timestamp_pb2.Timestamp .. py:method:: HasField(field_name: Literal[last_reconfigured, b'last_reconfigured', name, b'name', status, b'status']) -> 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:property:: extra :type: 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: viam.gen.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:property:: name :type: viam.gen.common.v1.common_pb2.ResourceName .. py:property:: params :type: google.protobuf.struct_pb2.Struct .. py:method:: HasField(field_name: Literal[name, b'name', params, b'params']) -> 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[viam.gen.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:property:: resource_names :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[viam.gen.common.v1.common_pb2.ResourceName] .. py:property:: every :type: google.protobuf.duration_pb2.Duration how often to send a new status. .. py:method:: HasField(field_name: Literal[every, b'every']) -> 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:property:: status :type: 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: viam.gen.common.v1.common_pb2.PoseInFrame | None = ..., destination: str = ..., supplemental_transforms: collections.abc.Iterable[viam.gen.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:property:: source :type: viam.gen.common.v1.common_pb2.PoseInFrame the original pose to transform along with the reference frame in which it was observed .. py:property:: supplemental_transforms :type: google.protobuf.internal.containers.RepeatedCompositeFieldContainer[viam.gen.common.v1.common_pb2.Transform] pose information on any additional reference frames that are needed to perform the transform .. 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:: HasField(field_name: Literal[source, b'source']) -> 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: viam.gen.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:property:: pose :type: viam.gen.common.v1.common_pb2.PoseInFrame .. py:method:: HasField(field_name: Literal[pose, b'pose']) -> 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.