Table of Contents

Interface IAdrServiceClient

Namespace
Azure.Iot.Operations.Services.AssetAndDeviceRegistry
Assembly
Azure.Iot.Operations.Services.dll

Defines methods and events for interacting with the Asset and Device Registry (ADR) service.

public interface IAdrServiceClient : IAsyncDisposable
Inherited Members

Methods

CreateOrUpdateDiscoveredAssetAsync(string, string, CreateOrUpdateDiscoveredAssetRequest, TimeSpan?, CancellationToken)

Creates or updates a discovered asset.

Task<CreateOrUpdateDiscoveredAssetResponsePayload> CreateOrUpdateDiscoveredAssetAsync(string deviceName, string inboundEndpointName, CreateOrUpdateDiscoveredAssetRequest request, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

request CreateOrUpdateDiscoveredAssetRequest

The request containing discovered asset creation parameters.

commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<CreateOrUpdateDiscoveredAssetResponsePayload>

A task that represents the asynchronous operation, containing the response for the created discovered asset.

CreateOrUpdateDiscoveredDeviceAsync(CreateOrUpdateDiscoveredDeviceRequestSchema, string, TimeSpan?, CancellationToken)

Creates or updates a discovered device.

Task<CreateOrUpdateDiscoveredDeviceResponsePayload> CreateOrUpdateDiscoveredDeviceAsync(CreateOrUpdateDiscoveredDeviceRequestSchema request, string inboundEndpointType, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

request CreateOrUpdateDiscoveredDeviceRequestSchema

The request containing discovered device endpoint profile creation parameters.

inboundEndpointType string
commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<CreateOrUpdateDiscoveredDeviceResponsePayload>

A task that represents the asynchronous operation, containing the response for the created discovered device endpoint profile.

GetAssetAsync(string, string, string, TimeSpan?, CancellationToken)

Retrieves details of a specific asset.

Task<Asset> GetAssetAsync(string deviceName, string inboundEndpointName, string assetName, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

assetName string
commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<Asset>

A task that represents the asynchronous operation, containing the asset details.

GetAssetStatusAsync(string, string, string, TimeSpan?, CancellationToken)

Retrieves the status of a specific asset.

Task<AssetStatus> GetAssetStatusAsync(string deviceName, string inboundEndpointName, string assetName, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

assetName string

The name of the asset.

commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<AssetStatus>

A task that represents the asynchronous operation, containing the asset status.

GetDeviceAsync(string, string, TimeSpan?, CancellationToken)

Retrieves details of a specific device.

Task<Device> GetDeviceAsync(string deviceName, string inboundEndpointName, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<Device>

A task that represents the asynchronous operation, containing the device details.

GetDeviceStatusAsync(string, string, TimeSpan?, CancellationToken)

Retrieves the status of a specific device.

Task<DeviceStatus> GetDeviceStatusAsync(string deviceName, string inboundEndpointName, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<DeviceStatus>

A task that represents the asynchronous operation, containing the device status.

SetNotificationPreferenceForAssetUpdatesAsync(string, string, string, NotificationPreference, TimeSpan?, CancellationToken)

Observe or unobserve updates for a specific asset.

Task<SetNotificationPreferenceForAssetUpdatesResponsePayload> SetNotificationPreferenceForAssetUpdatesAsync(string deviceName, string inboundEndpointName, string assetName, NotificationPreference notificationPreference, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

assetName string

The name of the asset.

notificationPreference NotificationPreference
commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<SetNotificationPreferenceForAssetUpdatesResponsePayload>

A task that represents the asynchronous operation, containing the notification response.

SetNotificationPreferenceForDeviceUpdatesAsync(string, string, NotificationPreference, TimeSpan?, CancellationToken)

Observe or unobserve updates for a specific device endpoint.

Task<SetNotificationPreferenceForDeviceUpdatesResponsePayload> SetNotificationPreferenceForDeviceUpdatesAsync(string deviceName, string inboundEndpointName, NotificationPreference notificationPreference, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

notificationPreference NotificationPreference
commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<SetNotificationPreferenceForDeviceUpdatesResponsePayload>

A task that represents the asynchronous operation, containing the notification response.

UpdateAssetStatusAsync(string, string, UpdateAssetStatusRequest, TimeSpan?, CancellationToken)

Updates the status of a specific asset.

Task<AssetStatus> UpdateAssetStatusAsync(string deviceName, string inboundEndpointName, UpdateAssetStatusRequest request, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

request UpdateAssetStatusRequest

The request containing asset status update parameters.

commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<AssetStatus>

A task that represents the asynchronous operation, containing the updated asset details.

UpdateDeviceStatusAsync(string, string, DeviceStatus, TimeSpan?, CancellationToken)

Updates the status of a specific device.

Task<DeviceStatus> UpdateDeviceStatusAsync(string deviceName, string inboundEndpointName, DeviceStatus status, TimeSpan? commandTimeout = null, CancellationToken cancellationToken = default)

Parameters

deviceName string

The name of the device.

inboundEndpointName string

The name of the inbound endpoint.

status DeviceStatus

The new status of the device.

commandTimeout TimeSpan?

Optional timeout for the command.

cancellationToken CancellationToken

Optional cancellation token.

Returns

Task<DeviceStatus>

A task that represents the asynchronous operation, containing the updated device details.

Events

OnReceiveAssetUpdateEventTelemetry

Event triggered when an asset update telemetry event is received. NOTE: This event starts triggering after the call to SetNotificationPreferenceForAssetUpdatesAsync(string, string, string, NotificationPreference, TimeSpan?, CancellationToken).

event Func<string, Asset, Task>? OnReceiveAssetUpdateEventTelemetry

Event Type

Func<string, Asset, Task>

OnReceiveDeviceUpdateEventTelemetry

Event triggered when a device update telemetry event is received. NOTE: This event starts triggering after the call to SetNotificationPreferenceForDeviceUpdatesAsync(string, string, NotificationPreference, TimeSpan?, CancellationToken).

event Func<string, string, Device, Task>? OnReceiveDeviceUpdateEventTelemetry

Event Type

Func<string, string, Device, Task>