Skip to content

Otomasyon Tetikleyicileri

Tetikleyiciler, her otomasyon kuralının başlangıç noktasıdır. Bir tetikleyici, kuralın koşullarını değerlendirmesine ve eylemlerini yürütmesine neden olan olayı tanımlar. SetGet, iş öğelerinin oluşturulmasından durum geçişlerine ve zaman tabanlı zamanlamalara kadar tüm yaşam döngüsünü kapsayan 10 tetikleyici tipi sağlar.

Tetikleyiciler nasıl çalışır

Bir SetGet projesinde bir olay meydana geldiğinde (örneğin, bir iş öğesinin durumu değiştiğinde), otomasyon motoru o projedeki tüm aktif kuralları kontrol eder. Bir kuralın tetikleyicisi olayla eşleşirse, motor kuralın koşullarını değerlendirir. Koşullar sağlanırsa, kuralın eylemleri yürütülür.

Değerlendirme akışı:

  1. Olay meydana gelir projede.
  2. Tetikleyici eşleşmesi: Motor, tetikleyici tipi olayla eşleşen tüm kuralları belirler.
  3. Koşul değerlendirmesi: Eşleşen her kural için, motor koşulları iş öğesinin mevcut durumuna göre değerlendirir.
  4. Eylem yürütme: Koşullar sağlanırsa, eylemler sırayla yürütülür.

İPUCU

Tek bir olay birden fazla kuralla eşleşebilir. Eşleşen tüm kurallar bağımsız olarak yürütülür. Yürütme sırası ve çatışma çözümü hakkında ayrıntılar için Gelişmiş Kalıplar sayfasına bakın.

Tetikleyici özet tablosu

TetikleyiciOlayNe zaman tetiklenir
issue_createdYeni iş öğesiProjede bir iş öğesi oluşturulur
issue_updatedHerhangi bir özellik değişikliğiİş öğesindeki herhangi bir alan değişir
state_changedDurum geçişiBir iş öğesinin iş akışı durumu değişir
priority_changedÖncelik değişikliğiBir iş öğesinin öncelik seviyesi değişir
assignee_changedAtanan değişikliğiAtananlar eklenir veya kaldırılır
label_changedEtiket değişikliğiEtiketler eklenir veya kaldırılır
due_date_passedSon tarih geçmişteBir iş öğesinin son tarihi artik geçmişte
comment_addedYeni yorumBir iş öğesine yorum gönderilir
manualTalep üzerineBir kullanıcı Çalıştır düğmesine tıklar veya API'yi çağırır
scheduledZaman tabanlıBir zamanlama tetiklenir (bir kez, aralık veya cron)

issue_created

Projede nasıl oluşturulduğuna bakılmaksızın (arayüz, API, içe aktarma veya otomasyon) yeni bir iş öğesi oluşturulduğunda tetiklenir.

Ne zaman tetiklenir

  • Bir ekip üyesi arayüz üzerinden bir iş öğesi oluşturur.
  • SetGet API'si aracılığıyla bir iş öğesi oluşturulur.
  • Başka bir otomasyonun eylemi tarafından bir iş öğesi oluşturulur.
  • Hariçi bir kaynaktan bir iş öğesi içe aktarılır.

Bağlamda mevcut veriler

AlanAçıklama
issueOluşturma anındaki tam iş öğesi nesnesi
issue.stateİş öğesine atanan ilk durum
issue.priorityİlk öncelik
issue.assigneesİlk atanan listesi (boş olabilir)
issue.labelsİlk etiket listesi (boş olabilir)
issue.created_byİş öğesini oluşturan kullanıcı
issue.projectİş öğesinin ait olduğu proje

Örnek kullanım senaryosu

Yeni hataları otomatik olarak triyaj sorumlusuna ata:

  • Tetikleyici: issue_created
  • Koşul: Etiket "Bug" içeriyor
  • Eylem: Belirlenen triyaj sorumlusuna ata

Yaygın kalıplar

  • Oluşturma sırasında türe veya etikete göre iş öğelerini otomatik ata.
  • Oluşturucunun rolüne göre ilk önceliği ayarla.
  • Yeni oluşturulan öğeleri mevcut aktif döngüye taşı.
  • Yeni bir iş öğesi göründüğünde proje liderine bildirim gönder.
  • Tüm yeni iş öğelerine varsayılan bir etiket ekle.

UYARI

issue_created tetikleyicisini iş öğesini değiştiren eylemlerle (durum değiştirme gibi) birleştirirken dikkatli olun. Bu değişiklikler issue_updated veya state_changed kurallarını tetikleyebilir ve potansiyel olarak zincirler oluşturabilir. Yeniden giriş korumaları için Gelişmiş Kalıplar sayfasına bakın.


issue_updated

Bir iş öğesindeki herhangi bir özellik değiştiğinde tetiklenir. Bu en geniş kapsamlı tetikleyicidir ve durum değişiklikleri, öncelik değişiklikleri, atanan değişiklikleri, etiket değişiklikleri, başlık düzenlemeleri, açıklama düzenlemeleri, tarih değişiklikleri ve diğer tüm alan değişikliklerini eşleştirir.

Ne zaman tetiklenir

  • İş öğesindeki herhangi bir alan arayüz, API veya otomasyon aracılığıyla değiştirilir.
  • Toplu güncellemeler, etkilenen her iş öğesi için bu olayı bir kez tetikler.

Bağlamda mevcut veriler

AlanAçıklama
issueGüncellemeden sonraki iş öğesi
changesHangi alanlarin değiştiğini, old ve new değerleriyle listeleyen nesne
changes.field_name.oldDeğişen alanın önceki değeri
changes.field_name.newDeğişen alanın yeni değeri
actorDeğişikliği yapan kullanıcı veya sistem

Örnek kullanım senaryosu

Acil öğelerdeki herhangi bir değişiklikte proje yöneticisini bilgilendir:

  • Tetikleyici: issue_updated
  • Koşul: Öncelik "Acil" eşittir
  • Eylem: Proje yöneticisine bildirim gönder

Yaygın kalıplar

  • Denetim kaydı: yüksek öncelikli öğelerdeki her değişikliği takip et.
  • Belirli alanlar değiştiğinde paydaşları bilgilendir.
  • Alan gereksinimlerini zorla (örneğin, son tarih kaldırılirsa yeniden ekle).

İPUCU

Yalnızca belirli bir alan değişikliğiyle ilgileniyorsanız (durum veya öncelik gibi), issue_updated yerine özel tetikleyici tipini (state_changed, priority_changed) tercih edin. Özel tetikleyiciler daha verimlidir çünkü ilgisiz alanlar değiştiğinde motor değerlendirmeyi atlar.


state_changed

Bir iş öğesinin iş akışı durumu bir durumdan diğerine geçtiğinde tetiklenir.

Ne zaman tetiklenir

  • Bir kullanıcı Kanban panosunda bir iş öğesini yeni bir sütuna sürükler.
  • Bir kullanıcı iş öğesi detay paneli üzerinden durumu değiştirir.
  • Bir API çağrısı durum alanını günceller.
  • Başka bir otomasyon durumu değiştirir.

Bağlamda mevcut veriler

AlanAçıklama
issueDurum değişikliğinden sonraki iş öğesi
previous_stateİş öğesinin değişiklikten önceki durumu
new_stateİş öğesinin taşındığı yeni durum
state_groupYeni durumun grubu (birikmiş, başlanmamış, başlamış, tamamlanmış, iptal edilmiş)
actorDurumu değiştiren kullanıcı veya sistem

Örnek kullanım senaryosu

İş "İnceleme Aşamasında" durumuna geçtiğinde otomatik olarak QA incelemecisi ata:

  • Tetikleyici: state_changed
  • Koşul: Yeni durum "İnceleme Aşamasında" eşittir
  • Eylem: Belirlenen QA incelemecisini ata

Yaygın kalıplar

  • İş inceleme durumlarına girdiğinde incelemeci ata.
  • Öğeler "Tamamlandı" veya "İptal Edildi" durumuna geçtiğinde paydaşları bilgilendir.
  • Tamamlanan öğeleri belirli bir döngü veya modüle taşı.
  • Geriye giden öğeleri yükselt (örneğin, "Devam Ediyor"dan "Birikme"ye geri).
  • Terminal durumuna ulaşan öğeleri arşivle.

priority_changed

Bir iş öğesinin öncelik seviyesi değiştiğinde tetiklenir.

Ne zaman tetiklenir

  • Bir kullanıcı arayüz üzerinden önceliği değiştirir.
  • Bir API çağrısı öncelik alanını günceller.
  • Başka bir otomasyon önceliği değiştirir.

Bağlamda mevcut veriler

AlanAçıklama
issueÖncelik değişikliğinden sonraki iş öğesi
previous_priorityDeğişiklikten önceki öncelik (yok, düşük, orta, yüksek, acil)
new_priorityDeğişiklikten sonraki öncelik
actorÖnceliği değiştiren kullanıcı veya sistem

Örnek kullanım senaryosu

Bir öğe Acil'e yükseltildiğinde uyarı gönder:

  • Tetikleyici: priority_changed
  • Koşul: Yeni öncelik "Acil" eşittir
  • Eylem: Mühendislik liderine bildirim gönder ve "yükseltme" etiketini ekle

Yaygın kalıplar

  • Öğeler yükseltildiğinde liderleri bilgilendir.
  • Öncelik "Yüksek" veya "Acil"e ulaştığında otomatik olarak kıdemli bir mühendis ata.
  • Yükseltme yolunu gösteren bir etiket ekle.
  • Acil öğeleri mevcut sprint döngüsüne taşı.

assignee_changed

Bir iş öğesine atananlar eklendiğinde veya kaldırıldığında tetiklenir.

Ne zaman tetiklenir

  • Bir kullanıcı arayüz üzerinden bir üye atar veya atamasını kaldırır.
  • Bir API çağrısı atanan listesini değiştirir.
  • Başka bir otomasyon bir atanan ekler veya kaldırır.

Bağlamda mevcut veriler

AlanAçıklama
issueAtanan değişikliğinden sonraki iş öğesi
added_assigneesAtanan olarak eklenen kullanıcıların listesi
removed_assigneesAtaması kaldırılan kullanıcıların listesi
current_assigneesMevcut atananların tam listesi
actorAtananları değiştiren kullanıcı veya sistem

Örnek kullanım senaryosu

Yeni atananı bilgilendir ve öğeyi "Devam Ediyor" durumuna taşı:

  • Tetikleyici: assignee_changed
  • Koşul: En az bir atanan eklendi VE durum "Birikme"
  • Eylem: Durumu "Devam Ediyor"a değiştir, yeni atananlara bildirim gönder

Yaygın kalıplar

  • Bir atanan eklendiğinde durumu otomatik olarak geçir.
  • Öğeler ekip üyelerine atandığında takım liderlerini bilgilendir.
  • Atama sınırlarını zorla (bir kullanıcının çok fazla ataması varsa bildirim gönder).
  • İş yükü takibi için atama geçmişini kaydet.

label_changed

Bir iş öğesine etiketler eklendiğinde veya kaldırıldığında tetiklenir.

Ne zaman tetiklenir

  • Bir kullanıcı arayüz üzerinden bir etiket ekler veya kaldırır.
  • Bir API çağrısı etiket listesini değiştirir.
  • Başka bir otomasyon bir etiket ekler veya kaldırır.

Bağlamda mevcut veriler

AlanAçıklama
issueEtiket değişikliğinden sonraki iş öğesi
added_labelsEklenen etiketlerin listesi
removed_labelsKaldırılan etiketlerin listesi
current_labelsMevcut etiketlerin tam listesi
actorEtiketleri değiştiren kullanıcı veya sistem

Örnek kullanım senaryosu

"Bug" etiketi eklendiğinde hataları triyaj kuyruğuna yönlendir:

  • Tetikleyici: label_changed
  • Koşul: "Bug" eklenen etiketlerde
  • Eylem: Durumu "Triyaj"a değiştir, triyaj sorumlusuna ata

Yaygın kalıplar

  • Etiketlere göre iş öğelerini belirli iş akışlarına yönlendir.
  • Etiketleri uygulandığında uzman ekipleri bilgilendir (örneğin, "Güvenlik", "Performans").
  • İlişkili etiketleri otomatik ekle ("Kritik Hata" eklemek ayrıca "Bug" da ekler).
  • Çelişen etiketleri otomatik olarak kaldır.

due_date_passed

Bir iş öğesinin son tarihi artik geçmişte olduğunda ve öğe tamamlanmış veya iptal edilmiş durumda olmadığında tetiklenir.

Ne zaman tetiklenir

  • Sistem zamanlayıcısı son tarihleri periyodik olarak kontrol eder (her 15 dakikada bir).
  • Bir iş öğesinin son tarihi geçmişse ve hala aktif bir durum grubundaysa (birikmiş, başlanmamış veya başlamış), tetikleyici çalışır.
  • Bu tetikleyici, her iş öğesi için son tarih geçişi başına bir kez çalışır. Sonraki kontrollerde yeniden çalışmaz.

Bağlamda mevcut veriler

AlanAçıklama
issueSüresi geçmiş iş öğesi
due_dateGeçmiş olan son tarih
days_overdueSon tarihten itibaren geçen gün sayısı
current_stateİş öğesinin mevcut durumu
assigneesMevcut atanan listesi

Örnek kullanım senaryosu

Süresi geçmiş öğeleri Acil önceliğe yükselt ve proje yöneticisini bilgilendir:

  • Tetikleyici: due_date_passed
  • Koşul: Öncelik zaten "Acil" değil
  • Eylem: Önceliği "Acil"e değiştir, proje yöneticisine bildirim gönder

Yaygın kalıplar

  • Süresi geçmiş öğelerin önceliğini yükselt.
  • Atananları ve yöneticileri süresi geçmiş işler hakkında bilgilendir.
  • Görsel takip için "Süresi Geçmiş" etiketi ekle.
  • Öğenin süresinin geçtiğini belirten otomatik bir yorum gönder.

UYARI

due_date_passed tetikleyicisi gerçek zamanlı değil, periyodik bir zamanlamayla çalışır. Son tarihin geçmesi ile tetikleyicinin çalışması arasında 15 dakikaya kadar bir gecikme olabilir.


comment_added

Bir iş öğesine yeni bir yorum gönderildiğinde tetiklenir.

Ne zaman tetiklenir

  • Bir kullanıcı arayüz üzerinden bir yorum gönderir.
  • Bir API çağrısı bir yorum oluşturur.
  • Başka bir otomasyon bir yorum ekler (döngülerden sakınılmalıdır).

Bağlamda mevcut veriler

AlanAçıklama
issueYorumun eklendiği iş öğesi
commentYorum nesnesi (metin, yazar, zaman damgası)
comment.bodyYorumun metin içeriği
comment.authorYorumu gönderen kullanıcı
actorYorum yazarıyla aynı

Örnek kullanım senaryosu

Birisi iş öğesine yorum yaptığinda atananı bilgilendir:

  • Tetikleyici: comment_added
  • Koşul: Yorum yazarı atanan değil
  • Eylem: Tüm atananlara bildirim gönder

Yaygın kalıplar

  • Yeni yorumlar hakkında atananları bilgilendir.
  • Yorumlardaki anahtar kelimeleri tespit et (örneğin, "engellendi", "yardım gerekli") ve harekete geç.
  • Bir yorum belirli bir metin içerdiğinde otomatik olarak etiket ekle.
  • SLA amaçları için yorum aktivitesini takip et.

UYARI

Kuralınız bir eylem olarak yorum ekliyorsa ve başka bir kural comment_added üzerinde tetikleniyorsa, sonsuz döngü oluşturabilirsiniz. Gelişmiş Kalıplar sayfasında açıklanan yeniden giriş korumasını kullanın.


manual

Bir kullanıcı kuralı arayüz veya API üzerinden açıkça tetiklediğinde talep üzerine çalışır. Manuel tetikleyiciler, otomatik olarak çalışmaması gereken ancak tek tıkla eylem olarak kullanılabilir olması gereken kurallar için kullanışlıdır.

Ne zaman tetiklenir

  • Bir kullanıcı Otomasyon ayarları sayfasindaki kuralda Çalıştır düğmesine tıklar.
  • Bir kullanıcı SetGet API POST /api/automations/{rule_id}/execute uç noktası aracılığıyla kuralı çağırır.

Bağlamda mevcut veriler

AlanAçıklama
actorKuralı tetikleyen kullanıcı
projectKuralın ait olduğu proje
scopeKuralın koşullarıyla eşleşen tüm iş öğeleri

Örnek kullanım senaryosu

Talep üzerine eski öğeleri toplu temizle:

  • Tetikleyici: manual
  • Koşul: Durum "Birikme" VE 90 günden fazla süredir güncellenmemiş
  • Eylem: Eşleşen tüm iş öğelerini arşivle

Yaygın kalıplar

  • Eski veya bayat öğelerin talep üzerine temizliği.
  • Yalnızca bir insan karar verdiginde çalıştırılmasi gereken toplu işlemler.
  • Tek tıkla triyaj iş akışları.
  • Otomatik bir tetikleyiciyi etkinleştirmeden önce kuralı test etme.

İPUCU

Manuel tetikleyiciler test için harikadır. Kuralınızı önce manuel tetikleyiciyle oluşturun, beklendiği gibi çalıştığını doğrulayın, ardından otomatik bir tetikleyici tipine geçin.


scheduled

Zaman tabanlı bir zamanlamayla tetiklenir. Zamanlanmış tetikleyiciler, iş öğesi olaylarından bağımsız olarak belirlenen zamanlarda kuralı çalıştırır.

Ne zaman tetiklenir

Üç zamanlama modu mevcuttur:

ModAçıklamaÖrnek
Bir kezBelirli bir tarih ve saatte tek sefer tetiklenir30 Mart 2026 saat 09:00 UTC
AralıkHer N dakika, saat, gün veya haftada tekrar tekrar tetiklenirHer 24 saatte bir
CronBir cron zamanlamasında tetiklenir0 2 * * * (her gün saat 02:00'de)

Bağlamda mevcut veriler

AlanAçıklama
projectKuralın ait olduğu proje
scopeKuralın koşullarıyla eşleşen tüm iş öğeleri
schedule_timeZamanlamanın tetiklendiği zaman
schedule_type"once", "interval" veya "cron"

Örnek kullanım senaryosu

Her Pazartesi sabah 9'da haftalık bayat öğe raporu:

  • Tetikleyici: scheduled (cron: 0 9 * * 1)
  • Koşul: Durum "Devam Ediyor" VE son 7 günde güncelleme yok
  • Eylem: "Bayat" etiketini ekle, proje yöneticisine bildirim gönder

Yaygın kalıplar

  • Süresi geçmiş veya terk edilmiş öğelerin günlük temizliği.
  • Haftalik raporlar ve özetler.
  • Tamamlanan öğelerin aylik arşivlenmesi.
  • Periyodik öncelik incelemeleri.
  • Son tarihleri yaklasan öğeler için zamanlanmış hatırlatmalar.

Üç zamanlama modunun tamamı için ayrıntılı yapılandırma için Zamanlama sayfasına bakın.


Doğru tetikleyiciyi seçme

SenaryoÖnerilen tetikleyici
Yeni iş öğelerine tepki vermeissue_created
Belirli bir alan değişikliğine tepki vermeÖzel tetikleyiciyi kullanın (state_changed, priority_changed, assignee_changed, label_changed)
Herhangi bir değişikliğe tepki vermeissue_updated
Son tarihleri zorlamadue_date_passed
Tartışmaya yanıt vermecomment_added
Talep üzerine çalıştırmamanual
Zamanlamaya göre çalıştırmascheduled

İPUCU

Mümkün olduğunda issue_updated yerine özel tetikleyicileri tercih edin. Özel tetikleyiciler daha verimlidir ve kuralların bir bakista anlaşılmasını kolaylaştırır.

İlgili sayfalar