Sdílet prostřednictvím


Oznámení událostí

Tento článek se zabývá oznámeními událostí generovanými službou Azure Digital Twins, jejich strukturou a podrobnostmi o různých typech, které je možné vygenerovat.

Různé události ve službě Azure Digital Twins vytvářejí oznámení, která umožňují back-endu řešení vědět, kdy dochází k různým akcím. Tato oznámení se pak směrují do různých umístění uvnitř a mimo službu Azure Digital Twins, která můžou tyto informace použít k provedení akce.

Existuje několik typů oznámení, která se dají vygenerovat, a zprávy s oznámeními můžou vypadat jinak v závislosti na tom, jaký typ události je vygeneroval. Tento článek obsahuje podrobné informace o různých typech zpráv a o tom, jak můžou vypadat.

Tento graf zobrazuje různé typy oznámení:

Typ oznámení Název zdroje směrování Vygenerováno z...
Oznámení o změně digitálního dvojčete Oznámení o změně digitálního dvojčete jakákoli změna vlastnosti digitálního dvojčete
Oznámení o životním cyklu digitálního dvojčete Oznámení o životním cyklu digitálního dvojčete jakákoli operace vytvoření nebo odstranění digitálního dvojčete
Oznámení o změně vztahu digitálního dvojčete Oznámení o změně vztahu digitálního dvojčete jakákoli změna vztahu digitálního dvojčete
Zprávy telemetrie digitálního dvojčete Zprávy telemetrie libovolná telemetrická zpráva

Struktura oznámení

Struktura oznámení události ze služby Azure Digital Twins závisí na cíli oznámení.

Oznámení odeslaná do event Gridu odpovídají jednomu z následujících formátů (závisí na nastavení Event Gridu):

Oznámení odesílaná do služby Event Hubs a Service Bus odpovídají vazbě protokolu AMQP pro CloudEvents.

Oznámení o změnách digitálních dvojčat

Oznámení o změnách digitálních dvojčat se aktivují při aktualizaci digitálního dvojčete, například:

  • Když se změní hodnoty vlastností nebo metadata.
  • Když se změní metadata digitálního dvojčete nebo komponent. Příkladem tohoto scénáře je změna modelu digitálního dvojčete.

Vlastnosti

Tady jsou pole v textu oznámení o změně digitálního dvojčete.

Jméno Hodnota
id Identifikátor oznámení, jako je UUID nebo čítač udržovaný službou. source + id je jedinečná pro každou jedinečnou událost.
source Název služby IoT Hub nebo instance Služby Azure Digital Twins, například myhub.azure-devices.net nebo mydigitaltwins.westus2.azuredigitaltwins.net
data Dokument opravy JSON popisující aktualizaci provedené dvojčetem. Podrobnosti najdete níže v podrobnostech textu .
specversion 1.0
Zpráva odpovídá této verzi specifikace CloudEvents.
type Microsoft.DigitalTwins.Twin.Update
datacontenttype application/json
subject ID digitálního dvojčete
time Časové razítko, kdy k operaci došlo u digitálního dvojčete
traceparent Kontext trasování W3C pro událost

Podrobnosti textu

Uvnitř zprávy data obsahuje pole dokument JSON Patch obsahující aktualizaci digitálního dvojčete.

Níže jsou uvedeny příklady tohoto typu zprávy pro každé možné schéma oznámení.

{
    "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>"
}

Poznámka:

Azure Digital Twins v současné době nepodporuje filtrování událostí na základě polí v rámci pole. To zahrnuje filtrování vlastností v patch části oznámení o změně digitálního dvojčete.

Oznámení o životním cyklu digitálního dvojčete

Ať už digitální dvojčata představují zařízení IoT Hubu ve službě Azure Digital Twins , nebo ne, budou posílat všechna oznámení. Dělají to kvůli oznámením o životním cyklu, která se týkají samotného digitálního dvojčete.

Oznámení o životním cyklu se aktivují v následujících případech:

  • Vytvoří se digitální dvojče.
  • Digitální dvojče se odstraní.

Vlastnosti

Tady jsou pole v textu oznámení životního cyklu.

Jméno Hodnota
id Identifikátor oznámení, jako je UUID nebo čítač udržovaný službou. source + id je jedinečný pro každou jedinečnou událost.
source Název služby IoT Hub nebo instance Služby Azure Digital Twins, například myhub.azure-devices.net nebo mydigitaltwins.westus2.azuredigitaltwins.net
data Data dvojčete, u kterých dochází k události životního cyklu. Podrobnosti najdete níže v podrobnostech textu .
specversion 1.0
Zpráva odpovídá této verzi specifikace CloudEvents.
type Microsoft.DigitalTwins.Twin.Create
Microsoft.DigitalTwins.Twin.Delete
datacontenttype application/json
subject ID digitálního dvojčete
time Časové razítko, kdy došlo k operaci ve dvojčeti
traceparent Kontext trasování W3C pro událost

Podrobnosti textu

Níže jsou uvedeny příklady tohoto typu zprávy pro každé možné schéma oznámení.

{
    "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>"
}

Oznámení o změně vztahu digitálního dvojčete

Oznámení o změnách relací se aktivují, když se vytvoří, aktualizuje nebo odstraní jakýkoli vztah digitálního dvojčete.

Vlastnosti

Tady jsou pole v textu oznámení o změně relace.

Jméno Hodnota
id Identifikátor oznámení, jako je UUID nebo čítač udržovaný službou. source + id je jedinečná pro každou jedinečnou událost.
source Název instance Azure Digital Twins, například mydigitaltwins.westus2.azuredigitaltwins.net
data Datová část relace, která byla změněna. Podrobnosti najdete níže v podrobnostech textu .
specversion 1.0
Zpráva odpovídá této verzi specifikace CloudEvents.
type Microsoft.DigitalTwins.Relationship.Create
Microsoft.DigitalTwins.Relationship.Update
Microsoft.DigitalTwins.Relationship.Delete
datacontenttype application/json
subject ID relace, například <twin-ID>/relationships/<relationshipID>
time Časové razítko, kdy došlo k operaci v relaci
traceparent Kontext trasování W3C pro událost

Podrobnosti textu

Ve zprávě data pole obsahuje datovou část relace ve formátu JSON. Používá stejný formát jako GET požadavek na relaci prostřednictvím rozhraní DigitalTwins API.

Níže jsou uvedeny příklady tohoto typu zprávy pro každé možné schéma oznámení.

{
    "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>"
}

Zprávy telemetrie digitálního dvojčete

Digitální dvojčata můžou pomocí rozhraní API SendTelemetry generovat zprávy telemetrie a odesílat je do koncových bodů výchozího přenosu dat.

Vlastnosti

Tady jsou pole v textu zprávy telemetrie.

Jméno Hodnota
id Identifikátor oznámení, které poskytuje zákazník při volání rozhraní API telemetrie.
source Plně kvalifikovaný název dvojčete, ze kterého byla událost telemetrie odeslána. Používá následující formát: <your-Digital-Twin-instance>.api.<your-region>.digitaltwins.azure.net/<twin-ID>.
specversion 1.0
Zpráva odpovídá této verzi specifikace CloudEvents.
type microsoft.iot.telemetry
data Zpráva telemetrie odesílaná z dvojčete. Datová část nemusí odpovídat žádnému schématu definovanému v instanci služby Azure Digital Twins.
dataschema Schéma dat je ID modelu dvojčete nebo komponenty, která generuje telemetrii. Například dtmi:example:com:floor4;2.
datacontenttype application/json
traceparent Kontext trasování W3C pro událost.

Podrobnosti textu

Tělo obsahuje měření telemetrie spolu s některými kontextovými informacemi o dvojčeti. Níže jsou uvedeny příklady tohoto typu zprávy pro každé možné schéma oznámení.

{
    "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>"
}

Další kroky

Seznamte se s doručováním událostí do různých cílů pomocí koncových bodů a tras: