Pipedream ile Geliştirilmiş Yardımcı Eylemler

Eğer söyleyemezsen, büyük bir hayranıyım Ulaşılması mümkün olmayan istek, ancak türünün tek hizmeti değil. Herhangi bir şey varsa, oradaki alternatiflere gözlerimi açtığı ve “düşük kodlu/kodsuz” alanı daha da takdir etmemi sağladığı için Pipedream’i daha çok seviyorum. Özellikle, kazmaktan gerçekten zevk alıyorum Microsoft Güç Otomatikleştirme ve bu beni Pipedream’e nelerin getirilebileceğini düşündürdü.
Power Automate’in gerçekten iyi bir iş çıkardığı yerlerden biri, iş akışlarınızın akışını ve yürütülmesini denetlemek için mantıksal eylemler sağlamaktır. Örneğin, bir iş akışının bitip bitmeyeceğini belirleyen tuhaf bir özel mantığınız varsa, bunu herhangi bir kod yazmadan tanımlayabilirsiniz. Bu, Pipedream’de de kesinlikle mümkündü, ancak genellikle kısa kod tabanlı bir adımla. Bunu umursamıyorum, ama umduğum şeylerden biri, bu tür şeyleri kod olmadan tanımlamamıza izin verecek daha ‘faydalı’ tip eylemlerdi.
Geçtiğimiz birkaç hafta içinde, Pipedream çalışanları bu alanda vurgulamak istediğim üç farklı özellik yayınladı. Çoğunlukla, bunlar daha önce yapabileceğiniz şeylerdi (biri hariç), şimdi daha resmi bir şekilde uygulanıyor. Hadi bir bakalım!
Değişkenleri Dışa Aktarma
Pipedream iş akışlarında yaptığım yaygın bir şey (ve PD ile ilk oynamaya başladığımda bana bunu gösterdiği için Dylan Sather’a teşekkürler), iş akışım için farklı sabitler yapılandırmak üzere bir kod adımı tanımlamaktır. API sırları gibi şeylerden bahsetmiyorum, bunun için ortam değişkenlerini kullanırsınız, bunun yerine iş akışında daha sonra kullanmak istediğiniz ve değiştirilmesi kolay olması için kendileri tarafından tanımlanmasını istediğiniz değerleri kullanırsınız. Örneğin, bir değeri tanımlayan eski bir iş akışından bir adım:
Daha sonra iş akışımda şöyle atıfta bulundum:
if(steps.analyze_text.sentiment.comparative > steps.constants.THRESHOLD)
$end('Not unhappy enough.');
Sonuç olarak, nispeten basit, ancak yeni “Değişkenleri Dışa Aktar” eylemiyle kod adımını atlayabilirsiniz.
Kullanmak için, önce biraz garip olduğunu unutmayın. Yeni bir adım eklerken, ‘dışa aktar’ için arama yaparsanız bulamazsınız. Bunun yerine, arama alanına “yardımcı” yazın:
“Yardımcı İşlevler”e tıklayın, bu ilk öğe olacaktır:
Bunu seçin ve yeni bir export_variables
eylem. Şimdi – dediğim gibi – bu biraz garipti. Aklımda, bu tür bir eylem, mevcut olanın yalnızca yerel bir parçası olan Kod adımı gibiydi. Bunu Pipedream gevşekliğinde bildirdim ve Dylan bunun farkında olduklarını ve bunu geliştirmek için çalıştıklarını söyledi. Bu yüzden, bunu yayınladıktan bir süre sonra okuyorsanız, eklemenin daha kolay olabileceğini unutmayın.
Pekala, eklendikten sonra size boş bir “Yapılandırma” nesnesi verilir:
Oraya tıklarsanız, ad/değer çiftlerini girmeye başlayabilirsiniz. Örneğin, işte üç anahtar ve değer:
Ayrıca, eylemi şu şekilde yeniden adlandırdığımı unutmayın: myconfig
. Bunu yaptıktan sonra, değerlere şu şekilde başvurabilirsiniz: steps.myconfig.config
. Yani mesela: steps.myconfig.config.name
dönecekti ray
.
Basit, değil mi? Bunu, gelecekteki adımların başvurması için başlangıçta tanımlanan yapılandırma değerlerine ihtiyaç duyan iş akışları için kesinlikle tavsiye ederim.
Filtreli İş Akışlarını Durdurma
“Filtre”nin en iyi ad olduğundan emin değilim, ancak bir iş akışını bir koşula dayalı olarak dinamik olarak sonlandırmanız gerekirse, yeni Filtre eylemi size yardımcı olacaktır. Önceki örnekte olduğu gibi, bu daha önce kısa bir kod adımıyla yapabileceğiniz bir şeydir. Başlamak için sadece filtreyi arayabilirsiniz:
Bunu seçmek sizi üç seçeneğe götürecektir:
Temelde aynı şey oldukları için ikinci ve üçüncü ile başlayalım. Yalnızca X doğruysa devam etmek istiyorsanız, ikinciyi seçersiniz. X doğruysa iptal etmek istiyorsanız, sonuncuyu seçersiniz.
Koşullar oluştururken, türü belirterek başlarsınız – metin, sayı, tarih, boole, boş, dizi veya nesne. Bu daha sonra koşulların türünü belirler. Örneğin, metin karşılaştırmaları yapıyorsanız, içerir, içermez, eşleşir, eşleşmez, başlar veya biter seçeneklerinden birini seçebilirsiniz. Sayılar için beklediğinizi alırsınız: <, <=, >, >=, =.
Testim için metin seçtim ve şunu söylemek istedim: name
değer ‘raymond’ içindeydi, devam edin. Bu şekilde yapılandırdım ve test ettim – beklediğimi alamadım:
Konfigürasyonun beklediğimin tersi olduğu ortaya çıktı. “Karşılaştırılacak değer” dizesinin “Değerlendirilecek değer” içinde olup olmadığı kontrol edildi. Belki tuhafım ama tam tersi olacağını düşündüm. Test etmek için “raymond”u “ra” olarak değiştirdim ve devam edeceğini onayladım:
Filtre eylemleri listesindeki ilk seçenek özel koşuldan bahsetmiştir ve bu size biraz daha fazla esneklik sağlar. Dinamik bir neden ve dinamik bir koşul girebilirsiniz. İşte durumumun daha önce tanımlanan bir yaş değerine dayandığı bir örnek.
Bir kez daha, bu bir kod adımında yapılabilir, ancak bunu uygun bir eylem olarak tercih ederim.
Gecikme ile işleri ertelemek
Bu sonuncusu da oldukça basit ama bildiğim kadarıyla eklenmeden önce yapılması imkansız. Yeni Gecikme eylemi, iş akışının geri kalanını belirli bir milisaniye sayısı kadar geciktirmenize olanak tanır. Filtrede olduğu gibi, “gecikme” için arama yaparak ekleyin:
Ekledikten sonra – daha sonra bir süre ve birim belirlersiniz. Birim milisaniye, saniye, dakika ve hatta saat olabilir. Ve şunu elde edin – maksimum bir yıl kadar yüksek olabilir. Vay. İşte yapılandırılmış bir gecikme eylemi örneği:
Gecikmeyi kodda da yapabileceğinizi unutmayın:
$.flow.delay(60 * 1000);
Pipedream çalışanları, ilk eylemden 30 dakika sonra bir iş akışını geciktirdikleri harika bir blog yazısı demosu yaptılar: Postmark ile yeni kullanıcılara gecikmeli karşılama e-postaları gönderin. (Genel bir bilgi olarak, yer imlerine Blog genel olarak, bazı harika örnekleri var.)
Sarmak
Başta söylediğim gibi, Pipedream’in iş akışlarında daha fazla ‘meta’ seviye yapılar için destek eklediğini görmeyi seviyorum. Power Automate (şimdiki değeri) çok dallanma koşulları ve döngülerle iş akışları oluşturmanıza izin verir ve genel olarak hizmetin esnekliğini ve kullanılabilirliğini geliştirdiği için Pipedream’in bu yönde devam ettiğini görmek isterim.
fotoğrafı çeken Alexander Schimmeck üzerinde Sıçramayı kaldır