viam.app.provisioning_client

Module Contents

Classes

ProvisioningClient

gRPC client for getting and setting smart machine info.

Attributes

LOGGER

viam.app.provisioning_client.LOGGER
class viam.app.provisioning_client.ProvisioningClient(channel: grpclib.client.Channel, metadata: Mapping[str, str])[source]

gRPC client for getting and setting smart machine info.

Constructor is used by ViamClient to instantiate relevant service stubs. Calls to ProvisioningClient methods should be made through ViamClient.

Establish a connection:

import asyncio

from viam.rpc.dial import DialOptions, Credentials
from viam.app.viam_client import ViamClient


async def connect() -> ViamClient:
    # Replace "<API-KEY>" (including brackets) with your API key and "<API-KEY-ID>" with your API key ID
    dial_options = DialOptions.with_api_key("<API-KEY>", "<API-KEY-ID>")
    return await ViamClient.create_from_dial_options(dial_options)


async def main():

    # Make a ViamClient
    viam_client = await connect()
    # Instantiate a ProvisioningClient to run provisioning client API methods on
    provisioning_client = viam_client.provisioning_client

    viam_client.close()

if __name__ == '__main__':
    asyncio.run(main())
async get_network_list() List[viam.proto.provisioning.NetworkInfo][source]

Returns list of networks that are visible to the Smart Machine.

async get_smart_machine_status() viam.proto.provisioning.GetSmartMachineStatusResponse[source]

Returns the status of the smart machine.

async set_network_credentials(network_type: str, ssid: str, psk: str) None[source]

Sets the network credentials of the Smart Machine.

Parameters:
  • network_type (str) – The type of the network.

  • ssid (str) – The SSID of the network.

  • psk (str) – The network’s passkey.

async set_smart_machine_credentials(cloud_config: viam.proto.provisioning.CloudConfig | None = None) None[source]