Pipedream Nedir? Nasıl Kullanılır?
Sunucular, uygulamalar, eklentiler, kurulumlar, yapılandırmalar, paketler derken anlık ya da basit bir ihtiyacın çözülmesi veya bir ürünün hayata geçirilmesi gerekenden fazla zahmete neden olabiliyor.
Genelde framework‘ler bu amaç doğrultusunda, prototip hazırlama sürecini kolaylaştırma iddiası ile ortaya çıksa da kullanım için öncesinde bir öğrenme sürecini de bareberinde getiriyor; kimi oldukça kısa sürede öğrenilebilirken kimileri için süreç oldukça can sıkıcı hale gelebiliyor. Bu kısa süreci web teknolojilerine ilgi duyan hemen herkesin yaşadığını düşünüyorum.
Son kullanıcılar için IFTTT, Zapier, Automate.io, Workflow.is gibi agentotomasyon çözümleri mevcut olsa da yapıları gereği çok sınırlı bir şekilde müdahale edilebilemkte. Geliştirici tarafında karşılaşılan sınırlandırmalar, bizi yazının giriş bölümünde de bahsi geçtiği üzere sunucu ve kurulum işlemlerine zorlamakta. Peki, bir çözüm yolu yok mu?
Pipedream
Pipedream bir entegrasyon / otomasyon platformu. İş akışı oluşturarak sunucu ve altyapı sınırlandırmaları olmaksızın uygulamalar ve API‘ler arasında entegrasyonlar gerçekleştirebilmemizi sağlamakta1 2. Pipedream yapılabilecekleri bir liste haline getirecek olursak;
- İş akışları oluşturabilir ve bu akışları bir uygulama/servis kaynağı (aws, github, google calendar, http, rss, twitter vb.), HTTP istekleri ve kancalar, Cron tanımları, e-posta ve Pipedream SDK ile tetikleyebiliriz.
- İş akışlarına kodlarla müdahale edebiliriz.
- Sunucu ve bulut kaynakları olmadan iş akışlarını kurup yönetebiliriz.
Bir örnek ile maddeleri izah edecek olursak, Pipedream üzerinden cronjob tetikleyicisi ile XML dosyasını edinebilir, XML içeriğine Node.js üzerinden modüller ile müdahale edebilir ve sonucun yanıt olarak bir başka servise kolaylıkla ve herhangi bir kurulum gerekmeksizin iletilmesini sağlayabiliriz. Elbette yapılabileceklerin neredeyse bir sınırı yok. Kullanıma hazır iş akışları için Explore3 bölümünü inceleyebilir, tartışmalar için Slack4 topluluğuna katılabilirsiniz.
Ayrıca, Huginn5, Syndesis6 ve Zenaton7 gibi benzer uygulamaları da incelemek isteyebilirsiniz.
Pipedream Kullanımı
Apps ile GitHub, Slack, Google Sheets, Reddit gibi pek çok uygulama/servis ile Pipedream hesabınızı ilişkilendirebilirsiniz. İlişkilendirmenin ardından artık iş akışı içerisinde bu uygulama/servise ait verileri kullanabilmektesiniz.
Sources ile uygulamalardaki etkinlikleri kaynak olarak alabilirsiniz. Örneğin, 15 dakikada bir bir kullanıcı tarafından atılan tweet’teki bir kelimeyi tetikleyici olarak alabilirsiniz ve üzerine bir iş akışı inşaa edebilirsiniz.
Actions, iş akışı içerisindeki aksiyonlara ulaşabileceğinizi ve bu aksiyonları farklı iş akışlarına dahil edebilmenizi sağlar.
SQL alanı ise bu alana ilettiğimiz JSON içeriğini yönetebilmemizi sağlar. Pipedream, JSON şemasını otomatik bir şekilde oluşturur. Dolayısıyla bir tablo oluşturmak zorunda olmadan SQL sorguları üretebiliriz.
Pipedream ile ilgili daha detaylı bilgi için Docs8 başlıklarına göz atabilirsiniz. İlerleyn zaman içerisinde oluşturduğum çeşitli iş akışlarını da burada listeleyeceğim.