Bu sayfa iki soruyu yanıtlar: bir alarm tam olarak ne zaman kapanır ve cihaz çevrimdışıyken biriktirdiği tamponu gönderdiğinde olduğu gibi, geç gelen okumalara ne olur?
Varsayılan kapanma
Without a clear condition, an alarm clears when no severity condition is true any more, widened by the hysteresis, and after the clear debounce. Example: raise temperature > 80 with hysteresis 3 clears at 77 or below.
Açık kapanma koşulu
Bir clear koşulu (JSON modu) bu mantığın yerini alır: clear yanlış olduğu sürece alarm açık kalır ve doğru olduğunda kapanır (kapanma gecikmesinden sonra). Bu durumda histerezis yok sayılır.
{
"type": "fall_detected",
"title": "{{device.name}}: fall detected",
"severities": [ { "severity": "CRITICAL", "condition": { "key": "event", "op": "==", "value": "fall" } } ],
"clear": { "key": "event", "op": "==", "value": "press_once" }
}
Düşme alarmı, bir sonraki olay normal olduğunda açık kalır; yalnızca kullanıcı düğmeye bir kez bastığında kapanır.
Açık bir kapanma koşulunu şu durumlarda kullanın:
- alarmın onaylayıcı bir sinyal beklemesi gerektiğinde (bir sıfırlama düğmesi, bir “normal” durumu),
- açma ve kapatma değerleri farklı anahtarlar olduğunda (
smoke == trueile açılıpalarm_reset == trueile kapanması), - kapanmanın aynı anda birden fazla koşulu gerektirdiği durumlarda (kapı kapalı ve basınç normale dönmüş olması için
all).
The clear condition has the same shape and limits as a severity condition (16 comparisons, 4 levels). A message that carries none of the clear condition’s keys and none of the severity keys is no sample for the rule.
Not
Hiçbir zaman doğru olmayan bir kapanma koşulu alarmı sonsuza kadar açık tutar. Cihazın bu anahtarı ve değeri gerçekten gönderdiğinden emin olun ya da bu tür alarmları elle kapatın.
Başka yerlerden kapatma
Bir kuralın alarmı, bir kişi tarafından (Clear), bir akışın Clear alarm bloğuyla veya bir Kurallar kartı eylemiyle de kapatılabilir. Koşul hâlâ doğruyken bir kişi alarmı kapattıktan sonra, kural yeni bir alarm açabilmek için koşulun bir kez yanlış olmasını bekler. Bir akış veya kural alarmı kapattıktan sonra kural boşta durumdan başlar: bir sonraki doğru okuma (gecikmeden sonra) yeni bir alarm açar.
Geç gelen okumalar
Çevrimdışı olan bir cihaz, geri geldiğinde genellikle tamponladığı okumaları gönderir. Hermetry bunları kendi zaman damgalarıyla saklar (bkz. Zaman damgaları, geç ve yinelenen okumalar). Alarmlar için iki durum vardır.
Geç işlenen okumalar
Kök akış mesajları sırayla işler. Akış ana makinesinin yaşam süresinden (time-to-live) (örneğin bir kesinti sırasında) daha uzun bekleyen bir mesaj geç olarak işaretlenir. Alarm kuralları için bu bir geriye dönük doldurma (backfill) olur:
- Kuralın değerlendirdiği son okumadan daha yeniyse, her zamanki gibi kuralı hareket ettirir: alarmlar açılır, önem derecesini değiştirir ve kapanır.
- Bu adımlar sessizce kaydedilir ve okumaların tarihiyle tarihlenir: alarm listesi, bildirim sayaçları ve canlı paneller bunları izler, ancak kimseye bildirilmez, webhook gönderilmez ve akış başlatılmaz. Bu şekilde açılan bir alarm Backfilled rozetini taşır; zaman çizelgesi adımları “geç okumalardan” yazar.
- Gerçekleşen durum bir kez duyurulur: geç okumalarla açılmış (veya yükseltilmiş) bir alarm, kuralın ilk canlı okuması geldiğinde hâlâ açıksa, o okuma değerlendirilmeden önce bildirilir. Hiç canlı okuma gelmezse, son geç okumadan 5 dakika sonra duyurulur. Açılışı bildirilmiş bir alarm geç okumalarla çözülmüşse, çözüm de aynı şekilde duyurulur.
- Duyurulmaz: bu arada zaten çözülmüş bir alarm, bu arada birisi tarafından onaylanmış bir alarm veya geri inmiş bir yükseltme.
Dolayısıyla bir kesinti sırasında açılıp kapanan bir alarm geçmişte görünür ve geçmiş için kimse çağrılmaz.
Son değerlendirilenden daha eski okumalar
Zaman damgası, kuralın zaten değerlendirdiği en yeni okumadan daha eski olan bir okuma (sırası bozuk bir okuma veya canlı veriden sonra gelen tekrarlanmış bir tampon) varsayılan olarak değerlendirilmez: daha yeni bir okuma durumu zaten belirlemiştir.
Bu tür okumaların da değerlendirilmesi için kuralda (JSON modunda) "evaluateBackfill": true ayarını yapın:
- Bunlar, geliş sırasına göre, kendi gecikmeleriyle kuralın ayrı bir tekrar oynatımından geçer.
- Tekrar oynatım bir alarm açarsa, alarm Backfilled olarak işaretlenir ve asla bildirilmez. Koşul artık doğru değilse, bir sonraki canlı okuma alarmı kapatır.
- Bunlar, canlı okumaların açtığı bir alarmı asla değiştirmez.
Tamponları sıklıkla canlı verilerden sonra gelen ve alarm geçmişi önem taşıyan cihazlar için kullanın (örneğin düzenlemeye tabi soğuk zincirler).
Zaman damgaları
Süre gecikmesi (duration debounce) ve geriye dönük doldurma sırası okumaların zaman damgalarını kullanır. Saati yanlış olan bir cihaz hatalı alarm zamanları üretir. Gelecekte 10 dakikadan fazla ileri tarihli okumalar, alarm kurallarına ulaşmadan düşürülür. Bkz. Yanlış zamanlar ve boşluklar.
Akış alarm blokları ve geç mesajlar
Akış alarm blokları (Raise alarm, Clear alarm, Acknowledge alarm), geç bir mesaj için hiçbir şeyi değiştirmez: mesajı olduğu gibi iletirler. Geç okumaları yalnızca profilin alarm kuralları değerlendirir.

