viam.gen.app.agent.v1.agent_pb2 =============================== .. py:module:: viam.gen.app.agent.v1.agent_pb2 .. autoapi-nested-parse:: @generated by mypy-protobuf. Do not edit manually! isort:skip_file Attributes ---------- .. autoapisummary:: viam.gen.app.agent.v1.agent_pb2.DESCRIPTOR viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_UNSPECIFIED viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_RAW viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_XZ viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_EXECUTABLE viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_XZ_EXECUTABLE viam.gen.app.agent.v1.agent_pb2.global___PackageFormat viam.gen.app.agent.v1.agent_pb2.global___DeviceAgentConfigRequest viam.gen.app.agent.v1.agent_pb2.global___DeviceAgentConfigResponse viam.gen.app.agent.v1.agent_pb2.global___DeviceSubsystemConfig viam.gen.app.agent.v1.agent_pb2.global___VersionInfo viam.gen.app.agent.v1.agent_pb2.global___HostInfo viam.gen.app.agent.v1.agent_pb2.global___UpdateInfo Classes ------- .. autoapisummary:: viam.gen.app.agent.v1.agent_pb2.PackageFormat viam.gen.app.agent.v1.agent_pb2.DeviceAgentConfigRequest viam.gen.app.agent.v1.agent_pb2.DeviceAgentConfigResponse viam.gen.app.agent.v1.agent_pb2.DeviceSubsystemConfig viam.gen.app.agent.v1.agent_pb2.VersionInfo viam.gen.app.agent.v1.agent_pb2.HostInfo viam.gen.app.agent.v1.agent_pb2.UpdateInfo Module Contents --------------- .. py:data:: DESCRIPTOR :type: google.protobuf.descriptor.FileDescriptor .. py:class:: PackageFormat Bases: :py:obj:`_PackageFormat` .. py:data:: PACKAGE_FORMAT_UNSPECIFIED :type: PackageFormat unknown/unset (autodetection may be attempted) .. py:data:: PACKAGE_FORMAT_RAW :type: PackageFormat do nothing .. py:data:: PACKAGE_FORMAT_XZ :type: PackageFormat decompress .xz file .. py:data:: PACKAGE_FORMAT_EXECUTABLE :type: PackageFormat set executable permissions .. py:data:: PACKAGE_FORMAT_XZ_EXECUTABLE :type: PackageFormat decompress and set executable .. py:data:: global___PackageFormat .. py:class:: DeviceAgentConfigRequest(*, id: str = ..., host_info: global___HostInfo | None = ..., subsystem_versions: collections.abc.Mapping[str, str] | None = ..., version_info: global___VersionInfo | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Device side .. py:class:: SubsystemVersionsEntry(*, key: str = ..., value: 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:: key :type: str .. py:attribute:: value :type: str .. py:attribute:: id :type: str robot partID .. py:property:: host_info :type: global___HostInfo info about the host system .. py:property:: subsystem_versions :type: google.protobuf.internal.containers.ScalarMap[str, str] current subsystems and versions DEPRECATED in favor of version_info .. py:property:: version_info :type: global___VersionInfo Currently installed versions for agent and viam-server .. py:method:: HasField(field_name: Literal['host_info', b'host_info', 'version_info', b'version_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:data:: global___DeviceAgentConfigRequest .. py:class:: DeviceAgentConfigResponse(*, subsystem_configs: collections.abc.Mapping[str, global___DeviceSubsystemConfig] | None = ..., check_interval: google.protobuf.duration_pb2.Duration | None = ..., agent_update_info: global___UpdateInfo | None = ..., viam_server_update_info: global___UpdateInfo | None = ..., advanced_settings: google.protobuf.struct_pb2.Struct | None = ..., network_configuration: google.protobuf.struct_pb2.Struct | None = ..., additional_networks: google.protobuf.struct_pb2.Struct | None = ..., system_configuration: 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:class:: SubsystemConfigsEntry(*, key: str = ..., value: global___DeviceSubsystemConfig | 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:: key :type: str .. py:property:: value :type: global___DeviceSubsystemConfig .. py:method:: HasField(field_name: Literal['value', b'value']) -> 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:property:: subsystem_configs :type: google.protobuf.internal.containers.MessageMap[str, global___DeviceSubsystemConfig] subsystems to be installed/configured/updated note: previously installed subsystems will be removed from the system if removed from this list DEPRECATED in favor of indidivual update_info and settings fields .. py:property:: check_interval :type: google.protobuf.duration_pb2.Duration how often this request should be repeated .. py:property:: agent_update_info :type: global___UpdateInfo update info for agent and viam-server, parsed/processed in App .. py:property:: viam_server_update_info :type: global___UpdateInfo .. py:property:: advanced_settings :type: google.protobuf.struct_pb2.Struct various settings that are passed directly to device Agent .. py:property:: network_configuration :type: google.protobuf.struct_pb2.Struct .. py:property:: additional_networks :type: google.protobuf.struct_pb2.Struct .. py:property:: system_configuration :type: google.protobuf.struct_pb2.Struct .. py:method:: HasField(field_name: Literal['additional_networks', b'additional_networks', 'advanced_settings', b'advanced_settings', 'agent_update_info', b'agent_update_info', 'check_interval', b'check_interval', 'network_configuration', b'network_configuration', 'system_configuration', b'system_configuration', 'viam_server_update_info', b'viam_server_update_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:data:: global___DeviceAgentConfigResponse .. py:class:: DeviceSubsystemConfig(*, update_info: global___UpdateInfo | None = ..., disable: bool = ..., force_restart: bool = ..., attributes: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` DEPRECATED as of January 2025 .. py:attribute:: disable :type: bool if this subsystem is disabled and should not be started by the agent .. py:attribute:: force_restart :type: bool force_restart will restart the subsystem, even if no updates are available .. py:property:: update_info :type: global___UpdateInfo data needed to download/validate the subsystem .. py:property:: attributes :type: google.protobuf.struct_pb2.Struct arbitrary config sections .. py:method:: HasField(field_name: Literal['attributes', b'attributes', 'update_info', b'update_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:data:: global___DeviceSubsystemConfig .. py:class:: VersionInfo(*, agent_running: str = ..., agent_installed: str = ..., viam_server_running: str = ..., viam_server_installed: 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:: agent_running :type: str the version of agent currently running and making the request .. py:attribute:: agent_installed :type: str the version of agent installed (will run after restart if different) .. py:attribute:: viam_server_running :type: str the version of viam-server currently running .. py:attribute:: viam_server_installed :type: str the version of viam-server installed (will run after restart if different) .. py:data:: global___VersionInfo .. py:class:: HostInfo(*, platform: str = ..., distro: str = ..., tags: 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:: platform :type: str linux/amd64, darwin/arm64 :type: platform is the docker styled combination of kernel and architecture. Ex .. py:attribute:: distro :type: str 22.04, debian:11 :type: ID and VERSION_ID fields from /etc/os-release, colon seperated. Ex :type: ubuntu .. py:property:: tags :type: google.protobuf.internal.containers.RepeatedScalarFieldContainer[str] additional tags for specific hardware or software that's present and may affect software selection ex: "jetson", "rpi4", "systemd", etc. .. py:data:: global___HostInfo .. py:class:: UpdateInfo(*, filename: str = ..., url: str = ..., version: str = ..., sha256: bytes = ..., format: global___PackageFormat = ...) 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:: filename :type: str unpacked filename as it is expected on disk (regardless of url) .. py:attribute:: url :type: str url to download from .. py:attribute:: version :type: str version expected at the url .. py:attribute:: sha256 :type: bytes sha256 sum of file as downloaded .. py:attribute:: format :type: global___PackageFormat determines if decompression or executable permissions are needed .. py:data:: global___UpdateInfo