فصلِ 2
چهار راهِ شروع، و یک تمایزِ ظریف (تست در برابر تولید) که اگر ندانی، ساعتها سرت را میخورد.
| تریگر | کِی شلیک میکند | کاربرد |
|---|---|---|
| Manual | وقتی دکمه را میزنی | ساخت و تست |
| Schedule | طبقِ زمانبندی/کرون | کارهای دورهای |
| Webhook | وقتی یک درخواستِ HTTP برسد | دریافتِ رویداد از بیرون |
| تریگرِ اپ | وقتی رویدادی در سرویس رخ دهد | ایمیلِ جدید، پیامِ تلگرام |
تریگرهای اپ خودشان دو زیرگونه دارند: پوش (push — سرویس به تو خبر میدهد، آنی و ارزان) و پولینگ (polling — n8n هر چند دقیقه میپرسد «چیز جدیدی هست؟»). پوش را ترجیح بده؛ پولینگ سادهتر است ولی تأخیر دارد و منابع میخورد.
برای «هر روز ساعت ۸ صبح» یا «هر ۱۵ دقیقه».
نودِ Schedule Trigger یا با فرمِ ساده کار میکند (هر X دقیقه/ساعت/روز) یا با عبارتِ کرون (cron) برای کنترلِ دقیق. مثالِ کرونِ «هر روزِ کاری ساعت ۹:۳۰ صبح»:
# دقیقه ساعت روزِماه ماه روزِهفته
30 9 * * 1-5کرون روی منطقهٔ زمانیِ نمونهٔ n8n شلیک میکند، نه UTC مگر خودت بگویی. در استقرارِ خودمیزبان با GENERIC_TIMEZONE=Asia/Tehran مطمئن شو ساعتِ ۹ یعنی ۹ بهوقتِ تو — وگرنه کارها ۳٫۵ ساعت جابهجا شلیک میکنند.
قویترین تریگر — هر سرویسی که بتواند یک درخواستِ HTTP بفرستد، میتواند گردشکارت را صدا بزند.
نودِ Webhook یک آدرسِ منحصربهفرد میسازد. وقتی چیزی به آن آدرس POST کند، گردشکار با آن داده شروع میشود. اینجا همان تمایزِ حیاتی است:
| حالت | آدرس | کِی فعال است |
|---|---|---|
| تست | /webhook-test/… | فقط وقتی روی بوم دکمهٔ Listen را زدهای |
| تولید | /webhook/… | همیشه، بهشرطی که گردشکار Active باشد |
«وبهوکم کار نمیکند» تقریباً همیشه یعنی گردشکار active نیست یا داری آدرسِ تست را در تولید صدا میزنی. اول این دو را چک کن.
وقتی وبهوک باید چیزی برگرداند (مثلاً برای یک API که ساختهای).
در پارامترِ Respond تعیین میکنی: فوراً پاسخِ ساده بده، یا با نودِ Respond to Webhook در انتهای گردشکار جوابِ سفارشی برگردان. اینطوری n8n عملاً یک بکاندِ کوچک میشود که میتوانی هر منطقی را پشتِ یک آدرسِ HTTP بگذاری.