共用方式為


使用者定義函式客戶端函式庫參考

這很重要

已發行新版本的 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"
}

後續步驟