DeviceManagementClient.GetDeviceAsync(String, RequestContext) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
IoT Hubの Device Update に接続されているデバイスのデバイスのプロパティと最新の展開状態を取得します。
public virtual System.Threading.Tasks.Task<Azure.Response> GetDeviceAsync (string deviceId, Azure.RequestContext context = default);
abstract member GetDeviceAsync : string * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
override this.GetDeviceAsync : string * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function GetDeviceAsync (deviceId As String, Optional context As RequestContext = Nothing) As Task(Of Response)
パラメーター
- deviceId
- String
Azure IoT Hubのデバイス識別子。
- context
- RequestContext
要求コンテキスト。これは、クライアント パイプラインの既定の動作を呼び出しごとにオーバーライドできます。
戻り値
サービスから返された応答。 応答本文スキーマの詳細については、以下の「解説」セクションを参照してください。
例外
deviceId
が null です。
deviceId
は空の文字列であり、空でないと予想されていました。
サービスから成功以外の状態コードが返されました。
例
このサンプルでは、必要なパラメーターを使用して GetDeviceAsync を呼び出し、結果を解析する方法を示します。
var credential = new DefaultAzureCredential();
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new DeviceManagementClient(endpoint, "<instanceId>", credential);
Response response = await client.GetDeviceAsync("<deviceId>");
JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("deviceId").ToString());
Console.WriteLine(result.GetProperty("moduleId").ToString());
Console.WriteLine(result.GetProperty("deviceClassId").ToString());
Console.WriteLine(result.GetProperty("groupId").ToString());
Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString());
Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString());
Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString());
Console.WriteLine(result.GetProperty("deploymentStatus").ToString());
Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString());
Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString());
Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString());
Console.WriteLine(result.GetProperty("onLatestUpdate").ToString());
Console.WriteLine(result.GetProperty("lastDeploymentId").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString());
Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString());
注釈
応答ペイロードの JSON スキーマを次に示します。
応答本文:
の Device
スキーマ:
{
deviceId: string, # Required. Device identity.
moduleId: string, # Optional. Device module identity.
deviceClassId: string, # Required. Device class identity.
groupId: string, # Optional. Device group identity.
lastAttemptedUpdate: {
updateId: {
provider: string, # Required. Update provider.
name: string, # Required. Update name.
version: string, # Required. Update version.
}, # Required. Update identifier.
description: string, # Optional. Update description.
friendlyName: string, # Optional. Friendly update name.
}, # Optional. The update that device last attempted to install.
deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment.
installedUpdate: UpdateInfo, # Optional. Currently installed update on device.
onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device
lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device
lastInstallResult: {
resultCode: number, # Required. Install result code.
extendedResultCode: number, # Required. Install extended result code
resultDetails: string, # Optional. A string containing further details about the install result
stepResults: [
{
update: UpdateInfo, # Optional. The update that this step installs if it is of reference type.
description: string, # Optional. Step description.
resultCode: number, # Required. Install result code.
extendedResultCode: number, # Required. Install extended result code
resultDetails: string, # Optional. A string containing further details about the install result
}
], # Optional. Array of step results
}, # Optional. Last install result.
}
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
Azure SDK for .NET