Freigeben über


DeviceManagementClient.GetDeviceModule(String, String, RequestContext) Methode

Definition

Ruft die Eigenschaften des Gerätemoduls und die neueste bereitstellung status für ein Gerätemodul ab, das mit Device Update für IoT Hub verbunden ist.

public virtual Azure.Response GetDeviceModule (string deviceId, string moduleId, Azure.RequestContext context = default);
abstract member GetDeviceModule : string * string * Azure.RequestContext -> Azure.Response
override this.GetDeviceModule : string * string * Azure.RequestContext -> Azure.Response
Public Overridable Function GetDeviceModule (deviceId As String, moduleId As String, Optional context As RequestContext = Nothing) As Response

Parameter

deviceId
String

Gerätebezeichner in Azure IoT Hub.

moduleId
String

Gerätemodulbezeichner in Azure IoT Hub.

context
RequestContext

Der Anforderungskontext, der das Standardverhalten der Clientpipeline pro Aufruf außer Kraft setzen kann.

Gibt zurück

Die vom Dienst zurückgegebene Antwort. Details zum Antworttextschema finden Sie unten im Abschnitt Hinweise.

Ausnahmen

deviceId oder moduleId ist NULL.

deviceId oder moduleId ist eine leere Zeichenfolge und wurde erwartet, dass sie nicht leer ist.

Der Dienst hat einen nicht erfolgreichen status Code zurückgegeben.

Beispiele

In diesem Beispiel wird gezeigt, wie GetDeviceModule mit den erforderlichen Parametern aufgerufen und das Ergebnis analysiert wird.

var credential = new DefaultAzureCredential();
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new DeviceManagementClient(endpoint, "<instanceId>", credential);

Response response = client.GetDeviceModule("<deviceId>", "<moduleId>");

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());

Hinweise

Im Folgenden finden Sie das JSON-Schema für die Antwortnutzlast.

Antworttext:

Schema für 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.
            }

Gilt für: