viam.proto.app.cloudslam ======================== .. py:module:: viam.proto.app.cloudslam .. autoapi-nested-parse:: @generated by Viam. Do not edit manually! Classes ------- .. autoapisummary:: viam.proto.app.cloudslam.CloudSLAMServiceBase viam.proto.app.cloudslam.CloudSLAMServiceStub viam.proto.app.cloudslam.UnimplementedCloudSLAMServiceBase viam.proto.app.cloudslam.CaptureInterval viam.proto.app.cloudslam.EndStatus viam.proto.app.cloudslam.GetActiveMappingSessionsForRobotRequest viam.proto.app.cloudslam.GetActiveMappingSessionsForRobotResponse viam.proto.app.cloudslam.GetMappingSessionMetadataByIDRequest viam.proto.app.cloudslam.GetMappingSessionMetadataByIDResponse viam.proto.app.cloudslam.GetMappingSessionPointCloudRequest viam.proto.app.cloudslam.GetMappingSessionPointCloudResponse viam.proto.app.cloudslam.ListMappingSessionsRequest viam.proto.app.cloudslam.ListMappingSessionsResponse viam.proto.app.cloudslam.MappingMetadata viam.proto.app.cloudslam.Module viam.proto.app.cloudslam.SensorInfo viam.proto.app.cloudslam.StartMappingSessionRequest viam.proto.app.cloudslam.StartMappingSessionResponse viam.proto.app.cloudslam.StopMappingSessionRequest viam.proto.app.cloudslam.StopMappingSessionResponse Package Contents ---------------- .. py:class:: CloudSLAMServiceBase Bases: :py:obj:`abc.ABC` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: StartMappingSession(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.StartMappingSessionRequest, app.cloudslam.v1.cloud_slam_pb2.StartMappingSessionResponse]) -> None :abstractmethod: :async: .. py:method:: GetActiveMappingSessionsForRobot(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.GetActiveMappingSessionsForRobotRequest, app.cloudslam.v1.cloud_slam_pb2.GetActiveMappingSessionsForRobotResponse]) -> None :abstractmethod: :async: .. py:method:: GetMappingSessionPointCloud(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionPointCloudRequest, app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionPointCloudResponse]) -> None :abstractmethod: :async: .. py:method:: ListMappingSessions(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.ListMappingSessionsRequest, app.cloudslam.v1.cloud_slam_pb2.ListMappingSessionsResponse]) -> None :abstractmethod: :async: .. py:method:: StopMappingSession(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.StopMappingSessionRequest, app.cloudslam.v1.cloud_slam_pb2.StopMappingSessionResponse]) -> None :abstractmethod: :async: .. py:method:: GetMappingSessionMetadataByID(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionMetadataByIDRequest, app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionMetadataByIDResponse]) -> None :abstractmethod: :async: .. py:method:: __mapping__() -> Dict[str, grpclib.const.Handler] .. py:class:: CloudSLAMServiceStub(channel: grpclib.client.Channel) .. py:attribute:: StartMappingSession .. py:attribute:: GetActiveMappingSessionsForRobot .. py:attribute:: GetMappingSessionPointCloud .. py:attribute:: ListMappingSessions .. py:attribute:: StopMappingSession .. py:attribute:: GetMappingSessionMetadataByID .. py:class:: UnimplementedCloudSLAMServiceBase Bases: :py:obj:`CloudSLAMServiceBase` Helper class that provides a standard way to create an ABC using inheritance. .. py:method:: StartMappingSession(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.StartMappingSessionRequest, app.cloudslam.v1.cloud_slam_pb2.StartMappingSessionResponse]) -> None :async: .. py:method:: GetActiveMappingSessionsForRobot(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.GetActiveMappingSessionsForRobotRequest, app.cloudslam.v1.cloud_slam_pb2.GetActiveMappingSessionsForRobotResponse]) -> None :async: .. py:method:: GetMappingSessionPointCloud(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionPointCloudRequest, app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionPointCloudResponse]) -> None :async: .. py:method:: ListMappingSessions(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.ListMappingSessionsRequest, app.cloudslam.v1.cloud_slam_pb2.ListMappingSessionsResponse]) -> None :async: .. py:method:: StopMappingSession(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.StopMappingSessionRequest, app.cloudslam.v1.cloud_slam_pb2.StopMappingSessionResponse]) -> None :async: .. py:method:: GetMappingSessionMetadataByID(stream: grpclib.server.Stream[app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionMetadataByIDRequest, app.cloudslam.v1.cloud_slam_pb2.GetMappingSessionMetadataByIDResponse]) -> None :async: .. py:class:: CaptureInterval(*, start_time: google.protobuf.timestamp_pb2.Timestamp | None = ..., end_time: 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:: start_time() -> google.protobuf.timestamp_pb2.Timestamp .. py:method:: end_time() -> google.protobuf.timestamp_pb2.Timestamp if no end_time specified cloud slam will be run using live sensors .. 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:: EndStatus Bases: :py:obj:`_EndStatus` .. py:class:: GetActiveMappingSessionsForRobotRequest(*, robot_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` GetActiveMappingSessionsForRobot .. py:attribute:: robot_id :type: str assumes only one active mapping session on a robot .. py:class:: GetActiveMappingSessionsForRobotResponse(*, session_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:: session_id :type: str .. py:class:: GetMappingSessionMetadataByIDRequest(*, session_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` GetMappingSessionMetadataByID .. py:attribute:: session_id :type: str .. py:class:: GetMappingSessionMetadataByIDResponse(*, session_metadata: Global___MappingMetadata | 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:: session_metadata() -> Global___MappingMetadata .. 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:: GetMappingSessionPointCloudRequest(*, session_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` GetMappingSessionPointCloud .. py:attribute:: session_id :type: str .. py:class:: GetMappingSessionPointCloudResponse(*, map_url: str = ..., pose: common.v1.common_pb2.Pose | 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:: map_url :type: str url to the pointcloud map .. py:method:: pose() -> common.v1.common_pb2.Pose Current position within the SLAM Map .. 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:: ListMappingSessionsRequest(*, organization_id: str = ..., location_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` ListMappingSessions .. py:attribute:: organization_id :type: str .. py:attribute:: location_id :type: str .. py:class:: ListMappingSessionsResponse(*, session: collections.abc.Iterable[Global___MappingMetadata] | 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:: session() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___MappingMetadata] .. py:class:: MappingMetadata(*, org_id: str = ..., location_id: str = ..., robot_id: str = ..., time_start_submitted: google.protobuf.timestamp_pb2.Timestamp | None = ..., time_cloud_run_job_started: google.protobuf.timestamp_pb2.Timestamp | None = ..., time_end_submitted: google.protobuf.timestamp_pb2.Timestamp | None = ..., time_cloud_run_job_ended: google.protobuf.timestamp_pb2.Timestamp | None = ..., end_status: Global___EndStatus = ..., cloud_run_job_id: str = ..., viam_server_version: str = ..., map_name: str = ..., slam_version: str = ..., config: str = ..., error_msg: 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:: org_id :type: str org associated with the slam session .. py:attribute:: location_id :type: str location associated with the slam session .. py:attribute:: robot_id :type: str robot associated with slam session .. py:attribute:: end_status :type: Global___EndStatus enums that represent “success”, “failed”, etc .. py:attribute:: cloud_run_job_id :type: str initially unset .. py:attribute:: viam_server_version :type: str version tag from request, defaults to stable .. py:attribute:: map_name :type: str name of the map package .. py:attribute:: slam_version :type: str version tag from request, defaults to stable .. py:attribute:: config :type: str a robot config for a slam session .. py:attribute:: error_msg :type: str additional details on the end status if needed, such as errors .. py:method:: time_start_submitted() -> google.protobuf.timestamp_pb2.Timestamp time this document was created .. py:method:: time_cloud_run_job_started() -> google.protobuf.timestamp_pb2.Timestamp time the cloud run job started .. py:method:: time_end_submitted() -> google.protobuf.timestamp_pb2.Timestamp time StopSlamSession was called .. py:method:: time_cloud_run_job_ended() -> google.protobuf.timestamp_pb2.Timestamp time the cloud run job ended .. 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:: Module(*, name: str = ..., module_id: str = ..., 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:: name :type: str .. py:attribute:: module_id :type: str .. py:attribute:: version :type: str .. py:class:: SensorInfo(*, source_component_name: str = ..., type: str = ..., data_frequency_hz: 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:: source_component_name :type: str .. py:attribute:: type :type: str type is the RDK component type .. py:attribute:: data_frequency_hz :type: str .. py:class:: StartMappingSessionRequest(*, slam_version: str = ..., viam_server_version: str = ..., map_name: str = ..., organization_id: str = ..., location_id: str = ..., robot_id: str = ..., capture_interval: Global___CaptureInterval | None = ..., sensors: collections.abc.Iterable[Global___SensorInfo] | None = ..., slam_config: google.protobuf.struct_pb2.Struct | None = ..., existing_map_version: str = ..., module: Global___Module | None = ...) Bases: :py:obj:`google.protobuf.message.Message` StartMappingSession .. py:attribute:: slam_version :type: str Version to use for slam, defaults stable .. py:attribute:: viam_server_version :type: str Version to use for viam, defaults stable .. py:attribute:: map_name :type: str .. py:attribute:: organization_id :type: str .. py:attribute:: location_id :type: str .. py:attribute:: robot_id :type: str .. py:attribute:: existing_map_version :type: str .. py:method:: capture_interval() -> Global___CaptureInterval .. py:method:: sensors() -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[Global___SensorInfo] .. py:method:: slam_config() -> google.protobuf.struct_pb2.Struct .. py:method:: module() -> Global___Module .. 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:: StartMappingSessionResponse(*, session_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:: session_id :type: str .. py:class:: StopMappingSessionRequest(*, session_id: str = ...) Bases: :py:obj:`google.protobuf.message.Message` StopMappingSession .. py:attribute:: session_id :type: str .. py:class:: StopMappingSessionResponse(*, package_id: str = ..., 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:: package_id :type: str .. py:attribute:: version :type: str