Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel worden gebeurtenismeldingen behandeld die worden gegenereerd door Azure Digital Twins, hun structuur en details over de verschillende typen die kunnen worden gegenereerd.
Verschillende gebeurtenissen in Azure Digital Twins produceren meldingen, waardoor de back-end van de oplossing op de hoogte kan zijn wanneer er verschillende acties plaatsvinden. Deze meldingen worden vervolgens doorgestuurd naar verschillende locaties binnen en buiten Azure Digital Twins die deze informatie kunnen gebruiken om actie te ondernemen.
Er zijn verschillende typen meldingen die kunnen worden gegenereerd en meldingen kunnen er anders uitzien, afhankelijk van het type gebeurtenis dat ze hebben gegenereerd. In dit artikel vindt u meer informatie over verschillende typen berichten en hoe deze eruit kunnen zien.
In deze grafiek ziet u de verschillende meldingstypen:
Meldingstype | Naam van routeringsbron | Gegenereerd via... |
---|---|---|
Melding voor wijziging van digital twin | Melding voor wijziging van digital twin | elke wijziging van een digitaal tweelingmodel-eigenschap |
Melding van de levenscyclus van Digital Twin | Melding van de levenscyclus van Digital Twin | elke bewerking voor het maken of verwijderen van digitale tweelingen |
Melding voor wijziging van digitale tweelingrelatie | Melding voor wijziging van digitale tweelingrelatie | elke verandering in de digitale tweelingrelatie |
Digital Twin-telemetrieberichten | Telemetrieberichten | elk telemetriebericht |
Meldingsstructuur
De structuur van een gebeurtenismelding van Azure Digital Twins is afhankelijk van de bestemming van de melding.
Meldingen die naar Event Grid worden verzonden, voldoen aan een van de volgende indelingen (afhankelijk van de Event Grid-instellingen):
- Azure Event Grid-gebeurtenisschema
- HTTP-protocolbinding voor CloudEvents.
Meldingen die naar Event Hubs en Service Bus worden verzonden, voldoen aan de AMQP-protocolbinding voor CloudEvents.
Meldingen van wijzigingen in digitale tweelingen
Wijzigingsmeldingen van digitale tweelingen worden geactiveerd wanneer een digitale tweeling wordt bijgewerkt, zoals:
- Wanneer eigenschapswaarden of metagegevens worden gewijzigd.
- Wanneer de metadata van digitale tweelingen of componenten verandert. Een voorbeeld van dit scenario is het wijzigen van het model van een digitale dubbel.
Eigenschappen
Dit zijn de velden in de hoofdtekst van een melding voor een wijziging van een digitale dubbel.
Naam | Waarde |
---|---|
id |
Id van de melding, zoals een UUID of een teller die door de service wordt onderhouden.
source
+
id is uniek voor elke afzonderlijke gebeurtenis |
source |
Naam van de IoT-hub of het Azure Digital Twins-exemplaar, zoals myhub.azure-devices.net of mydigitaltwins.westus2.azuredigitaltwins.net |
data |
Een JSON Patch-document waarin de update voor de tweeling wordt beschreven. Zie de details van de hoofdtekst hieronder voor meer informatie. |
specversion |
1.0 Het bericht voldoet aan deze versie van de CloudEvents-specificatie. |
type |
Microsoft.DigitalTwins.Twin.Update |
datacontenttype |
application/json |
subject |
Id van de digitale dubbel |
time |
Tijdstempel voor wanneer de bewerking op de digitale dubbel heeft plaatsgevonden |
traceparent |
Een W3C-traceringscontext voor de gebeurtenis |
Lichaamsdetails
In het data
veld in het bericht bevindt zich een JSON Patch-document met de update voor de digitale tweeling.
Hieronder ziet u voorbeelden van dit berichttype voor elk mogelijk meldingsschema.
{
"id": "39d4abb9-e3ee-4ed5-ad17-2243a9784946",
"subject": "example-twin1",
"data": {
"data": {
"modelId": "dtmi:examplecom:interfaceName;1",
"patch": [
{
"value": "new name",
"path": "/room",
"op": "replace"
}
]
},
"contenttype": "application/json",
"traceparent": "00-2aa957558db348f387ef704b37631a1d-c28d665340fe5045-01"
},
"eventType": "Microsoft.DigitalTwins.Twin.Update",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-12-09T20:28:52.9795363Z",
"topic": "/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.EventGrid/topics/<topic-name>"
}
Opmerking
Azure Digital Twins biedt momenteel geen ondersteuning voor het filteren van gebeurtenissen op basis van velden in een matrix. Dit omvat filteren op eigenschappen in een patch
sectie van een wijzigingsmelding van digitale tweelingen.
Meldingen over de levenscyclus van digitale tweelingen
Of digitale tweelingen nu IoT Hub-apparaten in Azure Digital Twins vertegenwoordigen of niet, ze zullen allemaal meldingen verzenden. Ze doen dit vanwege de levenscyclusmeldingen, die betrekking hebben op de digitale tweeling zelf.
Meldingen over de levenscyclus worden geactiveerd wanneer:
- Er wordt een digitale dubbel gemaakt
- Een digitale dubbel wordt verwijderd
Eigenschappen
Dit zijn de velden in de hoofdtekst van een levenscyclusmelding.
Naam | Waarde |
---|---|
id |
Id van de melding, zoals een UUID of een teller die door de service wordt onderhouden.
source
+
id is uniek voor elke afzonderlijke gebeurtenis. |
source |
Naam van de IoT-hub of het Azure Digital Twins-exemplaar, zoals myhub.azure-devices.net of mydigitaltwins.westus2.azuredigitaltwins.net |
data |
De gegevens van de tweeling die de levenscyclusgebeurtenis ervaart. Zie de details van de hoofdtekst hieronder voor meer informatie. |
specversion |
1.0 Het bericht voldoet aan deze versie van de CloudEvents-specificatie. |
type |
Microsoft.DigitalTwins.Twin.Create Microsoft.DigitalTwins.Twin.Delete |
datacontenttype |
application/json |
subject |
Id van de digitale dubbel |
time |
Tijdstempel voor wanneer de bewerking op de tweeling heeft plaatsgevonden |
traceparent |
Een W3C-traceringscontext voor de gebeurtenis |
Lichaamsdetails
Hieronder ziet u voorbeelden van dit berichttype voor elk mogelijk meldingsschema.
{
"id": "6ccdb1cd-0dc3-450f-8730-ceccda8439be",
"subject": "example-twin1",
"data": {
"data": {
"$dtId": "example-twin1",
"$etag": "W/\"ecf81d6c-8c1a-4a95-afd8-13bd4cea436f\"",
"room": "room name",
"$metadata": {
"$model": "dtmi:examplecom:interfaceName;1",
"room": {
"lastUpdateTime": "2021-12-09T20:28:52.6651216Z"
}
}
},
"contenttype": "application/json",
"traceparent": "00-2aa957558db348f387ef704b37631a1d-51f716e7397ec64b-01"
},
"eventType": "Microsoft.DigitalTwins.Twin.Create",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-12-09T20:28:52.6745538Z",
"topic": "/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.EventGrid/topics/<topic-name>"
}
Wijzigingsmeldingen voor digitale tweelingrelaties
Meldingen over relatiewijzigingen worden geactiveerd wanneer een relatie van een digital twin wordt gemaakt, bijgewerkt of verwijderd.
Eigenschappen
Dit zijn de velden in de hoofdtekst van een melding voor relatiewijzigingen.
Naam | Waarde |
---|---|
id |
Id van de melding, zoals een UUID of een teller die door de service wordt onderhouden.
source
+
id is uniek voor elke afzonderlijke gebeurtenis |
source |
Naam van het Azure Digital Twins-exemplaar, zoals mydigitaltwins.westus2.azuredigitaltwins.net |
data |
De payload van de relatie die is gewijzigd. Zie de details van de hoofdtekst hieronder voor meer informatie. |
specversion |
1.0 Het bericht voldoet aan deze versie van de CloudEvents-specificatie. |
type |
Microsoft.DigitalTwins.Relationship.Create Microsoft.DigitalTwins.Relationship.Update Microsoft.DigitalTwins.Relationship.Delete |
datacontenttype |
application/json |
subject |
Id van de relatie, zoals <twin-ID>/relationships/<relationshipID> |
time |
Tijdstempel voor wanneer de bewerking op de relatie heeft plaatsgevonden |
traceparent |
Een W3C-traceringscontext voor de gebeurtenis |
Lichaamsdetails
In het bericht bevat het data
veld de inhoud van een relatie, in JSON-formaat. Het maakt gebruik van dezelfde indeling als een GET
aanvraag voor een relatie via de DigitalTwins-API.
Hieronder ziet u voorbeelden van dit berichttype voor elk mogelijk meldingsschema.
{
"id": "4d850574-0a28-4667-a59e-3b382ff0e74e",
"subject": "example-twin1/relationships/RuntimeEventsScenario_edge",
"data": {
"data": {
"modelId": "dtmi:examplecom:interfaceName;1",
"patch": [
{
"value": "new value",
"path": "/prop1",
"op": "replace"
}
]
},
"contenttype": "application/json",
"traceparent": "00-2aa957558db348f387ef704b37631a1d-c1fcf951f540ec44-01"
},
"eventType": "Microsoft.DigitalTwins.Relationship.Update",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-12-09T20:28:53.2016395Z",
"topic": "/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.EventGrid/topics/<topic-name>"
}
Telemetrieberichten van digitale dubbels
Digitale dubbels kunnen de SendTelemetry-API gebruiken om telemetrieberichten uit te geven en ze naar uitgaande eindpunten te sturen.
Eigenschappen
Dit zijn de velden in de hoofdtekst van een telemetriebericht.
Naam | Waarde |
---|---|
id |
Id van de melding, die door de klant wordt verstrekt bij het aanroepen van de telemetrie-API. |
source |
Volledig gekwalificeerde naam van de tweeling waaruit de telemetriegebeurtenis is verzonden. Maakt gebruik van de volgende indeling: <your-Digital-Twin-instance>.api.<your-region>.digitaltwins.azure.net/<twin-ID> . |
specversion |
1.0 Het bericht voldoet aan deze versie van de CloudEvents-specificatie. |
type |
microsoft.iot.telemetry |
data |
Het telemetriebericht dat van de tweeling wordt verzonden. De nettolading hoeft niet overeen te komen met een schema dat is gedefinieerd in uw Azure Digital Twins-exemplaar. |
dataschema |
Het gegevensschema is de model-id van de tweeling of het onderdeel dat de telemetrie verzendt. Bijvoorbeeld: dtmi:example:com:floor4;2 . |
datacontenttype |
application/json |
traceparent |
Een W3C-traceringscontext voor de gebeurtenis. |
Lichaamsdetails
De inhoud bevat de telemetriemeting, samen met enkele contextuele informatie over de digitale tweeling. Hieronder ziet u voorbeelden van dit berichttype voor elk mogelijk meldingsschema.
{
"id": "6f6635d8-f1b8-43ec-80fb-bb9453fc611c",
"subject": "example-twin1",
"data": {
"data": {
"prop": "hello from telemetry"
},
"dataschema": "dtmi:examplecom:interfaceName;1",
"contenttype": "application/json-patch+json; charset=utf-8",
"traceparent": "00-2aa957558db348f387ef704b37631a1d-e894098b46243743-01"
},
"eventType": "microsoft.iot.telemetry",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "0001-01-01T00:00:00Z",
"topic": "/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.EventGrid/topics/<topic-name>"
}
Volgende stappen
Meer informatie over het leveren van gebeurtenissen aan verschillende bestemmingen, met behulp van eindpunten en routes: