n8n
Webhook'lar ücretli plan gerektirir. Limitler ve ayrıntılar için Webhook otomasyonları sayfasına bak.
n8n, kendi sunucunda barındırabileceğin veya bulutta kullanabileceğin bir otomasyon platformudur. TellDone'u n8n'e bir Webhook node'u kullanarak bağla. n8n örneğinin internetten erişilebilir bir HTTPS URL'si olmalı.
Kurulum
n8n'de
- İş akışına bir Webhook node'u ekle
- HTTP Method'u POST olarak ayarla
- Bir yol ayarla (örneğin,
telldone) - (İsteğe bağlı) Header Auth'u etkinleştir: Name =
Authorization, Value = gizli token'ın - Production URL'yi kopyala (test URL'sini değil)
TellDone'da
- Ayarlar > Entegrasyonlar > Webhook Otomasyonları'na git
- Yeni Otomasyon'a dokun ve n8n production URL'sini yapıştır
- n8n'de Header Auth'u etkinleştirdiysen, TellDone'da auth header olarak aynı token'ı gir
- Hangi veri türlerinin gönderileceğini seç
- Kaydet'e dokun, sonra örnek bir payload göndermek için Test'e dokun
n8n yürütme günlüğünü kontrol et - "test": true içeren bir yük görmelisin.
Olay türüne göre yönlendirme
Veriyi olay türüne göre yönlendirmek için Webhook node'undan sonra bir Switch node'u ekle:
- Routing field: gelen verideki
eventdeğeri - Rule 1:
note.created'a eşit - notlar eylemine yönlendir - Rule 2:
task.created'a eşit - görevler eylemine yönlendir - Rule 3:
calendar_event.created'a eşit - takvim eylemine yönlendir - Rule 4:
report.created'a eşit - raporlar eylemine yönlendir
Her Switch çıkışını uygun eylem node'una bağla (Todoist, Google Calendar, Slack vb.).
Yararlı ifadeler
Eylem node'larını yapılandırırken, TellDone verisine erişmek için bu n8n ifadelerini kullan:
| İfade | Açıklama |
|---|---|
{{ $json.data.title }} | Notun, görevin veya etkinliğin başlığı |
{{ $json.data.tags.join(', ') }} | Etiketler virgülle ayrılmış dize olarak |
{{ $json.data.priority }} | Öncelik seviyesi |
{{ $json.data.due_date }} | Son tarih (görevler) |
{{ $json.data.summary }} | AI ile oluşturulmuş özet (notlar) |
{{ $json.event }} | Olay türü |
Her veri türündeki alanların tam listesi için Webhook otomasyonları - Ne gönderilir sayfasına bak.
Test olaylarını filtreleme
Webhook node'unun hemen ardından bir IF node'u ekle:
- Koşul:
{{ $json.test }}true değil - True yolu: iş akışının geri kalanı
- False yolu: No Operation (test olaylarını at)
Örnek iş akışları
- Webhook - Switch - Todoist: öncelik ve son tarihle görevler oluştur
- Webhook - Switch - Google Calendar: saat, konum ve katılımcılarla etkinlikler oluştur
- Webhook - Switch - Slack: günlük raporları bir kanala gönder
- Webhook - Switch - Google Sheets: tüm notları elektronik tablo satırı olarak kaydet
- Webhook - Switch - Notion: notları etiketler ve özetle kaydet
Webhook imzalarını doğrulama (isteğe bağlı)
n8n Code node'u yalnızca ayrıştırılmış JSON nesnesini sunar, ham istek gövdesini değil. İmza doğrulaması, TellDone'un imzaladığı tam ham byte'ları gerektirir. Pratikte, çoğu n8n kullanıcısı HMAC doğrulaması yerine kimlik doğrulama için varsayılan Authorization: <signing_secret> başlığını kullanır.
Production kullanım için, HMAC-SHA256 imzasını kontrol ederek webhook verisinin gerçekten TellDone'dan geldiğini doğrulayabilirsin. Webhook node'unun hemen ardından bir Code node'u ekle:
const crypto = require('crypto');
const secret = 'whsec_your_signing_secret_here';
const signature = $input.first().headers['x-lp-signature'];
const timestamp = $input.first().headers['x-lp-timestamp'];
const body = JSON.stringify($input.first().json);
const expected = 'sha256=' + crypto
.createHmac('sha256', secret)
.update(timestamp + '.' + body)
.digest('hex');
if (signature !== expected) {
throw new Error('Invalid webhook signature');
}
// 5 dakikadan eski zaman damgalarını reddet
const age = Math.floor(Date.now() / 1000) - parseInt(timestamp);
if (age > 300) {
throw new Error('Webhook timestamp too old');
}
return $input.all();
whsec_your_signing_secret_here'i TellDone'da otomasyonu oluştururken kopyaladığın imzalama gizli anahtarıyla değiştir.
Bağlantıyı kes
n8n'e veri göndermeyi durdurmak için:
- n8n'de iş akışını devre dışı bırak veya
- TellDone Ayarlar > Entegrasyonlar > Webhook Otomasyonları'nda otomasyonu devre dışı bırak veya sil
Ayrıca bkz.
- Webhook otomasyonları - yük biçimi, teslim limitleri ve güvenlik
- Zapier - bulut otomasyon alternatifi
- Make - bulut otomasyon alternatifi