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:
- Azure Event Grid olay şeması başvuruyu gözden geçirin.
- Azure EventGrid Node.js SDK EventGridEvent başvuruyu okuyun.
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
Azure Digital Twins'de olayları ve iletileri yönlendirme hakkında daha fazla bilgi edinin.