Manual
Hinweis: wenn die Abfrage erfolgreich war (d.h. kein Fehler aufgetreten ist),
aber im gegebeben Zeitintervall keine Messwerte zur Verfügung stehen, wird
hier ein Wert von 0 ausgegeben.
e) Die resultsTable auslesen –
dataStore.queryResultsTable.queryResultsEntry.rowMeasureT
ime.x enthält den UTC Zeitstempel zu den Messwerten die in
dataStore.queryResultsTable.queryResultsEntry.rowValues.x
.ausgegeben werden.
f) Die Abfrage (d.h. die Parameter und das Ergebnis) durch Schreiben eines
Werted 7 (done) auf dataStore.queryCommandAndStatus.0
zurücksetzen.
rowValues ist ein OctetString und enthält einen 32bit Wert (mit oder ohne Vorzeichen
– abhängig vom zugeordneten Sensor-OID) für jeden Sensor-OID der in der
historySensorOidTable konfiguriert ist – in der selben Reihenfolge wie die Sensor-
OID in der Tabelle.
Sollen Daten über einen längeren Zeitraum und/oder einem anderen „Abfrage-
Intervall" (größer als das Speicher-Intervall von 1 Minute) abgerufen werden, kann
dies durch folgenden erweiterten Ablauf bewerkstelligt werden:
a) Die historySensorTable auslesen (d.h. die Anzahl der Einträge für die
historySensorTable via dataStore.numHistorySensorEntries.0, und
dann die entsprechende Anzahl von Einträgen aus der Tabelle).
Die Messwerte dieser OIDs werden in der resultsTable in derselben
Reihenfolge ausgegeben!
b) Den gewünschten Wert für das Abfrage-Intervall (wenn die Daten über ein
Intervall > 1 Minute aggegriert werden sollen) an den OID
dataStore.reportingInterval.0 schreiben. Gültige Werte sind:
1, 2, 3, 4, 5, 6, 8, 10, 12, 15, 20, 30 oder 60 Minuten.
c) Den gewünschten Start-Zeitpunkt an den OID
dataStore.queryStartTime.0 schreiben. Das LCom speichert max. 1
Jahr an Messwerten – d.h. der Zeitpunkt darf nicht mehr als 1 Jahr in der
Vergangenheit liegen!
d) Die Abfrage durch Schreiben des Wertes "2" (runQuery) an den OID
dataStore.queryCommandAndStatus.0 starten.
LCom
Seite 77 von 159