Skip to content
OrqLabs

Mesajlaşma (Messaging) node'ları

Send message, Send email, Broadcast campaign ve Hand off to human node'larının parametreleri, WhatsApp şablon kuralları ve örnekler.

12 min Last updated:

This guide is in Turkish

Our guides are written in Turkish first; English versions are on the way. Your browser can translate this page, and the app itself is fully available in English.

On this page
  1. Kısaca
  2. Teknik ayrıntılar
  3. Send message (messaging.send)
  4. WhatsApp 24 saat kuralı
  5. Send email (messaging.sendEmail)
  6. Broadcast campaign (messaging.broadcast)
  7. Hand off to human (messaging.handoff)
  8. İpuçları ve sınırlar
  9. Sık sorulan sorular
  10. Sonraki adım

Bu rehberde: WhatsApp, Telegram, Slack, Discord, Messenger, SMS ve e-posta ile mesaj gönderen, toplu kampanya yapan ve konuşmayı insana devreden kutuları öğrenirsiniz. WhatsApp'ın 24 saat kuralı da burada.

⏱ 12 dakika

Kısaca

Mesajlaşma kutuları bağlı kanallarınıza yazar. Gelen mesajları yakalamak için Mesaj geldi tetikleyicisi kullanılır. Bir kutu, mesaj sağlayıcı tarafından kabul edildiğinde başarılı sayılır.

Chatbot akışı: mesaj gelir, bot yanıt verir veya insana devreder, gerekirse müşteri adayı oluşturur.
Chatbot akışı: mesaj gelir, bot yanıt verir veya insana devreder, gerekirse müşteri adayı oluşturur.
Gelen Kutusu: ① konuşma listesi, ② mesaj akışı, ③ kişi/aday paneli, ④ Devral, ⑤ AI yanıt öner.
Gelen Kutusu: ① konuşma listesi, ② mesaj akışı, ③ kişi/aday paneli, ④ Devral, ⑤ AI yanıt öner.

Teknik ayrıntılar

Bu node'lar bağlı mesajlaşma kanallarına yazar: WhatsApp, Telegram, Slack, Discord, Messenger, SMS ve e-posta. Gelen mesajlar için trigger.messageReceived kullanılır (Tetikleyiciler). Gönderimler messaging kuyruğuna alınır; node, kuyruğa yazıldığında değil, sağlayıcı kabul ettiğinde başarılı sayılır.

NodeTipGirdiÇıktı handle'larıEntegrasyonModel
Send messagemessaging.send1main, errorWHATSAPP, TELEGRAM, SLACK, DISCORD, MESSENGER, TWILIO_SMS–
Send emailmessaging.sendEmail1main, errorEMAIL_SMTP, RESEND–
Broadcast campaignmessaging.broadcast1mainWHATSAPP, TELEGRAM, EMAIL_SMTP, RESEND, TWILIO_SMS–
Hand off to humanmessaging.handoff1main––

Send message (messaging.send)

Tek alıcıya mesaj gönderir. Konuşma (Conversation) kaydı varsa mesaj oraya eklenir ve message.sent olayı yayınlanır.

AnahtarEtiketTürZorunluVarsayılanNotlar
channelChannelselectEvet–WHATSAPP, TELEGRAM, SLACK, DISCORD, MESSENGER, TWILIO_SMS (EMAIL bu node'da yok)
toRecipient (phone / chat id / channel)expressionEvet{{ $json.contactId }}WhatsApp/SMS: E.164 numara (905551112233); Telegram: chat id; Slack: kanal id veya @kullanıcı; Discord: kanal id; Messenger: PSID
textMessageexpressionEvet{{ $json.reply }}Markdown Slack/Telegram/Discord'da kısmen desteklenir
templateNameWhatsApp template name (outside 24h window)stringHayır–Yalnızca channel = WHATSAPP iken görünür
templateParamsTemplate parametersexpressionHayır–Yalnızca channel = WHATSAPP; {{1}}, {{2}} sırasıyla dizi: ["{{ $json.name }}", "{{ $json.date }}"]
mediaUrlMedia URL (optional)expressionHayır–Görsel/belge; herkese açık URL

Çıktı: item + messageId, externalMessageId, sentAt, channel. Hatada error handle'ı: { error: { code, message, retryable } }.

WhatsApp 24 saat kuralı

Müşteri son 24 saat içinde yazmadıysa serbest metin gönderilemez (hata 131047). Bu durumda templateName (WhatsApp Manager'da onaylı şablon) ve templateParams zorunludur; text yok sayılır. Node, konuşma penceresini bilir: pencere açıksa text, kapalıysa şablon kullanır; şablon tanımlı değilse INVALID döner. Ayrıntı: WhatsApp şablonları ve 24 saat penceresi.

Örnek 1 – chatbot yanıtı (şablondan): channel {{ $json.channel }} (tetikleyiciden gelen kanal), to {{ $json.contactId }}, text {{ $json.reply }}.

Örnek 2 – WhatsApp randevu hatırlatması: channel WHATSAPP, to {{ $json.phone }}, templateName appointment_reminder, templateParams ["{{ $json.name }}", "{{ $date($json.appointmentAt, "DD.MM.YYYY HH:mm") }}"].

Örnek 3 – Slack'e rapor: channel SLACK, to C0123ABCD, text "*{{ $json.title }}*\n{{ $json.summary }}".

Send email (messaging.sendEmail)

SMTP veya Resend hesabıyla e-posta gönderir.

AnahtarEtiketTürZorunluVarsayılanNotlar
toToexpressionEvet{{ $json.email }}Virgülle birden fazla adres
subjectSubjectexpressionEvet–
htmlBody (HTML or markdown)textEvet–Markdown yazarsanız HTML'e çevrilir; düz metin sürümü otomatik üretilir
replyToReply-tostringHayır–Yanıtların düşeceği adres
trackRepliesTrack replies into conversationsbooleanHayırtrueYanıtlar (Reply-To/Message-ID eşleşmesiyle) konuşma olarak Gelen Kutusu'na düşer, lead REPLIED olur

Çıktı: item + messageId, sentAt, conversationId (trackReplies açıksa). Gönderen adresi entegrasyonun From address alanıdır. Abonelikten çıkma linki için {{ $json.unsubscribeUrl }} alanı outreach/broadcast item'larında hazır gelir.

Örnek – form teşekkür e-postası:

trigger.form → leads.create → messaging.sendEmail
  to: {{ $json.email }}
  subject: Talebinizi aldık, {{ $json.name.split(" ")[0] }}
  html: |
    Merhaba {{ $json.name }},
    
    {{ $project.name }} ekibi olarak mesajınızı aldık. En geç 1 iş günü içinde dönüş yapacağız.
  replyTo: satis@ornek.com

Broadcast campaign (messaging.broadcast)

Bir lead segmentine hız sınırlı, opt-out'a saygılı toplu mesaj gönderir ve bir Kampanya kaydı oluşturur (Kampanyalar sayfasında ilerleme, teslim ve yanıt istatistikleri).

AnahtarEtiketTürZorunluVarsayılanNotlar
channelChannelselectEvet–WHATSAPP, TELEGRAM, SLACK, DISCORD, MESSENGER, EMAIL, TWILIO_SMS (entegrasyon: WHATSAPP, TELEGRAM, EMAIL_SMTP, RESEND, TWILIO_SMS)
segmentLead segment (filter JSON)jsonHayır{ "status": ["QUALIFIED"], "tags": [] }Alanlar: status[], tags[], minScore, projectId, notContactedDays, source
templateMessage templatetextEvet–Lead alanlarıyla ifade: Merhaba {{ $json.name }}, …. WhatsApp'ta onaylı şablon adı templateName olarak segment yerine json.templateName ile de verilebilir
perMinuteRate (messages / minute)numberHayır20Sağlayıcı limitini aşmayın (WhatsApp 80/s teknik, kalite için 20-60/dk önerilir)
campaignNameCampaign namestringHayır–Boşsa iş akışı adı + tarih

Gelen item'lar segmenti genişletir: node'a leads.query çıktısı bağlarsanız o lead'ler kullanılır, aksi halde segment filtresi çalışır. Opt-out etiketi (unsubscribed) veya doNotContact: true olan lead'ler otomatik atlanır. Çıktı: tek item { campaignId, total, queued, skipped, skippedReasons }. Gönderimler campaigns kuyruğunda ilerler; campaign.started / campaign.finished olayları yayınlanır.

Örnek – WhatsApp kampanyası:

trigger.manual → leads.query (status [QUALIFIED, CONTACTED], tags [webinar], minScore 60)
→ messaging.broadcast
   channel: WHATSAPP
   template: Merhaba {{ $json.name }}, {{ $vars.eventName }} webinarımız {{ $vars.eventDate }} tarihinde. Katılım linki: {{ $vars.link }}
   perMinute: 30
   campaignName: Webinar duyurusu – {{ $today }}

WhatsApp'ta pazarlama mesajı için alıcının opt-in'i ve onaylı Marketing şablonu gerekir; bkz. Broadcast kampanyaları ve izin.

Hand off to human (messaging.handoff)

Konuşmayı HUMAN durumuna alır, botu durdurur (trigger.messageReceived bu konuşma için tetiklenmez), ekibe bildirir ve conversation.handoff olayı yayınlar.

AnahtarEtiketTürZorunluVarsayılanNotlar
conversationIdConversation idexpressionEvet{{ $json.conversationId }}Tetikleyici veya chatbot çıktısından
reasonReasonexpressionHayır{{ $json.reason }}Gelen Kutusu'nda ve bildirimde görünür (chatbot handoffReason üretir)
notifyViaNotify viamultiselectHayır["inapp"]inapp, email, slack

Çıktı: item + conversationStatus: "HUMAN", assignedToId (atama kuralı varsa). İnsan işini bitirince Gelen Kutusu'ndan Bota geri ver (POST /conversations/:id/release).

Örnek: Chatbot şablonu: logic.if ({{ $json.handoff === true }}) → true → messaging.handoff (reason {{ $json.handoffReason }}, notifyVia [inapp, email]). Müşteriye bilgi vermek için ardından messaging.send (text "Sizi bir temsilcimize bağlıyorum, {{ $json.workingHoursMessage ?? "en kısa sürede dönüş yapacağız" }}.").

İpuçları ve sınırlar

  • Test modunda tüm gönderim node'ları dry-run olur; messaging.handoff gerçek durum değişikliği yapar.
  • Alıcı biçimleri: WhatsApp 905551112233 (artı işareti olmadan da kabul edilir), Twilio +905551112233, Telegram sayısal chat id (kanal için -100…), Slack C…/U…, Discord kanal id.
  • Slack ve Discord'da bot ilgili kanala eklenmiş olmalıdır.
  • E-posta gönderim limitleri sağlayıcıya bağlıdır (Gmail Workspace 2.000/gün, Resend planı); broadcast perMinute bunu aşmasın.
  • Konuşma tabanlı metrikler (messages.outbound, messages.bot_replies, conversations.handoffs) bu node'lardan beslenir.
  • Yasal: ticari elektronik ileti için alıcı onayı ve İYS kaydı (Türkiye) / GDPR onayı gerekir; STOP, İPTAL, unsubscribe yanıtları otomatik opt-out yapar.

Sık sorulan sorular

Müşteriye ilk mesajı WhatsApp'tan atabilir miyim? Yalnızca onaylı şablonla ve müşterinin önceden onayıyla. Bkz. WhatsApp şablonları.

Test modunda mesaj gider mi? Hayır; gönderim kutuları kuru çalışır. İnsana devret ise gerçek durum değişikliği yapar.

Toplu mesajda çıkış yapanlara da gider mi? Hayır. Çıkış etiketi veya "iletişim kurma" işareti olan adaylar otomatik atlanır.

Sonraki adım

Get started with OrqLabs

Build your first workflow today

Start on the free plan: connect your accounts, pick a template and stay in control with approval steps. No credit card required.