Skip to content

Commit 2e233be

Browse files
authored
Merge pull request #206230 from dominicbetts/central-reserved
IoT Central: device payload claifications
2 parents 57ee382 + 2a53754 commit 2e233be

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

articles/iot-central/core/concepts-telemetry-properties-commands.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ A device template in Azure IoT Central is a blueprint that defines the:
2222

2323
This article describes the JSON payloads that devices send and receive for telemetry, properties, and commands defined in a device template.
2424

25+
> [!IMPORTANT]
26+
> IoT Central expects to receive UTF-8 encoded JSON data.
27+
2528
The article doesn't describe every possible type of telemetry, property, and command payload, but the examples illustrate all the key types.
2629

2730
Each example shows a snippet from the device model that defines the type and example JSON payloads to illustrate how the device should interact with the IoT Central application.
@@ -47,6 +50,18 @@ IoT Central lets you view the raw data that a device sends to an application. Th
4750

4851
## Telemetry
4952

53+
To learn more about the DTDL telemetry naming rules, see [DTDL > Telemetry](https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/v2/dtdlv2.md#telemetry). You can't start a telemetry name using the `_` character.
54+
55+
Don't create telemetry types with the following names. IoT Central uses these reserved names internally. If you try to use these names, IoT Central will ignore your data:
56+
57+
* `EventEnqueuedUtcTime`
58+
* `EventProcessedUtcTime`
59+
* `PartitionId`
60+
* `EventHub`
61+
* `User`
62+
* `$metadata`
63+
* `$version`
64+
5065
### Telemetry in components
5166

5267
If the telemetry is defined in a component, add a custom message property called `$.sub` with the name of the component as defined in the device model. To learn more, see [Tutorial: Create and connect a client application to your Azure IoT Central application](tutorial-connect-device.md).
@@ -436,6 +451,8 @@ A device client should send the state as JSON that looks like the following exam
436451

437452
## Properties
438453

454+
To learn more about the DTDL property naming rules, see [DTDL > Property](https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/v2/dtdlv2.md#property). You can't start a property name using the `_` character.
455+
439456
> [!NOTE]
440457
> The payload formats for properties applies to applications created on or after 07/14/2020.
441458
@@ -869,6 +886,8 @@ The device should send the following JSON payload to IoT Central after it proces
869886

870887
## Commands
871888

889+
To learn more about the DTDL command naming rules, see [DTDL > Command](https://github.com/Azure/opendigitaltwins-dtdl/blob/master/DTDL/v2/dtdlv2.md#command). You can't start a command name using the `_` character.
890+
872891
If the command is defined in a component, the name of the command the device receives includes the component name. For example, if the command is called `getMaxMinReport` and the component is called `thermostat2`, the device receives a request to execute a command called `thermostat2*getMaxMinReport`.
873892

874893
The following snippet from a device model shows the definition of a command that has no parameters and that doesn't expect the device to return anything:

0 commit comments

Comments
 (0)