viam.proto.app.agent

@generated by Viam. Do not edit manually!

Package Contents

Classes

AgentDeviceServiceBase

Helper class that provides a standard way to create an ABC using

AgentDeviceServiceStub

UnimplementedAgentDeviceServiceBase

Helper class that provides a standard way to create an ABC using

DeviceAgentConfigRequest

Device side

DeviceAgentConfigResponse

Abstract base class for protocol messages.

DeviceSubsystemConfig

Abstract base class for protocol messages.

HostInfo

Abstract base class for protocol messages.

PackageFormat

SubsystemUpdateInfo

Abstract base class for protocol messages.

class viam.proto.app.agent.AgentDeviceServiceBase[source]

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

abstract async DeviceAgentConfig(stream: grpclib.server.Stream[app.agent.v1.agent_pb2.DeviceAgentConfigRequest, app.agent.v1.agent_pb2.DeviceAgentConfigResponse]) None[source]
__mapping__() Dict[str, grpclib.const.Handler][source]
class viam.proto.app.agent.AgentDeviceServiceStub(channel: grpclib.client.Channel)[source]
class viam.proto.app.agent.UnimplementedAgentDeviceServiceBase[source]

Bases: AgentDeviceServiceBase

Helper class that provides a standard way to create an ABC using inheritance.

async DeviceAgentConfig(stream: grpclib.server.Stream[app.agent.v1.agent_pb2.DeviceAgentConfigRequest, app.agent.v1.agent_pb2.DeviceAgentConfigResponse]) None[source]
class viam.proto.app.agent.DeviceAgentConfigRequest(*, id: str = ..., host_info: global___HostInfo | None = ..., subsystem_versions: collections.abc.Mapping[str, str] | None = ...)

Bases: google.protobuf.message.Message

Device side

class SubsystemVersionsEntry(*, key: str = ..., value: str = ...)

Bases: 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.

key: str
value: str
property host_info: global___HostInfo

info about the host system

property subsystem_versions: google.protobuf.internal.containers.ScalarMap[str, str]

current subsystems and versions

id: str

robot partID

HasField(field_name: Literal[host_info, b'host_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, ValueError will be raised.

Parameters:

field_name (str) – The name of the field to check for presence.

Returns:

Whether a value has been set for the named field.

Return type:

bool

Raises:

ValueError – if the field_name is not a member of this message.

class viam.proto.app.agent.DeviceAgentConfigResponse(*, subsystem_configs: collections.abc.Mapping[str, global___DeviceSubsystemConfig] | None = ..., check_interval: google.protobuf.duration_pb2.Duration | None = ...)

Bases: 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.

class SubsystemConfigsEntry(*, key: str = ..., value: global___DeviceSubsystemConfig | None = ...)

Bases: 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.

property value: global___DeviceSubsystemConfig
key: str
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, ValueError will be raised.

Parameters:

field_name (str) – The name of the field to check for presence.

Returns:

Whether a value has been set for the named field.

Return type:

bool

Raises:

ValueError – if the field_name is not a member of this message.

property subsystem_configs: 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

property check_interval: google.protobuf.duration_pb2.Duration

how often this request should be repeated

HasField(field_name: Literal[check_interval, b'check_interval']) 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, ValueError will be raised.

Parameters:

field_name (str) – The name of the field to check for presence.

Returns:

Whether a value has been set for the named field.

Return type:

bool

Raises:

ValueError – if the field_name is not a member of this message.

class viam.proto.app.agent.DeviceSubsystemConfig(*, update_info: global___SubsystemUpdateInfo | None = ..., disable: bool = ..., force_restart: bool = ..., attributes: google.protobuf.struct_pb2.Struct | None = ...)

Bases: 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.

property update_info: global___SubsystemUpdateInfo

data needed to download/validate the subsystem

property attributes: google.protobuf.struct_pb2.Struct

arbitrary config sections

disable: bool

if this subsystem is disabled and should not be started by the agent

force_restart: bool

force_restart will restart the subsystem, even if no updates are available

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, ValueError will be raised.

Parameters:

field_name (str) – The name of the field to check for presence.

Returns:

Whether a value has been set for the named field.

Return type:

bool

Raises:

ValueError – if the field_name is not a member of this message.

class viam.proto.app.agent.HostInfo(*, platform: str = ..., distro: str = ..., tags: collections.abc.Iterable[str] | None = ...)

Bases: 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.

property tags: 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.

platform: str

linux/amd64, darwin/arm64

Type:

platform is the docker styled combination of kernel and architecture. Ex

distro: str

22.04, debian:11

Type:

ID and VERSION_ID fields from /etc/os-release, colon seperated. Ex

Type:

ubuntu

class viam.proto.app.agent.PackageFormat

Bases: _PackageFormat

class viam.proto.app.agent.SubsystemUpdateInfo(*, filename: str = ..., url: str = ..., version: str = ..., sha256: bytes = ..., format: global___PackageFormat = ...)

Bases: 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.

filename: str

unpacked filename as it is expected on disk (regardless of url)

url: str

url to download from

version: str

version expected at the url

sha256: bytes

sha256 sum of file as downloaded

format: global___PackageFormat

determines if decompression or executable permissions are needed