İşlemleri Okuma

İşlemi Okuma

Matter içindeki Düğümlerle etkileşimde bulunurken kullanılacak ilk kullanım alanlarından biri, başka bir Düğümün Özelliğinin (ör. bir sensörden alınan sıcaklık değeri) okunmasıdır. Bu gibi etkileşimlerde yapılması gereken ilk işlem okuma isteği işlemidir.

Okuma İşleminin işlem sırası
Şekil 1: İşlemi Okuma

İstek İsteğini Oku

Yön: Başlatan -> Hedef

Bu İşlemde Başlatıcı, bir Hedef sorgulayarak şunları sağlar:

  • Özellik İstekleri: Sıfır veya daha fazla Hedef Özelliği listesi. Bu liste, hedefin istenen özellikleri için sıfır veya daha fazla yoldan oluşur.
  • Etkinlik İstekleri: Hedefin istediği Etkinliklere ait sıfır veya daha fazla Yolun listesi.

okuma isteği işlemi hedef tarafından alındıktan sonra, istenen bilgileri içeren bir rapor veri işlemi oluşturulur.

Veri İşlemini Bildir

Yön: Hedef -> Başlatıcı

Bu İşlemde Hedef, şunlarla yanıt verir:

  • Özellik Raporları: Okuma İşlemi İsteğinde bildirilen özelliklerin sıfır veya daha fazlasının listesi.
  • Etkinlik Raporları: Bildirilen sıfır veya daha fazla Etkinliğin listesi.
  • Spress yanıtı: Bu işleme durum yanıtının atlanıp atlanmayacağını belirleyen işaret.
  • Abonelik kimliği: Bu rapor bir abonelik işleminin parçasıysa abonelik işlemini tanımlamak için kullanılan bir tam sayı içermelidir.

Durum Yanıt İşlemi

Yön: Hedef -> Başlatan veya Başlatıcı > Hedef

Başlatıcı, istenen verileri aldıktan sonra varsayılan olarak bir Durum Yanıt İşlemi oluşturmalıdır. Bu işlem, raporlanan verilerin alındığı onaylanarak Başlatan'dan gönderilir. İşaretleme Durum Yanıtı Engellendi olarak başlatan, Durum Yanıtı İşlemini göndermemelidir.

Durum Yanıtı İşlemini Başlatan tarafından gönderildikten veya Rapor Verileri İşlemini, Reddetme bayrağı etkinleştirilmiş olarak aldığınızda, okuma/rapor sorgusu tamamlanır.

Durum yanıtı işlemi, işlemin başarılı olduğunu belirten veya bir hata kodu gösteren bir durum alanı içerir.

Okuma Kısıtlamaları

Okuma İsteği İşlemi ve Rapor Verileri İşlemi yalnızca Unicast içindir. Ayrıca, bu isteklerin yolları bir Düğüm Grubunu hedefleyemez.

Durum Yanıt İşlemi yalnızca Unicast için geçerlidir ve bir grup yayınına yanıt olarak oluşturulamaz.

Abonelik İşlemi

Abonelik işlemi işlemleri dizisi
Şekil 2: Abonelik İşlemi

Abonelik İsteği İşlemi

Yön: Başlatan -> Hedef

Tek bir Okuma İsteği İşlemine ek olarak, Başlatan bir Özellik veya Etkinliğin düzenli güncellemelerine de abone olabilir. Dolayısıyla, bir Abonelik İşlemini izleyen düzenli veri güncellemeleri sonucunda aynı Rapor Verileri İşlemi oluşturulabilir.

Abonelik etkileşimi iki Düğüm arasında bir ilişki oluşturur. Bu düğümde Hedef, Rapor Veri İşlemleri'ni Başlatıcı için düzenli olarak oluşturur. Başlatıcı Abone, Hedef ise Yayıncı'dır.

Abonelik isteği işlemi şunları içerir:

  • Min. Aralık Aralığı: raporlar arasındaki minimum aralık.
  • Maksimum Aralık: Raporlar arasındaki maksimum aralık.
  • Özellik Raporları: Harekete Geçirici Mesaj İsteği'nde istenen bildirilen özelliklerin sıfır veya daha fazlasının listesi.
  • Etkinlik Raporları: Sıfır veya daha fazla raporlanan etkinlik listesi.

Abone İsteğinden sonra Hedef, Bildiren'e bildirilen ilk veri grubunu içeren bir Rapor Veri İşlemi ile yanıt verir: Primed Yayınlanan Veri.

Ardından Başlatan, Rapor Veri İşlemi'ni Hedefe gönderilen bir Durum Yanıt İşlemi ile onaylar. Hedef, hata bildirmeyen bir Durum Yanıt İşlemi aldığında bir Abone Yanıtı İşlemi gönderir.

Hedef, Rapor Veri İşlemi'ni pazarlık yapılan aralıkta düzenli olarak gönderir. Başlangıç, abonelik kaybedilene veya iptal edilene kadar bu İşlemler'e yanıt verir.

Abone Olma Yanıt İşlemi

Yön: Hedef -> Başlatıcı

Abonelik işlemindeki son işlem olan bu süreç sona erer. Şunları içermektedir:

  • Abonelik kimliği: Aboneliği tanımlayan bir tam sayı.
  • Min. Aralık: Raporlar arasındaki belirtilen minimum aralık nihai.
  • Maksimum Aralık: Raporlar arasındaki son, belirlenen aralık.

Abone Olma Kısıtlamaları

  • Abonelik İsteği İşlemi ve Abone Yanıtı İşlemi, yalnızca Unicast işlemleridir.
  • Abonelik etkileşimindeki tüm rapor veri işlemleri aynı abonelik kimliğine sahip olmalıdır.
  • Abone, İşlemler arasındaki maksimum görüşme süresi içinde bir Rapor Veri İşlemi almazsa abonelik sonlandırılır.
  • Önceki kuralın bir sonucu olarak Yayıncı, düzenli Rapor Veri İşlemleri göndermeyi durdurarak bir Abonelik Etkileşimini feshedebilir.
  • Abone, Rapor Veri İşlemine INACTIVE_SUBSCRIPTION durum koduyla yanıt vererek Abonelik Etkileşimini feshedebilir.