Skip to main content

device_rule_state

device_rule_state, cihaz bazında her rule group'un o anki tetiklenme durumunu tutar. Rule geçmişini her pakette baştan hesaplamak yerine bu tablo sayesinde son bilinen durum hızlıca okunur. Özellikle duration kuralı, reset mantığı ve multi-trigger sayacı için zorunludur.

Bu tablo event geçmişi değildir; sadece current state'tir. Tarihsel iz rule_events tablosunda tutulur. (device_id, rule_group_id) kombinasyonu unique olmalıdır; böylece her cihaz-grup ikilisi yalnız bir state kaydı taşır.

Kolonlar

KolonTipNullAnlamı
idinthayırState kaydı birincil anahtarı
device_idvarchar(21)hayırİlgili cihaz; devices.id ile ilişkili
rule_group_idinthayırİlgili rule group; rule_groups.id ile ilişkili
is_triggeredbooleanhayırAlarm şu an aktif mi (DEFAULT: false)
trigger_countinthayırToplam tetiklenme sayısı (DEFAULT: 0)
last_trigger_timetimestampevetSon tetiklenme zamanı
last_reset_timetimestampevetSon reset zamanı
last_event_idbigintevetSon rule_events kaydına referans
update_timetimestamphayırSon güncelleme zamanı

İndeksler

İndeksAmacı
(device_id, rule_group_id) [unique]Aynı cihaz-grup ikilisinin bir tane state kaydı taşıması garantisi

Örnek Kayıtlar

{
"id": 1,
"device_id": "46000000C47CA670",
"rule_group_id": 1,
"is_triggered": true,
"trigger_count": 2,
"last_trigger_time": "2026-04-03T10:30:00Z",
"last_reset_time": "2026-04-03T08:15:00Z",
"last_event_id": 1,
"update_time": "2026-04-03T10:30:05Z"
}

Özet: Cihaz C47CA670'nin grup 1 alarmı şu an aktif. Daha önceki 2 tetiklemeden sonra 08:15'te reset olmuş, 10:30'da yeniden tetiklenmişlüğü belirtmektedir.