使用者定義函式客戶端函式庫參考
這很重要
已發行新版本的 Azure Digital Twins 服務。 鑒於新服務的擴充功能,原始的 Azure Digital Twins 服務(本檔集所述)已淘汰。
若要查看新服務的文件,請造訪最新的 Azure Digital Twins 文件。
本檔提供 Azure Digital Twins 使用者定義函式用戶端連結庫的參考資訊。
Helper 方法集
用戶端連結庫會定義常用作業的協助程式方法。
getSpaceMetadata(id) ⇒ space
指定空間標識碼時,此函式會從圖形擷取空間。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
識別碼 | guid |
空間標識碼 |
getSensorMetadata(id) ⇒ sensor
指定感測器標識碼,此函式會從圖形擷取感測器。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
識別碼 | guid |
感測器標識碼 |
getDeviceMetadata(id) ⇒ device
指定裝置標識碼,此函式會從圖形擷取裝置。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
識別碼 | guid |
裝置標識碼 |
getSensorValue(sensorId, dataType) ⇒ value
指定感測器識別碼及其數據類型,此函式會擷取該感測器的目前值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
sensorId | guid |
感測器標識碼 |
dataType | string |
感測器數據類型 |
getSpaceValue(spaceId, valueName) ⇒ value
指定空間識別碼和值名稱,此函式會擷取該空格屬性的目前值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
值名稱 | string |
空間屬性名稱 |
getSensorHistoryValues(sensorId, dataType) ⇒ value[]
指定感測器識別碼及其數據類型,此函式會擷取該感測器的歷史值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
sensorId | guid |
感測器標識碼 |
dataType | string |
感測器數據類型 |
getSpaceHistoryValues(spaceId, dataType) ⇒ value[]
指定空間識別碼和值名稱,此函式會擷取空間上該屬性的歷史值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
valueName | string |
空間屬性名稱 |
getSpaceChildSpaces(spaceId) ⇒ space[]
給定空間標識碼,此函式會擷取該父空間的子空間。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
getSpaceChildSensors(spaceId) ⇒ sensor[]
指定空間標識碼,此函式會擷取該父空間的子感測器。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
getSpaceChildDevices(spaceId) ⇒ device[]
給定一個空間識別碼,此函式會擷取該父空間的子裝置。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
getDeviceChildSensors(deviceId) ⇒ sensor[]
指定裝置標識碼,此函式會擷取該父裝置的子感測器。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
deviceId | guid |
裝置標識碼 |
getSpaceParentSpace(childSpaceId) ⇒ space
給定空間標識符,此函式將擷取其父空間。
Kind:global 函式
參數 | 類型 | 說明 |
---|---|---|
childSpaceId | guid |
空間標識碼 |
getSensorParentSpace(childSensorId) ⇒ space
此函數透過指定的感測器識別碼檢索其父空間。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
子傳感器ID | guid |
感測器標識碼 |
getDeviceParentSpace(childDeviceId) ⇒ space
給定裝置識別碼,此函式會取用其父空間。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
子裝置ID | guid |
裝置標識碼 |
getSensorParentDevice(childSensorId) ⇒ space
指定感測器標識碼,此函式會擷取其父裝置。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
子感應器ID | guid |
感測器標識碼 |
getSpaceExtendedProperty(spaceId, propertyName) ⇒ extendedProperty
指定空間標識碼時,此函式會從空間擷取屬性及其值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
propertyName | string |
空間屬性名稱 |
getSensorExtendedProperty(sensorId, propertyName) ⇒ extendedProperty
指定感測器識別碼時,此函式會從感測器擷取屬性及其值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
sensorId | guid |
感測器標識碼 |
屬性名稱 | string |
感測器屬性名稱 |
getDeviceExtendedProperty(deviceId, propertyName) ⇒ extendedProperty
指定裝置識別碼時,此函式會從裝置擷取屬性及其值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
deviceId | guid |
裝置標識碼 |
propertyName | string |
裝置屬性名稱 |
setSensorValue(sensorId, dataType, value)
此函式會在具有指定數據類型的感測器對象上設定值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
sensorId | guid |
感測器標識碼 |
dataType | string |
感測器數據類型 |
value | string |
價值 |
setSpaceValue(spaceId, dataType, value)
此函式會在具有指定數據類型的空間物件上設定值。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
spaceId | guid |
空間標識碼 |
dataType | string |
數據類型 |
value | string |
價值 |
log(message)
此函式會在使用者定義函式中記錄下列訊息。
Kind:全域函式
參數 | 類型 | 說明 |
---|---|---|
訊息 | string |
要記錄的訊息 |
sendNotification(topologyObjectId, topologyObjectType, payload)
此函式會傳送要分派的自定義通知。
Kind: 全域函式
參數 | 類型 | 說明 |
---|---|---|
topologyObjectId | guid |
Graph 物件識別碼。 範例包括空間、感測器和裝置標識碼。 |
拓撲物件類型 | string |
範例包括感測器和裝置。 |
載荷 | string |
要與通知一起傳送的 JSON 承載。 |
傳回類型
從客戶端參考協助程式方法傳回的回應模型如下所述。
空間
{
"id": "00000000-0000-0000-0000-000000000000",
"name": "Space",
"friendlyName": "Conference Room",
"typeId": 0,
"parentSpaceId": "00000000-0000-0000-0000-000000000001",
"subtypeId": 0
}
空間方法
Parent() ⇒ space
此函式會傳回目前空間的父空間。
ChildSensors() ⇒ sensor[]
此函式會傳回目前空間的子感測器。
ChildDevices() ⇒ device[]
此函式會傳回目前空間的子裝置。
ExtendedProperty(propertyName) ⇒ extendedProperty
此函式會傳回目前空間的擴充屬性及其值。
參數 | 類型 | 說明 |
---|---|---|
propertyName | string |
擴充屬性的名稱 |
Value(valueName) ⇒ value
此函式會傳回目前空間的值。
參數 | 類型 | 說明 |
---|---|---|
valueName | string |
值的名稱 |
History(valueName) ⇒ value[]
此函式會傳回目前空間的歷史值。
參數 | 類型 | 說明 |
---|---|---|
valueName | string |
值的名稱 |
通知(payload)
此功能會傳送包含指定內容的通知。
參數 | 類型 | 說明 |
---|---|---|
載荷 | string |
要包含在通知中的 JSON 承載 |
裝置
{
"id": "00000000-0000-0000-0000-000000000002",
"name": "Device",
"friendlyName": "Temperature Sensing Device",
"description": "This device contains a sensor that captures temperature readings.",
"type": "None",
"subtype": "None",
"typeId": 0,
"subtypeId": 0,
"hardwareId": "ABC123",
"gatewayId": "ABC",
"spaceId": "00000000-0000-0000-0000-000000000000"
}
裝置方法
Parent() ⇒ space
此函式會傳回目前裝置的父空間。
ChildSensors() ⇒ sensor[]
此函式會傳回目前裝置的子感測器。
ExtendedProperty(propertyName) ⇒ extendedProperty
此函式會傳回目前裝置的擴充屬性及其值。
參數 | 類型 | 說明 |
---|---|---|
propertyName | string |
擴充屬性的名稱 |
通知(payload)
此函式會傳送具有指定承載的通知。
參數 | 類型 | 說明 |
---|---|---|
負載 | string |
要包含在通知中的 JSON 承載 |
感測器
{
"id": "00000000-0000-0000-0000-000000000003",
"port": "30",
"pollRate": 3600,
"dataType": "Temperature",
"dataSubtype": "None",
"type": "Classic",
"portType": "None",
"dataUnitType": "FahrenheitTemperature",
"spaceId": "00000000-0000-0000-0000-000000000000",
"deviceId": "00000000-0000-0000-0000-000000000001",
"portTypeId": 0,
"dataUnitTypeId": 0,
"dataTypeId": 0,
"dataSubtypeId": 0,
"typeId": 0
}
感測器方法
Space() ⇒ space
此函式會傳回目前感測器的父空間。
Device() ⇒ device
此函式會傳回目前感測器的父裝置。
ExtendedProperty(propertyName) ⇒ extendedProperty
此函式會傳回目前感測器的擴充屬性及其值。
參數 | 類型 | 說明 |
---|---|---|
propertyName | string |
擴充屬性的名稱 |
Value() ⇒ value
此函式會傳回目前感測器的值。
歷程記錄() ⇒ value[]
此函式會傳回目前感測器的歷史值。
通知(payload)
此函式會傳送包含指定資料的通知。
參數 | 類型 | 說明 |
---|---|---|
載荷 | string |
在通知中包含的 JSON 載荷 |
價值
{
"dataType": "Temperature",
"value": "70",
"createdTime": ""
}
擴展屬性
{
"name": "OccupancyStatus",
"value": "Occupied"
}
後續步驟
瞭解 Azure Digital Twins使用者定義函式。
瞭解 如何在建立使用者定義函式。
了解 如何除錯使用者定義函式。