Uyari Tetikleyicileri
Tetikleyiciler, SetGet uyari sisteminin temel mekanizmasidir. Bir tetikleyici, hangi olayin bildirim olusturacagini, bicimlendirme icin hangi sablonun kullanilacagini ve bildirimi kimin alacagini tanimlar. Belirtilen olay gerceklestiginde ve yapilandirilan kosullar saglandiginda, sistem her alicinin tercihlerinde etkinlestirilen kanallar araciligiyla bildirimleri gonderir.
Tetikleyiciler nasil calisir
Tetikleyici degerlendirme akisi:
- Bir kullanici veya sistem eylemi bir is ogesini degistirir (ornegin durumu degistirir, yorum ekler, onceligi gunceller).
- Backend
NotificationDispatcherilgili olayi tetikler. - Uyari sistemi, olay turuyle eslesen tum aktif tetikleyicileri degerlendirir.
- Eslesen her tetikleyici icin, kosullar is ogesinin mevcut ozelliklerine gore kontrol edilir.
- Kosullar saglanirsa, sistem alici listesini cozumler.
- Her alici icin, sistem hangi kanallarin etkin oldugunu belirlemek uzere bildirim tercihlerini kontrol eder.
- Bildirimler, yapilandirilan sablon kullanilarak etkinlestirilen kanallar (uygulama ici, e-posta, SMS) araciligiyla gonderilir.
Olay turleri referansi
SetGet, tetikleyici kaynaklari olarak kullanilabilecek 16 olay turunu destekler. Her olay turu, bir is ogesi veya iliskili varliklari uzerindeki belirli bir eyleme karsilik gelir.
| Olay turu | Ne zaman tetiklenir | Tipik kullanim senaryosu |
|---|---|---|
state_changed | Bir is ogesinin durumu guncellenir (ornegin "Yapilacak" iken "Devam Ediyor" olur) | Atanan kisileri ve izleyicileri is akisi ilerlemesi hakkinda bilgilendir |
assignee_changed | Bir is ogesi farkli bir kullaniciya atanir veya atamasi kaldirilir | Yeni atanan kisiyi yeni sorumluluklari hakkinda uyar |
priority_changed | Bir is ogesinin oncelik duzeyi degistirilir | Oncelik Acil veya Yuksek'e yukseldiginde farkindaligin arttirilmasi |
comment_added | Bir is ogesine yeni yorum eklenir | Aboneleri tartisma etkinligi hakkinda bilgilendir |
issue_created | Projede yeni bir is ogesi olusturulur | Proje liderlerini gelen is hakkinda bilgilendir |
due_date_passed | Bir is ogesinin son tarihi tamamlanmadan gecmistir | Atanan kisileri ve yoneticileri geciken ogeler hakkinda uyar |
label_changed | Bir is ogesine etiketler eklenir veya kaldirilir | Etiket sahiplerini alanlari etkilendiginde bilgilendir |
property_changed | Bir is ogesindeki herhangi bir izlenen ozellik degistirilir | Belirli olaylar tarafindan karsilanmayan ozellik guncellemeleri icin genel yakalayici |
issue_completed | Bir is ogesi tamamlanmis duruma gecer | Paydaslari teslimatlarin hazir oldugu konusunda bilgilendir |
mentioned | Bir kullanici yorum veya aciklamada @bahsedilir | Bahsedilen kullaniciya hedefli bildirim gonder |
date_changed | Bir is ogesinin baslangic tarihi veya son tarihi degistirilir | Takvimler kaydiginda planlamacilari uyar |
cycle_changed | Bir is ogesi bir donguye eklenir veya dongudan cikarilir | Dongu liderlerini kapsam degisiklikleri hakkinda bilgilendir |
module_changed | Bir is ogesi bir module eklenir veya modulden cikarilir | Modul sahiplerini kapsam degisiklikleri hakkinda bilgilendir |
link_changed | Bir is ogesine baglanti eklenir veya kaldirilir | Is birlikcilarini yeni dis referanslar hakkinda bilgilendir |
relation_changed | Bir iliski (engelliyor, engelleniyor, iliskili) eklenir veya kaldirilir | Bagimli takimlari iliski degisiklikleri hakkinda uyar |
archive_changed | Bir is ogesi arsivlenir veya arsivden cikarilir | Ogeler aktif gorunumden cikarildiginda veya geri yuklendiginde takimi bilgilendir |
TIP
property_changed olayi genis kapsamli bir genel yakalayicidir. Ilgilendiginiz ozellik icin daha spesifik bir olay turu varsa (ornegin oncelik icin priority_changed), daha temiz tetikleyici mantigi icin spesifik olay turunu kullanin.
Olay kategorileri
16 olay turu dort mantiksal kategoriye ayrilir:
Temel yasam dongusu olaylari
Bu olaylar, bir is ogesinin olusturulmadan tamamlanma ve arsivlemeye kadar olan temel yasam dongusunu izler.
| Olay | Kategori |
|---|---|
issue_created | Olusturma |
state_changed | Is akisi ilerlemesi |
issue_completed | Tamamlanma |
archive_changed | Arsivleme |
Ozellik degisikligi olaylari
Bu olaylar, bir is ogesindeki belirli ozellikler degistirildiginde tetiklenir.
| Olay | Ozellik |
|---|---|
assignee_changed | Atanan |
priority_changed | Oncelik |
label_changed | Etiketler |
date_changed | Baslangic tarihi veya son tarih |
property_changed | Diger izlenen ozellikler |
Is birligi olaylari
Bu olaylar, is ogelerindeki insan etkilesimiyle ilgilidir.
| Olay | Etkilesim |
|---|---|
comment_added | Yeni yorum eklendi |
mentioned | Kullanici @bahsedildi |
Iliski olaylari
Bu olaylar, bir is ogesinin diger varliklarla iliskilerinin degismesi durumunda tetiklenir.
| Olay | Iliski |
|---|---|
cycle_changed | Dongu uyeligi |
module_changed | Modul uyeligi |
link_changed | Dis baglantilar |
relation_changed | Is ogesi iliskileri (engelliyor, iliskili vb.) |
Zaman tabanli olaylar
| Olay | Kosul |
|---|---|
due_date_passed | Son tarih gecmistir (arka plan zamanlamasi ile degerlendirilir) |
WARNING
due_date_passed olayi, bir kullanici eylemi tarafindan degil, arka plan zamanlayicisi tarafindan degerlendirilir. Son tarih gectiginde bir kez tetiklenir. Tekrarlayan hatirlaticlara ihtiyaciniz varsa, farkli kosullarla birden fazla tetikleyici olusturun veya otomasyon sistemini kullanin.
Tetikleyici olusturma
Adim 1: Tetikleyicilere gidin
- Calisma alaninizi acin.
- Ayarlar > Hatirlaticilar > Tetikleyiciler bolumune gidin.
- Tetikleyici Olustur dusesine tiklayin.
Adim 2: Olay turunu secin
Acilir listeden 16 olay turundan birini secin. Bu, tetikleyicinin hangi eylemlerde tetiklenecegini belirler.
Bildirim ihtiyacinizla en iyi eslesen olayi degerlendirin. Ornegin, bir is ogesinin engelleyici olarak isaretlendiginde bildirim gonderilmesini istiyorsaniz, genel property_changed olayi yerine "Acil" oncelik duzeyi icin filtreleyen bir kosulla birlikte priority_changed kullanin.
Adim 3: Bir sablon secin
Bildirimi bicimlendirmek icin kullanilacak e-posta sablonunu secin. SetGet, kategorilere gore duzenlenmis 21 sistem sablonu sunar. Sablon, bildirimde kullanilan konu satiri, govde yapisi ve degisken yer tutucularini belirler.
Her olay turunun dogal bir sablon eslesmesi vardir:
| Olay turu | Onerilen sablon |
|---|---|
state_changed | Durum Degisikligi |
assignee_changed | Atama |
priority_changed | Oncelik Uyarisi |
comment_added | Yorum Eklendi |
issue_created | Is Ogesi Olusturuldu |
due_date_passed | Son Tarih Gecti |
label_changed | Etiket Degisti |
issue_completed | Is Ogesi Tamamlandi |
mentioned | Bahsetme |
date_changed | Tarih Degisti |
cycle_changed | Donguye Is Ogesi Eklendi |
module_changed | Module Is Ogesi Eklendi |
link_changed | Baglanti Guncellendi |
relation_changed | Iliski Degisti |
archive_changed | Is Ogesi Arsivlendi |
property_changed | Ozellik Degisikligi |
Tam sablon katalogu ve degisken referansi icin Sablonlar sayfasina bakin.
Adim 4: Alicilari secin
Bu tetikleyici tetiklendiginde kimin bildirim alacagini tanimlayin. Birden fazla alici turunu birlestirebilirsiniz.
| Alici turu | Aciklama |
|---|---|
| Atananlar | Is ogesinin mevcut atanan kisi(ler)i |
| Olusturucu | Is ogesini ilk olusturan kullanici |
| Aboneler | Is ogesine abone olan tum kullanicilar |
| Belirli kullanicilar | Ada gore secilen bir veya daha fazla calisma alani uyesi |
Alici cozumleme kurallari:
- Bir kullanici birden fazla alici turunde gorunuyorsa (ornegin hem atanan hem de abone ise), kanal basina yalnizca bir bildirim alir.
- Olayi tetikleyen aktor varsayilan olarak bildirimlerden haric tutulur. Ornegin, bir kullanici kendi is ogesinin durumunu degistirirse, durum degisikligi bildirimi almaz.
- Belirli kullanicilar, abonelik durumlarina bakilmaksizin her zaman bildirimi alir.
Adim 5: Kosullari belirleyin (istege bagli)
Kosullar, tetikleyicinin kapsamini daraltarak yalnizca belirli kriterlere uyan is ogeleri icin tetiklenmesini saglar. Kosullar olmadan, tetikleyici calisma alanindaki secilen olayin her tekrarinda tetiklenir.
Kullanilabilir kosul alanlari:
| Kosul alani | Operatorler | Ornek |
|---|---|---|
| Proje | esittir, esit degildir | Yalnizca "Backend" projesindeki is ogeleri icin tetikle |
| Durum | esittir, esit degildir | Yalnizca yeni durum "Incelemede" oldugunda tetikle |
| Oncelik | esittir, esit degildir, buyuktur, kucuktur | Yalnizca oncelik Acil veya Yuksek oldugunda tetikle |
| Etiket | icerir, icermez | Yalnizca "Hata" etiketli ogeler icin tetikle |
| Atanan | esittir, esit degildir | Yalnizca belirli bir kullaniciya atanan ogeler icin tetikle |
Kosullar VE mantigi ile degerlendirilir --- tetikleyicinin tetiklenmesi icin tum kosullarin dogru olmasi gerekir.
TIP
Gurultuyu onlemek icin kosullari kullanin. Kosulsuz bir state_changed tetikleyicisi, calisma alanindaki her durum gecisinde tetiklenir. "Durum Incelemede" gibi bir kosul eklemek, bildirimleri tek bir anlamli gecisle sinirlar.
Adim 6: Tetikleyiciyi etkinlestirin
Yapilandirmanizi gozden gecirin ve Kaydet dusesine tiklayin. Tetikleyici varsayilan olarak aktif durumda olusturulur ve olaylari hemen islemeye baslar.
Tetikleyicileri yonetme
Tetikleyicileri goruntuleme
Tetikleyiciler sayfasi, tum yapilandirmis tetikleyicileri asagidaki sutunlarla bir tabloda gosterir:
| Sutun | Aciklama |
|---|---|
| Ad | Olay turu ve sablondan otomatik olusturulur |
| Olay | Bu tetikleyiciyi etkinlestiren olay turu |
| Sablon | Bicimlendirme icin kullanilan e-posta sablonu |
| Alicilar | Alici turlerinin ozeti |
| Kosullar | Aktif kosul sayisi |
| Durum | Aktif veya Devre Disi |
| Olusturulma | Olusturulma tarihi |
Tetikleyiciyi duzenleme
- Ayrintili gorunumu acmak icin herhangi bir tetikleyici satirina tiklayin.
- Olay turunu, sablonu, alicilari veya kosullari degistirin.
- Degisiklikleri uygulamak icin Kaydet dusesine tiklayin.
Degisiklikler yeni olaylar icin hemen yururluge girer. Duzenleme oncesinde zaten gonderilmis olaylar etkilenmez.
Tetikleyicileri etkinlestirme ve devre disi birakma
Bir tetikleyiciyi silmeden gecici olarak durdurmak icin:
- Durum sutunundaki gecis anahtarina tiklayin.
- Tetikleyici Devre Disi olur ve olaylari islemeyi durdurur.
- Yeniden etkinlestirmek icin tekrar gecis yapin.
Devre disi birakilmis tetikleyiciler tam yapilandirmalariyla korunur. Tetikleyici devre disi iken hicbir bildirim gonderilmez.
Tetikleyici silme
- Tetikleyici satirindaki silme simgesine tiklayin.
- Iletisim kutusunda silmeyi onaylayin.
WARNING
Tetikleyici silme kalicidir ve geri alinamaz. Tetikleyiciye tekrar ihtiyaciniz olabilecekse, bunun yerine devre disi birakin.
Tetikleyici ornekleri
Ornek 1: Engelleyici olusturuldugunda takim liderini bilgilendir
Hedef: Herhangi bir is ogesinin onceligi Acil olarak degistirildiginde muhendislik liderini hemen bilgilendir.
| Ayar | Deger |
|---|---|
| Olay turu | priority_changed |
| Sablon | Oncelik Uyarisi |
| Alicilar | Belirli kullanicilar: Muhendislik Lideri |
| Kosullar | Oncelik Acil |
Ornek 2: Geciken ogeler hakkinda atananlari hatirla
Hedef: Bir is ogesinin son tarihi gectiginde, atanan kisiyi ve proje olusturucusunu bilgilendir.
| Ayar | Deger |
|---|---|
| Olay turu | due_date_passed |
| Sablon | Son Tarih Gecti |
| Alicilar | Atananlar, Olusturucu |
| Kosullar | Yok (tum geciken ogeler icin gecerlidir) |
Ornek 3: Is incelemeye girdiginde incelemecileri bilgilendir
Hedef: Bir is ogesi "Incelemede" durumuna gectiginde belirli incelemecileri bilgilendir.
| Ayar | Deger |
|---|---|
| Olay turu | state_changed |
| Sablon | Durum Degisikligi |
| Alicilar | Belirli kullanicilar: Incelemeci A, Incelemeci B |
| Kosullar | Durum "Incelemede" |
TIP
Bu senaryo ayni zamanda, durumdan duruma gecis uyarilari icin daha sezgisel bir arayuz saglayan bir Durum eslesmesi icin de iyi bir adaydir.
Ornek 4: Modul sahiplerini kapsam degisiklikleri hakkinda bilgilendir
Hedef: Bir is ogesi "Kimlik Dogrulama" modulune eklendiginde modul sahibini bilgilendir.
| Ayar | Deger |
|---|---|
| Olay turu | module_changed |
| Sablon | Module Is Ogesi Eklendi |
| Alicilar | Belirli kullanicilar: Kimlik Dogrulama Modul Sahibi |
| Kosullar | Yok |
Ornek 5: Yeni hatalar hakkinda uyar
Hedef: "Hata" etiketiyle yeni bir is ogesi olusturuldugunda KG takimini bilgilendir.
| Ayar | Deger |
|---|---|
| Olay turu | issue_created |
| Sablon | Is Ogesi Olusturuldu |
| Alicilar | Belirli kullanicilar: KG Lideri, KG Muhendisi |
| Kosullar | Etiket "Hata" iceriyor |
Ornek 6: Is tamamlandiginda paydaslari bilgilendir
Hedef: Herhangi bir is ogesi tamamlanmis duruma ulastiginda olusturucuyu ve tum aboneleri bilgilendir.
| Ayar | Deger |
|---|---|
| Olay turu | issue_completed |
| Sablon | Is Ogesi Tamamlandi |
| Alicilar | Olusturucu, Aboneler |
| Kosullar | Yok |
Tetikleyici yurutme sirasi
Ayni olayla eslesen birden fazla tetikleyici oldugunda, hepsi bagimsiz olarak tetiklenir. Tetikleyiciler arasinda oncelik veya siralama yoktur. Her tetikleyici kendi kosullarini degerlendirir ve kendi alici listesine gonderim yapar.
Bir kullanici farkli tetikleyicilerden ayni olay icin birden fazla bildirim alacak olursa, sistem kanal duzeyinde tekillestirir --- kullanici kanal basina bir bildirim alir ve ilk eslesen tetikleyicinin sablonu kullanilir.
Performans degerlendirmeleri
- Her aktif tetikleyici, her eslesen olaya degerlendirme yuku ekler. Calisma alaninizin boyutuna uygun makul sayida aktif tetikleyici tutun.
- Cok sayida genis kapsamli tetikleyici olusturmak yerine, tetikleyici kapsamini daraltmak icin kosullari kullanin.
property_changedolayi sik tetiklenir. Asiri bildirimlerden kacinmak icin belirli kosullarla kullanin.due_date_passedolayi arka plan zamanlamasinda degerlendirilir ve gercek zamanli islem yuku eklemez.
Tetikleyici denetimi ve bakimi
Zamanla, projeler gelistikce, takim uyeleri rol degistirdikce ve is akislari yeniden yapilandirildikca tetikleyiciler guncelligini yitirebilir. Duzenli bakim, tetikleyici setinizi etkili tutar.
Ucaylik gozden gecirme kontrol listesi
- [ ] Tum aktif tetikleyicileri listeleyin ve her birinin hala bir amaca hizmet ettigini dogrulayin.
- [ ] "Belirli kullanici" alicilarinin hala ilgili role sahip olup olmadigini kontrol edin (ornegin, farkli bir takima gecen incelemeci).
- [ ] 30 gunden fazla suredir tetiklenmemis tetikleyiciler icin Gecmis sayfasini inceleyin --- eskimis olabilirler.
- [ ] Kosullarin hala mevcut proje durumlari, etiketleri ve oncelikleriyle eslesip eslesmedigini dogrulayin.
- [ ] Artik ihtiyac duyulmayan tetikleyicileri aktif birakmak yerine devre disi birakin.
Gurultulu tetikleyicileri belirleme
Gurultulu bir tetikleyici cok sik tetiklenir ve yararli olandan daha fazla bildirim olusturur. Gurultulu tetikleyicileri belirlemek icin:
- Calisma Alani Ayarlari > Hatirlaticilar > Gecmis bolumune gidin.
- Tetikleyiciye gore siralayin ve son 7 gundeki tetikleyici basina gonderim sayisini hesaplayin.
- Bir tetikleyici tum bildirimlerin %30'undan fazlasindan sorumluysa, kosullarini gozden gecirin.
Gurultulu tetikleyiciler icin yaygin cozumler:
| Sorun | Cozum |
|---|---|
| Kosul belirlenmemis | Kapsami daraltmak icin kosullar ekleyin |
Genis olay turu (property_changed) | Daha spesifik bir olay turune gecin |
| Alicilar tum calisma alani uyelerini iceriyor | Atananlar, Olusturucu veya belirli kullanicilarla daraltın |
| Tetikleyici tum projeleri kapsiyor | Bir proje kosulu ekleyin |
Limitler
| Limit | Deger |
|---|---|
| Calisma alani basina maksimum tetikleyici | 100 |
| Tetikleyici basina maksimum kosul | 10 |
| Tetikleyici basina maksimum belirli kullanici alicisi | 50 |
| Tetikleyici basina maksimum alici turu | 4 turun tamami birlestirilebilir |
Ilgili sayfalar
- Uyarilara genel bakis --- Uyari sistemine giris
- Sablonlar --- E-posta sablon katalogu ve degisken referansi
- Durum eslemeleri --- Durumdan duruma gecis uyarilari
- Bildirim tercihleri --- Kullanici basina kanal yapilandirmasi
- Uyari gecmisi --- Gonderim gunluklerini ve teslimat durumunu goruntuleyin
- En iyi uygulamalar --- Etkili bir bildirim stratejisi tasarlayin
- Otomasyonlar --- Otomatik is akislari icin tetikleyici-eylem kurallari