castomFLOW

Tetikleyiciler ve eylemler

Ne başlatır, ne yapar, nasıl karar verir

Üç soru var ve bu platformdaki her iş akışı bunların bir cevabıdır. Bu sayfa bir sözlüktür: bir çalıştırmanın başlayabileceği yollar, bir adımın yapabileceği şeyler ve ikisi arasındaki yolu şekillendiren parçalar.

Tetikleyiciler

Bir çalıştırmanın başlamasının dört yolu

Bir zamanlama

Her on dakikada bir, her pazartesi yedide, ayın ilk iş günü. Seçtiğiniz bir saat diliminde ifade edilir; böylece saatlerin geri alınması bir olaya dönüşmez.

Bir webhook

Mağazanız, CRM'iniz, faturalandırma sisteminiz — HTTP isteği yapabilen her şey. İmza doğrulaması varsayılan olarak açıktır ve yük çalıştırmayla birlikte saklanır.

Dünyadan bir olay

Duyurulan bir konser, planlanan bir müsabaka, bir deprem, bir sel uyarısı, aşılan bir hava kalitesi eşiği, bir sağlayıcı kesintisi. 175'ten fazla kaynak, her on ila yirmi dakikada bir yenilenir.

Bir yoklama ya da bir kişi

Bir uç noktayı, bir posta kutusunu veya bir klasörü izleyin ve bir şey değiştiğinde başlayın. Ya da konsoldan elle başlatın, çünkü bazen dürüst cevap budur.

Her şey için tek çalıştırma. Aynı temel olay için iki kez tetiklenen bir tetikleyici — gönderenin yeniden denediği bir webhook, aynı satırı yeniden gören bir yoklama — iki değil, tek bir çalıştırma başlatır. Tekilleştirme, şeyi tanımlayan değere göre yapılır ve gönderenin kimlik anlayışı sizinkinden daha kötüyse bu anahtarı kendiniz belirleyebilirsiniz.

Eylemler

Bir şey yapan adımlar

Bir eylem, çalıştırmanın dışında bir şeyi değiştirir: yazar, gönderir, ücret alır, rezervasyon yapar, getirir veya dosyalara kaydeder. İki tür vardır ve aralarındaki fark bir modelin devrede olup olmamasıdır.

Deterministik eylemler

Bir HTTP uç noktasını çağırın. Kendi sistemlerinizi okuyun ve yazın. Bir yükü yeniden şekillendirin. Referans verilerinde bir şey arayın. E-posta, SMS, push bildirimi veya basılı mektup gönderin. Bir rezervasyon slotu sunun. Ödeme alın. Kısa bir bağlantı oluşturun. Lisansı ekli bir görsel getirin. Bir satır, bir dosya, bir kayıt yazın.

Aynı girdi, aynı çıktı. Çalıştırmaları hiçbir maliyet gerektirmez; bu yüzden dürüst tavır, gerçekten yargı gerektirmeyen her şey için bunları kullanmaktır.

Yapay zekâ eylemleri

Bu mesajı sınıflandırın. O yanıtı taslak olarak hazırlayın. Bir yazışma örgesini üç madde işaretine özetleyin. Yapılandırılmamış bir belgeden alanları çıkarın. Düz yazıyla yazdığınız bir kurala göre seçenekler arasında seçim yapın. Tonu koruyarak çevirin.

Her yapay zekâ adımı döndürdüğü şeyin biçimini bildirir ve çalışma devam etmeden önce dönen değer bu biçime göre doğrulanır. Bir model bozuk bir şey üretirse adım temiz şekilde başarısız olur ve sonraki on iki adımı zehirlemez.

Bir şey olur. Sonra doğru olan bir sonraki şey olur.

Akış: yalnızca çalışmayı düşünen adımlar

Koşullar bir değere göre dallanır. Her iki yol da her zaman tanımlıdır — tanımsız bir else dalı olan koşul, bir otomasyonun kayıtları sessizce kaybetmesinin en yaygın yoludur, bu yüzden burada bir dalı eksik bırakmak mümkün değildir.

Beklemeler bir çalışmayı bir ana ya da bir olaya kadar tutar. Bekleme, çalışmanın kendisine yazılmış bir wake_at değeridir, kuyrukta bekleyen bir satır değildir; bu yüzden bir iş akışı on bin kişiyi üç hafta boyunca hiçbir maliyeti ve kimsenin fark etmesi gerekmeden tutabilir.

Sessiz saatler, giden mesajların sabahın üçünde ulaşmasını engeller. Sessiz pencere içinde bir gönderme adımına ulaşan çalışma, pencerenin kapanmasını bekler. Önem derecesi bunu bilinçli olarak geçersiz kılabilir — insanları uyandırması beklenen uyarılar için.

Bölmeler çalışmaların bir kısmını A yoluna, kalanını B yoluna gönderir; böylece iki konu satırını, iki bekleme süresini ya da iki sıralamayı canlı trafik üzerinde karşılaştırabilirsiniz.

Hedefler, iş akışının varoluş amacını işaretler. Bir çalışma hedefine ulaştığında, aşağıda ne kalmış olursa olsun orada durur — satın alan müşteri üçüncü satın alma hatırlatmasını almaz.

Terk edilmiş sepetHedefe ulaşıldı
  • ⚡TetikleyiciSepet 40 dakikadır boşta. Sepet kimliğine göre tekilleştirildi.
  • ?KoşulSepet 150 zł'nin üzerinde mi? Evet — daha uzun yolu alın.
  • ⏸BekleÇalışma üzerinde bir wake_at. Kuyruk satırı yok, maliyet yok.
  • ABölünKonu satırında 50/50 bölme. Bu çalışma A varyantını aldı.
  • ✉GönderimKısa bağlantılı e-posta, yönlendirmeler alıcı başına sayılır.
  • ★HedefSipariş verildi. Çalışma burada durur; ikinci hatırlatma asla gönderilmez.

Model çağıran adımlar: 1Hiçbir maliyeti olmayan adımlar: 5

Hatalar akışın bir parçasıdır, akışın bir istisnası değil

Başarısız olan bir adımın gidebileceği bir yer vardır. Geri çekilmeli (backoff) yeniden deneme ve kaç kez deneneceğine dair bir sınır. Alternatif bir yol izleyin. Çalışmayı durdurun ve bir kişinin göreceği yere kaydedin. Ya da hiçbir şeye takılmadan devam edin, çünkü o adım isteğe bağlıydı ve sonucun hiç olmamasından çoğunu elde etmek daha iyidir.

Başka birinin sistemine konuşan bir adım için varsayılan davranış birkaç kez yeniden denemek ve sonra durmaktır — çünkü 09:14'te kapalı olan bir sistem genellikle 09:19'da çalışır durumdadır ve durmuş bir çalışma, yarım olmuş bir çalışmadan daha kolay anlaşılır.

Yapamayacaklarınız: bir adım, daha önceki bir adıma geri dönemez. Bir iş akışı yönlendirilmiş bir yoldur, atlama komutu olan bir program değildir. İşiniz gerçekten bir döngü gerektiriyorsa, tek bir adım içinde bir liste üzerinde yineleme yapın ya da her öğe için ayrı bir çalışma başlatın — ikisi de desteklenir ve ikisi de sonradan okumak için bir döngüden daha kolaydır.