

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Benachrichtigungen über Vermögenseigenschaften abfragen in AWS IoT SiteWise
<a name="query-notification-messages"></a>

Um Benachrichtigungen über Vermögenseigenschaften abzufragen, erstellen Sie AWS IoT Core Regeln, die aus SQL-Anweisungen bestehen.

AWS IoT SiteWise veröffentlicht Aktualisierungen von Asset-Eigenschaftsdaten in AWS IoT Core im folgenden Format.

```
{
  "type": "PropertyValueUpdate",
  "payload": {
    "assetId": "String",
    "propertyId": "String",
    "values": [
      {
        "timestamp": {
          "timeInSeconds": Number,
          "offsetInNanos": Number
        },
        "quality": "String",
        "value": {
          "booleanValue": Boolean,
          "doubleValue": Number,
          "integerValue": Number,
          "stringValue": "String",
          "nullValue": {
            "valueType": "String
            }           
        }
      }
    ]
  }
}
```

Jede Struktur in der `values` Liste ist eine timestamp-quality-value (TQV-) Struktur.
+ `timestamp` enthält die aktuelle Unix-Epoche in Sekunden mit Nanosekunden-Offset.
+ `quality` enthält eine der folgenden Zeichenfolgen zur Angabe der Qualität des Datenpunkts:
  + `GOOD`— Die Daten sind von keinen Problemen betroffen.
  + `BAD`— Die Daten sind von einem Problem wie einem Sensorausfall betroffen.
  + `UNCERTAIN`— Die Daten sind von einem Problem wie einer Sensorungenauigkeit betroffen.
+ `value` enthält abhängig vom Typ der Eigenschaft eines der folgenden Felder:
  + `booleanValue`
  + `doubleValue`
  + `integerValue`
  + `stringValue`
  + `nullValue`

`nullValue`— Eine Struktur mit dem folgenden Feld, das den Typ des Eigenschaftswerts mit dem Wert Null und der Qualität oder angibt. `BAD` `UNCERTAIN`
+ `valueType`— Aufzählung von \$1"B“, „D“, „S“, „I"\$1

Um Werte aus dem `values`-Array zu analysieren, müssen Sie in den SQL-Anweisungen Ihrer Regeln komplexe verschachtelte Objektabfragen verwenden. Weitere Informationen finden Sie unter [Abfragen verschachtelter Objekte](https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-nested-queries.html) im *AWS IoT Entwicklerhandbuch oder in der Anleitung* finden Sie ein konkretes Beispiel für das [Aktualisierungen von Immobilienwerten in Amazon DynamoDB veröffentlichen](publish-to-amazon-dynamodb.md) Analysieren von Benachrichtigungen über Objekteigenschaften.

**Example Beispielabfrage zum Extrahieren des Werte-Arrays**  
Die folgende Anweisung veranschaulicht, wie das Array aktueller Eigenschaftswerte für eine bestimmte Eigenschaft vom doppelten Typ für alle Komponenten mit dieser Eigenschaft abgefragt wird.  

```
SELECT
  (SELECT VALUE (value.doubleValue) FROM payload.values) AS windspeed
FROM
  '$aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/+/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE' 
WHERE
  type = 'PropertyValueUpdate'
```
Die vorherige Anweisung zur Regelabfrage gibt Daten im folgenden Format aus.  

```
{
  "windspeed": [
    26.32020195042838,
    26.282584572975477,
    26.352566977372508,
    26.283084346171442,
    26.571883739599322,
    26.60684140743005,
    26.628738636715045,
    26.273486932802125,
    26.436379105473964,
    26.600590095377303
  ]
}
```

**Example Beispielabfrage zum Extrahieren eines einzelnen Wertes**  
Die folgende Anweisung veranschaulicht, wie der erste Wert aus dem Array von Eigenschaftswerten für eine bestimmte Eigenschaft vom doppelten Typ für alle Komponenten mit dieser Eigenschaft abgefragt wird.  

```
SELECT
  get((SELECT VALUE (value.doubleValue) FROM payload.values), 0) AS windspeed
FROM
  '$aws/sitewise/asset-models/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE/assets/+/properties/a1b2c3d4-5678-90ab-cdef-33333EXAMPLE' 
WHERE
  type = 'PropertyValueUpdate'
```

Die vorherige Anweisung zur Regelabfrage gibt Daten im folgenden Format aus.

```
{
  "windspeed": 26.32020195042838
}
```

**Wichtig**  
Diese Regelabfrageanweisung ignoriert Wertaktualisierungen, abgesehen vom ersten in jedem Stapel. Jeder Stapel kann bis zu 10 Werte enthalten. Wenn Sie die verbleibenden Werte einschließen müssen, ist es erforderlich, eine komplexere Lösung einzurichten, um Eigenschaftswerte der Komponenten an andere Services auszugeben. Sie können beispielsweise eine Regel mit einer AWS Lambda Aktion einrichten, um jeden Wert im Array erneut in einem anderen Thema zu veröffentlichen, und eine weitere Regel einrichten, um dieses Thema abzufragen und jeden Wert in der gewünschten Regelaktion zu veröffentlichen.