Gerät
Das Geräteobjekt repräsentiert ein in der Plattform installiertes Gerät. Bestimmte Skripte, wie z. B. LoRaWAN- oder MQTT-Datenkonvertierungsskripte, erhalten ein Geräteobjekt als Parameter, das das Gerät repräsentiert, für das die Daten bestimmt sind. In Skripten, die aus Aktionen ausgeführt werden, ist es möglich, über die Eigenschaft devices der globalen Variablen auf die Liste der Geräte zuzugreifen env, die die Ausführungsumgebung repräsentiert.
Eigenschaften
address (string) Die Eigenschaft address repräsentiert die Adresse des Geräts als Text.
Beispiele
Dieses Beispiel zeigt die Adresse eines Geräts in der Log-Konsole.
env.log('Device address: ', myDevice.address);endpoints (endpoint collection) Die Eigenschaft endpoints repräsentiert die Liste der im Gerät enthaltenen Endpunkte. Diese Liste ist ein Objekt vom Typ endpoint collection.
Beispiele
Dieses Beispiel zeigt die Anzahl der Endpunkte eines Geräts in der Log-Konsole.
env.log('Endpoint count: ', myDevice.endpoints.count);description (string) Die Eigenschaft description repräsentiert die Beschreibung des Geräts.
Beispiele
Dieses Beispiel zeigt die Beschreibung eines Geräts in der Log-Konsole.
env.log('Device description: ', myDevice.description);Methoden
updateDeviceBattery(battery) Die Methode updateDeviceBattery() ermöglicht die Aktualisierung des Batteriestatus des Geräts, auch für Geräte, die mehr als eine Batterie enthalten (z. B. Haupt- und Backup-Batterie).
Parameter
- battery (battery status-Objekt oder Array von battery status-Objekten): Dieser Parameter gibt den Batteriestatus an. Wenn das Gerät eine einzelne Batterie enthält, sollte ein battery status-Objekt übergeben werden. Wenn das Gerät mehr als eine Batterie enthält, sollte ein Array von battery status-Objekten übergeben werden, das den Status aller Batterien enthält. Für jedes als Parameter übergebene Objekt sollte mindestens die Eigenschaft percentage (wenn der Ladeprozentsatz verfügbar ist) oder die Eigenschaft voltage (wenn die Spannung verfügbar ist) oder beides angegeben werden. Wenn die Eigenschaft type weggelassen wird, wird der Typ batteryType.default angenommen. Bei der Meldung des Status mehrerer Batterien ist es obligatorisch, die Eigenschaft type für jede einzelne anzugeben.
Beispiel 1
Dieses Beispiel zeigt, wie ein Batteriestand von 45 % bei einem Gerät mit einer einzelnen Batterie gemeldet wird.
myDevice.updateDeviceBattery({ percentage: 45 });Beispiel 2
Dieses Beispiel zeigt, wie ein Batteriestand von 72 % für die Hauptbatterie und 68 % für die Sekundärbatterie bei einem Gerät gemeldet wird, das sowohl Haupt- als auch Sekundärbatterien besitzt.
myDevice.updateDeviceBattery
(
[
{ type: batteryType.primary, percentage: 72 },
{ type: batteryType.secondary, percentage: 68}
]
);Beispiel 3
Dieses Beispiel zeigt, wie ein Batteriestand von 2,92 Volt bei einem Gerät mit einer einzelnen Batterie gemeldet wird, das die Spannung anstelle des verbleibenden Ladeprozentsatzes meldet.
myDevice.updateDeviceBattery({ voltage: 2.92 });updateDeviceFirmwareVersion(version) Die Methode updateDeviceFirmwareVersion() ermöglicht die Angabe der aktuell auf dem Gerät installierten Firmware-Version.
Parameter
- version (string): Dieser Parameter gibt die aktuelle Firmware-Version des Geräts an, wobei eines der folgenden Formate verwendet wird:
- "X", wobei X eine Zahl zwischen 0 und 65535 ist.
- "X.Y", wobei X und Y Zahlen zwischen 0 und 65535 sind.
- "X.Y.Z", wobei X, Y und Z Zahlen zwischen 0 und 65535 sind.
- "X.Y.Z.W", wobei X, Y, Z und W Zahlen zwischen 0 und 65535 sind.
Weitere Informationen zu Versionsnummern finden Sie auf dieser Seite.
Beispiel 1
Dieses Beispiel zeigt, wie angegeben wird, dass ein Gerät die Firmware-Version "1.2.3" besitzt.
myDevice.updateDeviceFirmwareVersion("1.2.3");updateDeviceRssi(rssi) Die Methode updateDeviceRssi() ermöglicht die Aktualisierung des Signalpegels (RSSI) des Geräts, auch für Geräte, die mehrere drahtlose Kommunikationsschnittstellen enthalten.
Parameter
- rssi (rssi status-Objekt oder Array von rssi status-Objekten): Dieser Parameter gibt den Signalpegel an. Wenn das Gerät eine einzelne drahtlose Schnittstelle enthält, sollte ein rssi status-Objekt übergeben werden. Wenn das Gerät mehr als eine drahtlose Schnittstelle enthält (z. B. Mobilfunk und WLAN), sollte ein Array von rssi status-Objekten übergeben werden, das den Signalpegel jeder Schnittstelle enthält. Für jedes als Parameter übergebene Objekt sollte mindestens die Eigenschaft quality (wenn der Signalprozentsatz verfügbar ist) oder die Eigenschaft strength (wenn der Dämpfungspegel verfügbar ist) oder beides angegeben werden. Wenn die Eigenschaft type weggelassen wird, wird der Typ rssiType.default angenommen. Bei der Meldung des Status mehrerer Schnittstellen ist es obligatorisch, die Eigenschaft type für jede einzelne anzugeben.
Beispiel 1
Dieses Beispiel zeigt, wie ein Signalpegel von 68 % bei einem Gerät mit einer einzelnen Kommunikationsschnittstelle gemeldet wird.
myDevice.updateDeviceRssi({ quality: 68 });Beispiel 2
Dieses Beispiel zeigt, wie ein Signalpegel von 72 % für die Mobilfunkschnittstelle und 68 % für die WLAN-Schnittstelle bei einem Gerät gemeldet wird, das beide Schnittstellentypen besitzt.
myDevice.updateDeviceRssi
(
[
{ type: rssiType.cellular, quality: 72 },
{ type: rssiType.wiFi, quality: 68 }
]
);Beispiel 3
Dieses Beispiel zeigt, wie ein Signalpegel mit einer Dämpfung von -68 dBm bei einem Gerät mit einer einzelnen Kommunikationsschnittstelle gemeldet wird.
myDevice.updateDeviceRssi({ strength: -68 });updateDeviceGeolocation(latitude, longitude) Die Methode updateDeviceGeolocation() ermöglicht die Angabe des Standorts des Geräts unter Angabe von Breiten- und Längengrad.
Parameter
- latitude (double): indicates the latitude of the device's current location.
- longitude (double): indicates the longitude of the device's current location.
Beispiel 1
Dieses Beispiel zeigt, wie angegeben wird, dass sich ein Gerät an den Koordinaten (40.4052, -3.87699) befindet.
myDevice.updateDeviceGeolocation(40.4052, -3.87699);Environment
Environment ist ein globales Objekt, das in allen Skripten immer verfügbar ist. Es enthält einige grundlegende Funktionen, die im Folgenden detailliert beschrieben werden. Um auf das globale Environment-Objekt zuzugreifen...
Endpunkt-Sammlung
Das Endpunkt-Sammlungsobjekt repräsentiert eine Sammlung von Endpunkten, die in einem Gerät enthalten sind. Typischerweise wird auf die Liste der Endpunkte über die Eigenschaft endpoints zugegriffen...