İşlemleri Okuma

Okuma İşlemi

Matter bölgesindeki Düğümler ile etkileşimde bulunurken kullanılan ilk kullanım alanlarından biri, başka bir Düğümdeki Özelliğin (ör. bir sensördeki sıcaklık değeri) okunmasıdır. Bu tür Etkileşimlerde yapılması gereken ilk İşlem, Okuma İsteği İşlemidir.

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

İstek İşlemini Okuma

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

Bu İşlemde Başlatıcı, aşağıdakileri sağlayan bir Hedef sorgular:

  • Özellik İstekleri: Hedefin Özniteliklerinden sıfır veya daha fazlasını içeren bir liste. Bu liste, Hedefin istenen Özelliklere Giden Yollardan (sıfır veya daha fazla) oluşur.
  • Etkinlik İstekleri: Hedefin istenen Etkinliklere giden sıfır veya daha fazla Yolun listesi.

Okuma İsteği İşlemi Hedef tarafından alındıktan sonra, istenen bilgilerle bir Rapor Veri İşlemi oluşturur.

Rapor Verileri İşlemi

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

Bu İşlemde Hedef şöyle yanıt verir:

  • Özellik Raporları: Okuma İşlemi İsteğinde istenen, raporlanan Özelliklerin sıfır veya daha fazlasını içeren bir liste.
  • Etkinlik Raporları: Raporlanan bir veya daha fazla Etkinliğin yer aldığı bir liste.
  • Yanıtı Engelle: Bu işleme verilen durum yanıtının atlanıp atlanmayacağını belirleyen bir işaret.
  • Abonelik Kimliği: Bu rapor bir abone olma 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: Target -> Initiator or Initiator -> Target (Hedef -> Başlatıcı 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ığını onaylamak için Başlatıcı tarafından gönderilir. Durum Yanıtını Engelleme işareti ayarlanırsa Başlatıcı, Durum Yanıtı İşlemini göndermemelidir.

Durum Yanıt İşlemi Başlatıcı tarafından gönderildiğinde veya Başlatıcı tarafından Yanıtı Engelle işareti etkinleştirilmiş olarak bir Rapor Veri İşlemi alındığında, okuma/rapor sorgusu biter.

Durum Yanıt İşlemi, işlemin başarılı olduğunu onaylayacak veya bir hata kodu gösterecek bir status 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 şeklindedir ve grup yayınına yanıt olarak oluşturulamaz.

Abonelik İşlemi

Abonelik İşlemi işlem sırası
Şekil 2: Abonelik İşlemi

Abone Olma İsteği İşlemi

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

Başlatıcılar, tek bir Okuma İsteği İşlemi'ne ek olarak bir Özellik veya Etkinliğin düzenli güncellemelerine de abone olabilir. Böylece, bir abonelik işlemini takip eden periyodik veri güncellemelerinin sonucu olarak aynı Rapor Veri İşlemi oluşturulabilir.

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

Abonelik İsteği İşlemi şunları içerir:

  • Min Aralık Tabanı: Raporlar arasındaki minimum aralık.
  • Maksimum Aralıklı Tavan: Raporlar arasındaki maksimum aralık.
  • Özellik Raporları: Okuma İşlemi İsteğinde istenen raporlanan Özelliklerin sıfır veya daha fazlasını içeren bir liste.
  • Etkinlik Raporları: Raporlanan bir veya daha fazla Etkinliğin yer aldığı bir liste.

Abone Olma İsteğinden sonra Hedef, Başlatıcı'ya bildirilen ilk veri grubu olan Primlenmiş Yayınlanan Veriler'i içeren bir Rapor Veri İşlemi ile yanıt verir.

Daha sonra Başlatıcı, Rapor Veri İşlemini Hedef'e gönderilen bir Durum Yanıtı İşlemi ile onaylar. Hedef, hata bildirmeyen bir Durum Yanıtı İşlemi aldığında Abone Olma Yanıtı İşlemi gönderir.

Hedef, belirlenen aralıklarla Rapor Veri İşlemi'ni düzenli olarak gönderir ve Başlatıcı, abonelik kaybedilene ya da iptal edilene kadar bu İşlemlere yanıt verir.

Abone Olma Yanıtı İşlemi

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

Bu, Abonelik İşlemi'ndeki son İşlem olup süreci tamamlar. Şunları içermektedir:

  • Abonelik Kimliği: Aboneliği tanımlayan bir tam sayı.
  • Min Aralık: Raporlar arasındaki nihai, belirlenmiş minimum aralık.
  • Max Interval: Raporlar arasındaki nihai, belirlenmiş maksimum aralık.

Abonelik Kısıtlamaları

  • Abone Olma İsteği İşlemi ve Abone Yanıtı İşlemi, yalnızca Unicast işlemleridir.
  • Abonelik Etkileşimlerindeki tüm Rapor Veri İşlemleri aynı Abonelik Kimliğine sahip olmalıdır.
  • Abone, İşlemler arasında anlaşılan maksimum aralıkta 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 Abonelik Etkileşimini feshedebilir.
  • Abone, Rapor Verileri İşlemine INACTIVE_SUBSCRIPTION durum koduyla yanıt vererek Abonelik Etkileşimini feshedebilir.