User-defined functions client library reference
Important
A new version of the Azure Digital Twins service has been released. In light of the new service's expanded capabilities, the original Azure Digital Twins service (described in this documentation set) has been retired.
To view the documentation for the new service, visit the active Azure Digital Twins Documentation.
This document provides reference information for the Azure Digital Twins user-defined functions client library.
Helper methods
The client library defines helper methods for commonly used operations.
getSpaceMetadata(id) ⇒ space
Given a space identifier, this function retrieves the space from the graph.
Kind: global function
Parameter | Type | Description |
---|---|---|
id | guid |
Space identifier |
getSensorMetadata(id) ⇒ sensor
Given a sensor identifier, this function retrieves the sensor from the graph.
Kind: global function
Parameter | Type | Description |
---|---|---|
id | guid |
Sensor identifier |
getDeviceMetadata(id) ⇒ device
Given a device identifier, this function retrieves the device from the graph.
Kind: global function
Parameter | Type | Description |
---|---|---|
id | guid |
Device identifier |
getSensorValue(sensorId, dataType) ⇒ value
Given a sensor identifier and its data type, this function retrieves the current value for that sensor.
Kind: global function
Parameter | Type | Description |
---|---|---|
sensorId | guid |
Sensor identifier |
dataType | string |
Sensor data type |
getSpaceValue(spaceId, valueName) ⇒ value
Given a space identifier and the value name, this function retrieves the current value for that space property.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
valueName | string |
Space property name |
getSensorHistoryValues(sensorId, dataType) ⇒ value[]
Given a sensor identifier and its data type, this function retrieves the historical values for that sensor.
Kind: global function
Parameter | Type | Description |
---|---|---|
sensorId | guid |
Sensor identifier |
dataType | string |
Sensor data type |
getSpaceHistoryValues(spaceId, dataType) ⇒ value[]
Given a space identifier and the value name, this function retrieves the historical values for that property on the space.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
valueName | string |
Space property name |
getSpaceChildSpaces(spaceId) ⇒ space[]
Given a space identifier, this function retrieves the child spaces for that parent space.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
getSpaceChildSensors(spaceId) ⇒ sensor[]
Given a space identifier, this function retrieves the child sensors for that parent space.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
getSpaceChildDevices(spaceId) ⇒ device[]
Given a space identifier, this function retrieves the child devices for that parent space.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
getDeviceChildSensors(deviceId) ⇒ sensor[]
Given a device identifier, this function retrieves the child sensors for that parent device.
Kind: global function
Parameter | Type | Description |
---|---|---|
deviceId | guid |
Device identifier |
getSpaceParentSpace(childSpaceId) ⇒ space
Given a space identifier, this function retrieves its parent space.
Kind: global function
Parameter | Type | Description |
---|---|---|
childSpaceId | guid |
Space identifier |
getSensorParentSpace(childSensorId) ⇒ space
Given a sensor identifier, this function retrieves its parent space.
Kind: global function
Parameter | Type | Description |
---|---|---|
childSensorId | guid |
Sensor identifier |
getDeviceParentSpace(childDeviceId) ⇒ space
Given a device identifier, this function retrieves its parent space.
Kind: global function
Parameter | Type | Description |
---|---|---|
childDeviceId | guid |
Device identifier |
getSensorParentDevice(childSensorId) ⇒ space
Given a sensor identifier, this function retrieves its parent device.
Kind: global function
Parameter | Type | Description |
---|---|---|
childSensorId | guid |
Sensor identifier |
getSpaceExtendedProperty(spaceId, propertyName) ⇒ extendedProperty
Given a space identifier, this function retrieves the property and its value from the space.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
propertyName | string |
Space property name |
getSensorExtendedProperty(sensorId, propertyName) ⇒ extendedProperty
Given a sensor identifier, this function retrieves the property and its value from the sensor.
Kind: global function
Parameter | Type | Description |
---|---|---|
sensorId | guid |
Sensor identifier |
propertyName | string |
Sensor property name |
getDeviceExtendedProperty(deviceId, propertyName) ⇒ extendedProperty
Given a device identifier, this function retrieves the property and its value from the device.
Kind: global function
Parameter | Type | Description |
---|---|---|
deviceId | guid |
Device identifier |
propertyName | string |
Device property name |
setSensorValue(sensorId, dataType, value)
This function sets a value on the sensor object with the given data type.
Kind: global function
Parameter | Type | Description |
---|---|---|
sensorId | guid |
Sensor identifier |
dataType | string |
Sensor data type |
value | string |
Value |
setSpaceValue(spaceId, dataType, value)
This function sets a value on the space object with the given data type.
Kind: global function
Parameter | Type | Description |
---|---|---|
spaceId | guid |
Space identifier |
dataType | string |
Data type |
value | string |
Value |
log(message)
This function logs the following message within the user-defined function.
Kind: global function
Parameter | Type | Description |
---|---|---|
message | string |
Message to be logged |
sendNotification(topologyObjectId, topologyObjectType, payload)
This function sends a custom notification out to be dispatched.
Kind: global function
Parameter | Type | Description |
---|---|---|
topologyObjectId | guid |
Graph object identifier. Examples are space, sensor, and device ID. |
topologyObjectType | string |
Examples are sensor and device. |
payload | string |
The JSON payload to be sent with the notification. |
Return types
The response models returned from client reference helper methods are described below.
Space
{
"id": "00000000-0000-0000-0000-000000000000",
"name": "Space",
"friendlyName": "Conference Room",
"typeId": 0,
"parentSpaceId": "00000000-0000-0000-0000-000000000001",
"subtypeId": 0
}
Space methods
Parent() ⇒ space
This function returns the parent space of the current space.
ChildSensors() ⇒ sensor[]
This function returns the child sensors of the current space.
ChildDevices() ⇒ device[]
This function returns the child devices of the current space.
ExtendedProperty(propertyName) ⇒ extendedProperty
This function returns the extended property and its value for the current space.
Parameter | Type | Description |
---|---|---|
propertyName | string |
Name of the extended property |
Value(valueName) ⇒ value
This function returns the value of the current space.
Parameter | Type | Description |
---|---|---|
valueName | string |
Name of the value |
History(valueName) ⇒ value[]
This function returns the historical values of the current space.
Parameter | Type | Description |
---|---|---|
valueName | string |
Name of the value |
Notify(payload)
This function sends a notification with the specified payload.
Parameter | Type | Description |
---|---|---|
payload | string |
JSON payload to include in the notification |
Device
{
"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"
}
Device methods
Parent() ⇒ space
This function returns the parent space of the current device.
ChildSensors() ⇒ sensor[]
This function returns the child sensors of the current device.
ExtendedProperty(propertyName) ⇒ extendedProperty
This function returns the extended property and its value for the current device.
Parameter | Type | Description |
---|---|---|
propertyName | string |
Name of the extended property |
Notify(payload)
This function sends a notification with the specified payload.
Parameter | Type | Description |
---|---|---|
payload | string |
JSON payload to include in the notification |
Sensor
{
"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
}
Sensor methods
Space() ⇒ space
This function returns the parent space of the current sensor.
Device() ⇒ device
This function returns the parent device of the current sensor.
ExtendedProperty(propertyName) ⇒ extendedProperty
This function returns the extended property and its value for the current sensor.
Parameter | Type | Description |
---|---|---|
propertyName | string |
Name of the extended property |
Value() ⇒ value
This function returns the value of the current sensor.
History() ⇒ value[]
This function returns the historical values of the current sensor.
Notify(payload)
This function sends a notification with the specified payload.
Parameter | Type | Description |
---|---|---|
payload | string |
JSON payload to include in the notification |
Value
{
"dataType": "Temperature",
"value": "70",
"createdTime": ""
}
Extended property
{
"name": "OccupancyStatus",
"value": "Occupied"
}
Next steps
Learn about Azure Digital Twins user-defined functions.