مستندات n8n
74+ نود

انتظار

Wait

توقف و تأخیر: Wait، Sleep، زمان‌بندی و Resume

منطق و کنترل
مقدماتی
۰ بازدید
n8n 1.0+

نمای کلی

نود Wait چیست؟

نود Wait اجرای Workflow را متوقف می‌کند و پس از شرایط مشخص ادامه می‌دهد.

سه حالت Wait:

  1. 1After Time Interval: توقف به مدت مشخص (ثانیه/دقیقه/ساعت/روز)
  2. 2At Specified Time: ادامه در تاریخ و ساعت مشخص
  3. 3On Webhook Call: ادامه پس از دریافت درخواست Webhook

چرا Wait لازم است؟

  • Rate Limiting: تأخیر بین API calls (مثلاً 1 ثانیه بین هر درخواست)
  • Scheduling: اجرای بخشی از Workflow در زمان خاص
  • Human in the Loop: انتظار برای تأیید انسانی (Webhook)
  • Retry with Delay: تأخیر قبل از تلاش مجدد
  • Batch Processing: تأخیر بین دسته‌ها در Loop
  • Polling: بررسی دوره‌ای وضعیت

تفاوت Wait با Cron:

  • Wait: توقف وسط Workflow (inline delay)
  • Cron/Schedule: شروع Workflow در زمان مشخص

نکته مهم:

Wait در حالت زمانی، Workflow execution را "به خواب" می‌برد. n8n داده‌ها را ذخیره کرده و پس از زمان مشخص Workflow را از همان نقطه ادامه می‌دهد.

احراز هویت

بدون نیاز به احراز هویت - نود Wait یک نود داخلی n8n است.

عملیات‌های موجود

1

تأخیر زمانی

توقف Workflow به مدت مشخص. پس از اتمام زمان، اجرا ادامه می‌یابد.

2

در زمان مشخص

ادامه Workflow در تاریخ و ساعت مشخص. مناسب برای زمان‌بندی اقدامات آینده.

3

انتظار Webhook

توقف تا دریافت درخواست Webhook. مناسب برای تأیید انسانی و callback.

4

تأخیر تصادفی

تأخیر تصادفی بین حداقل و حداکثر. مناسب برای شبیه‌سازی رفتار انسانی.

5

تأخیر بر اساس Expression

محاسبه مدت تأخیر با Expression. مناسب برای تأخیر متغیر بر اساس داده.

کاربردهای متداول

موارد استفاده رایج

۱. Rate Limiting API

Loop > HTTP Request > Wait 1 second > بازگشت به Loop. جلوگیری از 429 Too Many Requests.

۲. ارسال ایمیل با تأخیر

ارسال ایمیل خوش‌آمدگویی > Wait 24h > ارسال ایمیل آموزشی > Wait 3 days > ارسال ایمیل پیشنهاد.

۳. تأیید انسانی (Human in the Loop)

درخواست مرخصی > ارسال به مدیر (ایمیل با لینک تأیید) > Wait for Webhook > ثبت نتیجه.

۴. Polling وضعیت

ارسال سفارش > Wait 5 min > بررسی وضعیت > اگر "pending": بازگشت به Wait > اگر "done": ادامه.

۵. Batch با تأخیر

Loop (batch 10) > پردازش > Wait 10s > batch بعدی. مدیریت Rate Limit.

۶. ارسال پیام زمان‌بندی‌شده

ساخت پیام > Wait تا ساعت 9 صبح > ارسال در Slack/Telegram.

۷. Retry with Backoff

خطا > Wait 1s > تلاش دوم > Wait 4s > تلاش سوم > Wait 16s (Exponential Backoff).

۸. یادآوری

ثبت Task > Wait تا Deadline - 1 day > ارسال یادآوری.

۹. A/B Testing

ارسال نسخه A > Wait 24h > بررسی نتایج > ارسال نسخه B > Wait 24h > مقایسه.

۱۰. کمپین Drip Email

ثبت‌نام > ایمیل ۱ > Wait 2d > ایمیل ۲ > Wait 3d > ایمیل ۳ > Wait 5d > ایمیل ۴.

۱۱. انتظار پرداخت

ایجاد فاکتور > Wait for Webhook (Payment Gateway Callback) > ثبت پرداخت.

نکات حرفه‌ای

نکات و ترفندها

Rate Limiting محاسبه

  • API limit: 100 req/min
  • Delay = 60/100 = 0.6 ثانیه
  • Safety margin: 1 ثانیه بین هر درخواست
  • یا Batch 10 + Wait 6 ثانیه

Exponential Backoff

  • تلاش ۱: Wait 1s
  • تلاش ۲: Wait 2s
  • تلاش ۳: Wait 4s
  • تلاش ۴: Wait 8s
  • فرمول: delay = baseDelay * 2^(attempt-1)

Human in the Loop Pattern

  1. 1ارسال ایمیل/Slack با لینک‌های Approve/Reject
  2. 2Wait for Webhook
  3. 3لینک Approve: POST webhook-url?action=approve
  4. 4لینک Reject: POST webhook-url?action=reject
  5. 5IF: action === "approve"

Wait + Loop = Rate Limiter

بهترین الگو:

  1. 1Loop: batch size 1
  2. 2API Call
  3. 3Wait: 1 second
  4. 4بازگشت به Loop

زمان‌بندی هوشمند

  • صبح (۹-۱۲): ارسال ایمیل‌های تجاری
  • بعدازظهر (۱۴-۱۷): پیگیری
  • شب: پشتیبان‌گیری و گزارش
  • آخر هفته: Skip (IF + Wait)

Drip Campaign Pattern

ثبت‌نام → ایمیل خوش‌آمدگویی → Wait 1 day → ایمیل معرفی → Wait 3 days → ایمیل آموزشی → Wait 7 days → ایمیل پیشنهاد → Wait 14 days → ایمیل بازخورد

ادغام با سایر نودها

  • Loop: Rate Limiting بین batches
  • IF: شرط ادامه بعد از Wait
  • HTTP Request: API call بعد از delay
  • Email/Slack: ارسال بعد از زمان‌بندی
  • Error Trigger: Retry after delay

Wait vs Schedule

  • Wait: تأخیر وسط Workflow (inline)
  • Schedule Trigger: شروع Workflow در زمان مشخص
  • Cron Trigger: اجرای تکراری (هر ساعت، هر روز)

حداکثر Wait

  • تئوری: بدون محدودیت
  • عملی: چند روز تا یک هفته
  • برای Wait طولانی‌تر: از Schedule Trigger استفاده کنید
  • Wait طولانی حافظه و ذخیره‌سازی مصرف می‌کند

رفع مشکلات

عیب‌یابی

۱. Wait هرگز ادامه نمی‌یابد

مشکل: Workflow بعد از Wait ادامه پیدا نمی‌کند راه‌حل: n8n باید در حالت Production باشد (نه Manual). بررسی کنید n8n در حال اجرا بماند. از n8n cloud یا PM2/systemd استفاده کنید.

۲. Wait Webhook دریافت نمی‌شود

مشکل: Webhook URL جواب نمی‌دهد راه‌حل: URL صحیح باشد (production URL). n8n Webhook URL در دسترس باشد. HTTP method درست باشد.

۳. زمان Wait دقیق نیست

مشکل: Workflow زودتر یا دیرتر از انتظار ادامه می‌یابد راه‌حل: n8n هر چند دقیقه sleeping workflows را بررسی می‌کند. برای دقت بالا از Cron استفاده کنید. Timezone بررسی شود.

۴. داده‌ها بعد از Wait از بین رفتند

مشکل: متغیرها بعد از Wait خالی هستند راه‌حل: n8n داده‌ها را ذخیره و بازیابی می‌کند. اما External connections (مثل DB connection) بسته می‌شوند. دوباره اتصال بزنید.

۵. حافظه مصرف می‌شود

مشکل: Workflowهای زیاد در حالت Wait حافظه مصرف می‌کنند راه‌حل: تعداد Workflow‌های همزمان Wait را محدود کنید. از Wait طولانی (>7 روز) اجتناب کنید. Timeout تنظیم کنید.

۶. Wait در Manual Execution کار نمی‌کند

مشکل: Wait در حالت Test/Manual اجرا نمی‌شود راه‌حل: Wait فقط در Production mode کامل کار می‌کند. در Manual mode، Wait skip می‌شود یا مقدار کمی صبر می‌کند.

۷. Execution Timeout

مشکل: Workflow قبل از پایان Wait به timeout می‌رسد راه‌حل: Wait طولانی از execution time جداست. اما n8n execution timeout باید بزرگ‌تر از Wait باشد.

اشتراک‌گذاری:

آیا این مستندات مفید بود؟