Aracılığıyla paylaş


Azure Digital Twins'de Egress ve uç noktalar

Önemli

Azure Digital Twins hizmetinin yeni bir sürümü yayınlandı. Yeni hizmetin genişletilmiş özellikleri ışığında özgün Azure Digital Twins hizmeti (bu belge kümesinde açıklanmıştır) kullanımdan kaldırılmıştır.

Yeni hizmetin belgelerini görüntülemek için etkin Azure Digital Twins Belgeleri'ni ziyaret edin.

Azure Digital Twins uç noktaları , kullanıcının Azure aboneliğindeki bir iletiyi veya olay aracısını temsil eder. Olaylar ve iletiler Azure Event Hubs, Azure Event Grid ve Azure Service Bus konu başlıklarına gönderilebilir.

Olaylar önceden tanımlanmış yönlendirme tercihlerine göre uç noktalara yönlendirilir. Kullanıcılar her uç noktanın hangi olay türlerini alabileceğini belirtir.

Olaylar, yönlendirme ve olay türleri hakkında daha fazla bilgi edinmek için Bkz. Azure Digital Twins'de olayları ve iletileri yönlendirme.

Ekinlikler

Olaylar, Azure ileti ve olay aracıları tarafından işlenmek üzere IoT nesneleri (cihazlar ve algılayıcılar gibi) tarafından gönderilir. Olaylar aşağıdaki Azure Event Grid olay şeması başvurusuyla tanımlanır.

{
  "id": "00000000-0000-0000-0000-000000000000",
  "subject": "ExtendedPropertyKey",
  "data": {
    "SpacesToNotify": [
      "3a16d146-ca39-49ee-b803-17a18a12ba36"
    ],
    "Id": "00000000-0000-0000-0000-000000000000",
      "Type": "ExtendedPropertyKey",
    "AccessType": "Create"
  },
  "eventType": "TopologyOperation",
  "eventTime": "2018-04-17T17:41:54.9400177Z",
  "dataVersion": "1",
  "metadataVersion": "1",
  "topic": "/subscriptions/YOUR_TOPIC_NAME"
}
Öznitelik Tür Description
kimlik string Olayın benzersiz tanımlayıcısı.
subject string Olay konusunun yayımcı tarafından tanımlanan yolu.
veriler object Kaynak sağlayıcısına özgü olay verileri.
eventType string Bu olay kaynağı için kayıtlı olay türlerinden biri.
eventTime string Sağlayıcının UTC saati temelinde olayın oluşturulduğu saat.
dataVersion string Veri nesnesinin şema sürümü. Şema sürümünü yayımcı tanımlar.
metadataVersion string Olay meta verilerinin şema sürümü. Event Grid en üst düzey özelliklerin şemasını tanımlar. Event Grid bu değeri sağlar.
konu başlığı string Olay kaynağının tam kaynak yolu. Bu alan yazılamaz. Event Grid bu değeri sağlar.

Event Grid olay şeması hakkında daha fazla bilgi için:

Olay türleri

Olay türleri, olayın doğasını sınıflandırır ve eventType alanında ayarlanır. Kullanılabilir olay türleri aşağıdaki listede verilmiştir:

  • TopolojiOperation
  • UdfCustom
  • SensorChange
  • Ara Çubuğu Değiştir
  • DeviceMessage

Her olay türü için olay biçimleri aşağıdaki alt bölümlerde daha ayrıntılı olarak açıklanmıştır.

TopolojiOperation

TopologyOperation grafik değişikliklerine uygulanır. subject özelliği, etkilenen nesnenin türünü belirtir. Aşağıdaki nesne türleri bu olayı tetikleyebilir:

  • Cihaz
  • DeviceBlobMetadata
  • DeviceExtendedProperty
  • ExtendedPropertyKey
  • ExtendedType
  • Depo -sunun
  • Rapor
  • RoleDefinition
  • Algılayıcı
  • SensorBlobMetadata
  • SensorExtendedProperty
  • Alan
  • SpaceBlobMetadata
  • SpaceExtendedProperty
  • SpaceResource
  • SpaceRoleAssignment
  • Sistem
  • Kullanıcı
  • UserBlobMetadata
  • UserExtendedProperty

Örnek

{
  "id": "00000000-0000-0000-0000-000000000000",
  "subject": "ExtendedPropertyKey",
  "data": {
    "SpacesToNotify": [
      "3a16d146-ca39-49ee-b803-17a18a12ba36"
    ],
    "Id": "00000000-0000-0000-0000-000000000000",
      "Type": "ExtendedPropertyKey",
    "AccessType": "Create"
  },
  "eventType": "TopologyOperation",
  "eventTime": "2018-04-17T17:41:54.9400177Z",
  "dataVersion": "1",
  "metadataVersion": "1",
  "topic": "/subscriptions/YOUR_TOPIC_NAME"
}
Değer Şununla değiştir
YOUR_TOPIC_NAME Özelleştirilmiş konunuzun adı

UdfCustom

UdfCustom , kullanıcı tanımlı bir işlev (UDF) tarafından gönderilen bir olaydır.

Önemli

Bu olay UDF'nin kendisinden açıkça gönderilmelidir.

Örnek

{
  "id": "568fd394-380b-46fa-925a-ebb96f658cce",
  "subject": "UdfCustom",
  "data": {
    "TopologyObjectId": "7c799bfc-1bff-4b9e-b15a-669933969d20",
    "ResourceType": "Space",
    "Payload": "\"Room is not available or air quality is poor\"",
    "CorrelationId": "568fd394-380b-46fa-925a-ebb96f658cce"
  },
  "eventType": "UdfCustom",
  "eventTime": "2018-10-02T06:50:15.198Z",
  "dataVersion": "1.0",
  "metadataVersion": "1",
  "topic": "/subscriptions/YOUR_TOPIC_NAME"
}
Değer Şununla değiştir
YOUR_TOPIC_NAME Özelleştirilmiş konunuzun adı

SensorChange

SensorChange , telemetri değişikliklerine göre algılayıcının durumuna yönelik bir güncelleştirmedir.

Örnek

{
  "id": "60bf5336-2929-45b4-bb4c-b45699dfe95f",
  "subject": "SensorChange",
  "data": {
    "Type": "Classic",
    "DataType": "Motion",
    "Id": "60bf5336-2929-45b4-bb4c-b45699dfe95f",
    "Value": "False",
    "PreviousValue": "True",
    "EventTimestamp": "2018-04-17T17:46:15.4964262Z",
    "MessageType": "sensor",
    "Properties": {
      "ms-client-request-id": "c9e576b7-5eea-4f61-8617-92a57add5179",
      "ms-activity-id": "ct22YwXEGJ5u.605.0"
    }
  },
  "eventType": "SensorChange",
  "eventTime": "2018-04-17T17:46:18.5452993Z",
  "dataVersion": "1",
  "metadataVersion": "1",
  "topic": "/subscriptions/YOUR_TOPIC_NAME"
}
Değer Şununla değiştir
YOUR_TOPIC_NAME Özelleştirilmiş konunuzun adı

Ara Çubuğu Değiştir

SpaceChange , telemetri değişikliklerine göre alanın durumuna yönelik bir güncelleştirmedir.

Örnek

{
  "id": "42522e10-b1aa-42ff-a5e7-7181788ffc4b",
  "subject": "SpaceChange",
  "data": {
    "Type": null,
    "DataType": "AvailableAndFresh",
    "Id": "7c799bfc-1bff-4b9e-b15a-669933969d20",
    "Value": "Room is not available or air quality is poor",
    "PreviousValue": null,
    "RawData": null,
    "transactionId": null,
    "EventTimestamp": null,
    "MessageType": null,
    "Properties": null,
    "CorrelationId": "42522e10-b1aa-42ff-a5e7-7181788ffc4b"
  },
  "eventType": "SpaceChange",
  "eventTime": "2018-10-02T06:50:20.128Z",
  "dataVersion": "1.0",
  "metadataVersion": "1",
  "topic": "/subscriptions/YOUR_TOPIC_NAME"
}
Değer Şununla değiştir
YOUR_TOPIC_NAME Özelleştirilmiş konunuzun adı

DeviceMessage

DeviceMessage'ı kullanarak ham telemetri olaylarının yanı sıra Azure Digital Twins'den yönlendirilebileceği bir EventHub bağlantısı belirtebilirsiniz.

Not

  • DeviceMessage yalnızca EventHub ile birleştirilebilir. DeviceMessage'i diğer olay türlerinden biriyle birleştiremezsiniz.
  • EventHub veya DeviceMessage türünün birleşiminden yalnızca bir uç nokta belirtebilirsiniz.

Uç noktaları yapılandırma

Uç nokta yönetimi, Uç Noktalar API'sini kullanır.

Aşağıdaki örneklerde Digital YOUR_MANAGEMENT_API_URL Twins API'lerinin URI'sine başvurur:

https://YOUR_INSTANCE_NAME.YOUR_LOCATION.azuresmartspaces.net/management/api/v1.0
Name Şununla değiştir
YOUR_INSTANCE_NAME Azure Digital Twins örneğinizin adı
YOUR_LOCATION Örneğinizin barındırılıyor olduğu bölge

Aşağıdaki örneklerde desteklenen uç noktaların nasıl yapılandırılır gösterilmektedir.

Önemli

eventTypes özniteliğine dikkat edin. Uç nokta tarafından hangi olay türlerinin işleneceğini tanımlar ve böylece yönlendirmesini belirler.

Kimliği doğrulanmış HTTP POST isteği:

YOUR_MANAGEMENT_API_URL/endpoints
  • SensorChange, SpaceChange ve TopologyOperation olay türlerini Service Bus yönlendirme:

    {
      "type": "ServiceBus",
      "eventTypes": [
        "SensorChange",
        "SpaceChange",
        "TopologyOperation"
      ],
      "connectionString": "Endpoint=sb://YOUR_NAMESPACE.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YOUR_PRIMARY_KEY",
      "secondaryConnectionString": "Endpoint=sb://YOUR_NAMESPACE.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YOUR_SECONDARY_KEY",
      "path": "YOUR_TOPIC_NAME"
    }
    
    Değer Şununla değiştir
    YOUR_NAMESPACE Uç noktanızın ad alanı
    YOUR_PRIMARY_KEY Kimlik doğrulaması için kullanılan birincil bağlantı dizesi
    YOUR_SECONDARY_KEY Kimlik doğrulaması için kullanılan ikincil bağlantı dizesi
    YOUR_TOPIC_NAME Özelleştirilmiş konunuzun adı
  • Event Grid olay türlerine yönlendirme SensorChange, SpaceChange ve TopologyOperation:

    {
      "type": "EventGrid",
      "eventTypes": [
        "SensorChange",
        "SpaceChange",
        "TopologyOperation"
      ],
      "connectionString": "YOUR_PRIMARY_KEY",
      "secondaryConnectionString": "YOUR_SECONDARY_KEY",
      "path": "YOUR_TOPIC_NAME.westus-1.eventgrid.azure.net"
    }
    
    Değer Şununla değiştir
    YOUR_PRIMARY_KEY Kimlik doğrulaması için kullanılan birincil bağlantı dizesi
    YOUR_SECONDARY_KEY Kimlik doğrulaması için kullanılan ikincil bağlantı dizesi
    YOUR_TOPIC_NAME Özelleştirilmiş konunuzun adı
  • Event Hubs olay türlerine yönlendirme SensorChange, SpaceChange ve TopologyOperation:

    {
      "type": "EventHub",
      "eventTypes": [
        "SensorChange",
        "SpaceChange",
        "TopologyOperation"
      ],
      "connectionString": "Endpoint=sb://YOUR_NAMESPACE.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YOUR_PRIMARY_KEY",
      "secondaryConnectionString": "Endpoint=sb://YOUR_NAMESPACE.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YOUR_SECONDARY_KEY",
      "path": "YOUR_EVENT_HUB_NAME"
    }
    
    Değer Şununla değiştir
    YOUR_NAMESPACE Uç noktanızın ad alanı
    YOUR_PRIMARY_KEY Kimlik doğrulaması için kullanılan birincil bağlantı dizesi
    YOUR_SECONDARY_KEY Kimlik doğrulaması için kullanılan ikincil bağlantı dizesi
    YOUR_EVENT_HUB_NAME Olay hub'ınızın adı
  • Event Hubs olay türü DeviceMessage'a yönlendirin. connectionString'e eklenmesi EntityPath zorunludur:

    {
      "type": "EventHub",
      "eventTypes": [
        "DeviceMessage"
      ],
      "connectionString": "Endpoint=sb://YOUR_NAMESPACE.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YOUR_PRIMARY_KEY;EntityPath=YOUR_EVENT_HUB_NAME",
      "secondaryConnectionString": "Endpoint=sb://YOUR_NAMESPACE.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YOUR_SECONDARY_KEY;EntityPath=YOUR_EVENT_HUB_NAME",
      "path": "YOUR_EVENT_HUB_NAME"
    }
    
    Değer Şununla değiştir
    YOUR_NAMESPACE Uç noktanızın ad alanı
    YOUR_PRIMARY_KEY Kimlik doğrulaması için kullanılan birincil bağlantı dizesi
    YOUR_SECONDARY_KEY Kimlik doğrulaması için kullanılan ikincil bağlantı dizesi
    YOUR_EVENT_HUB_NAME Olay hub'ınızın adı

Not

Yeni bir uç nokta oluşturuldukten sonra uç noktada olayları almaya başlamak 5-10 dakika kadar sürebilir.

Birincil ve ikincil bağlantı anahtarları

Birincil bağlantı anahtarı yetkisiz hale geldiğinde, sistem otomatik olarak ikincil bağlantı anahtarını dener. Bu, bir yedekleme sağlar ve Uç Noktalar API'sini kullanarak birincil anahtarı düzgün bir şekilde doğrulayıp güncelleştirme olanağı sağlar.

Hem birincil hem de ikincil bağlantı anahtarları yetkisizse, sistem 30 dakikaya kadar üstel bir geri çekilme bekleme süresi girer. Olaylar tetiklenen her geri alma bekleme süresine bırakılır.

Sistem her geri çekme bekleme durumunda olduğunda, Uç Noktalar API'sini kullanarak bağlantı anahtarlarının güncelleştirilmesi 30 dakika kadar sürebilir.

Ulaşılamayan uç noktalar

Bir uç noktaya ulaşılamaz duruma geldiğinde, sistem 30 dakikaya kadar üstel bir geri çekilme bekleme süresi girer. Olaylar tetiklenen her geri alma bekleme süresine bırakılır.

Sonraki adımlar