viam_sdk library

Robots at your fingertips.

Classes

Arm
Arm represents a physical robot arm that exists in three-dimensional space.
ArmClient
gRPC client for an Arm component.
AuthenticatedChannel
A channel that attaches an access token to gRPC metadata for every call
Base
Base represents a physical base of a robot.
BaseClient
gRPC client for the Base component.
Board
Board represents a physical general purpose compute board that contains various components such as analog readers, and digital interrupts.
BoardClient
gRPC client for the Board component.
Camera
Camera represents any physical hardware that can capture frames.
CameraClient
gRPC client for the Camera component
ClientChannelWithSessions
A channel that adds session data (if required) to gRPC metadata for every call
CloudConfig
minimal CloudConfig to create /etc/viam.json
Credentials
The credentials used for connecting to the robot
DialOptions
Describes the behavior for connecting to a robot
DialWebRtcOptions
Options specific for connecting over WebRTC
DoCommandRequest
DoCommandRequest represents a generic DoCommand input
DoCommandResponse
DoCommandResponse represents a generic DoCommand output
Gantry
Gantry represents a physical Gantry and can be used for controlling gantries of N axes.
GantryClient
gRPC client for the Gantry component.
Generic
Generic represents a generic component that executes doCommand.
GenericClient
gRPC client for the Generic component.
GeoPoint
GetNetworkListRequest
GetNetworkListResponse
GetSmartMachineStatusRequest
GetSmartMachineStatusResponse
Gripper
Gripper represents a physical Gripper which can open and close.
GripperClient
gRPC client for the Gripper component.
MimeType
Mime types supported by Viam
Motor
Motor represents a physical motor.
MotorClient
gRPC client for the Motor component.
MovementSensor
MovementSensor reports information about the robot's direction, position and speed.
MovementSensorClient
gRPC client for the MovementSensor component.
NetworkInfo
Orientation
Pose
Pose is a combination of location and orientation. Location is expressed as distance which is represented by x , y, z coordinates. Orientation is expressed as an orientation vector which is represented by o_x, o_y, o_z and theta. The o_x, o_y, o_z coordinates represent the point on the cartesian unit sphere that the end of the arm is pointing to (with the origin as reference). That unit vector forms an axis around which theta rotates. This means that incrementing / decrementing theta will perform an inline rotation of the end effector. Theta is defined as rotation between two planes: the first being defined by the origin, the point (0,0,1), and the rx, ry, rz point, and the second being defined by the origin, the rx, ry, rz point and the local Z axis. Therefore, if theta is kept at zero as the north/south pole is circled, the Roll will correct itself to remain in-line.
PoseInFrame
PoseInFrame contains a pose and the and the reference frame in which it was observed
Position
PowerSensor
PowerSensor reports information about voltage, current, and power.
PowerSensorClient
gRPC client for the PowerSensor component.
PowerState
ProvisioningClient
gRPC client for connecting to Viam's Provisioning Service
ProvisioningInfo
Registry
The global registry of robot resources.
Resource
Abstract class that defines the base functionality for all Resource types
ResourceName
ResourceRegistration<T extends Resource>
An object representing a resource to be registered.
ResourceRPCClient<T extends Client>
Abstract class that defines the base functionality for all RPC clients for resources
RobotClient
gRPC client for a Robot. This class should be used for all interactions with a robot.
RobotClientOptions
The options that define the behavior of the RobotClient.
Sensor
Sensor represents a physical sensing device that can provide measurement readings.
SensorClient
gRPC client for the Sensor component.
Servo
Servo represents a physical servo.
ServoClient
gRPC client for the Servo component.
SetNetworkCredentialsRequest
SetNetworkCredentialsResponse
SetSmartMachineCredentialsRequest
SetSmartMachineCredentialsResponse
StreamClient
A client to manage a camera's WebRTC stream.
Subtype
Subtype defines a triplet of strings that correspond to a resource's specific API definition.
Vector3
Viam
An object to interact with the Viam app
ViamAuthorization
ViamImage
A custom image type that contains the MimeTYpe, raw image data, and lazily loads and caches an img.Image.
VisionClient

Extensions

FilterUtils

Constants

resourceNamespaceRDK → const String
The standard namespace for Viam resources (rdk)
resourceTypeComponent → const String
The standard type for component resources (component)
resourceTypeService → const String
The standard type for service resources (service)

Functions

dial(String address, DialOptions? options, String sessionCallback()) Future<ClientChannelBase>
Connect to a robot at the provided address with the given options

Enums

AuthorizationId
IdentityType
NetworkType
Permission
ResourceType

Typedefs

Accuracy = GetAccuracyResponse
BaseProperties = GetPropertiesResponse
CameraProperties = GetPropertiesResponse
The camera's supported features and settings
Current = GetCurrentResponse
DatabaseConnection = GetDatabaseConnectionResponse
MotorProperties = GetPropertiesResponse
Properties = GetPropertiesResponse
Tick = StreamTicksResponse
Tick of a digital interrupt
Voltage = GetVoltageResponse