ایجاد و توسعه نودهای سفارشی در n8n

Calendar

انتشار:

1404/06/09
Update Calendar

به روز رسانی:

1404/07/15

نود سفارشی در n8n چیست؟

در n8n هر کاری که انجام می‌دهید با استفاده از نود (Node) اتفاق می‌افتد. مثلا اگر بخواهید به گوگل شیت وصل شوید، باید از نود Google Sheets استفاده کنید. اما بعضی وقت‌ها سرویس یا ابزاری که می‌خواهید در n8n استفاده کنید، نود آماده ندارد. در این حالت می‌توانید خودتان یک نود مخصوص همان سرویس بسازید. به این نودها نود سفارشی (Custom Node) می‌گویند. یعنی نودی که شما آن را طراحی کرده‌اید تا دقیقا همان کاری را انجام دهد که نیاز دارید.

چرا باید نود سفارشی بسازیم؟

فرض کنید یک وب‌سایت فروشگاهی دارید که API اختصاصی خودش را دارد. هیچ نود آماده‌ای برای این API در n8n وجود ندارد. اگر نود سفارشی نداشته باشید، مجبور هستید با ابزارهایی مانند HTTP Request مستقیم به API وصل شوید که کمی پیچیده است. ولی وقتی نود سفارشی بسازید، همان API مثل یک نود آماده در لیست n8n ظاهر می‌شود و استفاده از آن ساده‌تر خواهد بود.

ساختار یک نود سفارشی چگونه است؟

هر نود سفارشی از دو بخش اصلی تشکیل می‌شود. بخش اول مشخصات نود یا Metadata است که شامل نام نود، توضیح آن، دسته‌بندی (مثلا نودهای وب، نودهای پردازشی و غیره) و آیکون می‌شود. بخش دوم منطق اجرایی یا Logic است که تعیین می‌کند نود دقیقا چه کاری انجام دهد. مثلا داده ورودی را بگیرد، پردازش کند و خروجی برگرداند. همه این موارد در قالب یک فایل کدنویسی (جاوااسکریپت یا تایپ‌اسکریپت) نوشته می‌شوند.

 یک مثال خیلی ساده

فرض کنید می‌خواهید یک نود بسازید که تنها کلمه «Hello World» را برگرداند. کدی که برای این نود نوشته می‌شود بسیار ساده است و به شکل زیر خواهد بود:

کد کاستوم نود

وقتی این نود را در ورک‌فلو قرار دهید و اجرا کنید، همیشه متن سلام را به‌عنوان خروجی نمایش می‌دهد.

چطور نود سفارشی را به n8n اضافه کنیم؟

اگر از نسخه ابری n8n ایران‌سرور استفاده کنید، امکان نصب مستقیم کد سفارشی وجود ندارد چون محیط مدیریت‌شده است. در این حالت باید از نودهای آماده یا APIهای عمومی استفاده کنید. اما اگر از نسخه Self-Hosted (روی سرور خودتان) استفاده می‌کنید، کافی است فایل نود را در پوشه‌ی custom داخل مسیر n8n کپی کنید. بعد از کپی فایل باید سرویس n8n را یک بار ری‌استارت کنید تا نود جدید در لیست ظاهر شود.

نمای مسیر پوشه custom

تست و اجرای نود سفارشی

بعد از ری‌استارت، نود شما مانند بقیه نودها در لیست نمایش داده می‌شود. می‌توانید آن را به ورک‌فلو اضافه کنید، به نودهای دیگر وصل کنید و خروجی‌اش را ببینید. مثلا در مثال Hello Node، هر بار که اجرا شود متن سلام تولید می‌کند.

اجرای تست نود سفارشی در ورک‌فلو

ساخت نودهای کاربردی‌تر

شما می‌توانید نودهای سفارشی پیچیده‌تر بسازید. مثلا نودی که ورودی بگیرد (مثل آدرس یک API)، یا نودی که به اینترنت وصل شود و اطلاعات بگیرد، یا حتی نودی که داده‌ها را پردازش کند و خروجی‌های مختلف برگرداند. به این ترتیب می‌توانید حتی یک سرویس کامل داخلی سازمان خودتان را به n8n متصل کنید.

نکات مهم برای ساخت نود سفارشی

برای ساخت نود سفارشی بهتر است چند نکته مهم را رعایت کنید. همیشه نام و توضیح مناسب انتخاب کنید تا استفاده از نود راحت باشد. ورودی و خروجی‌ها را دقیق تعریف کنید تا کاربران سردرگم نشوند. مدیریت خطا را اضافه کنید تا اگر API پاسخ نداد، ورک‌فلو متوقف نشود. در نهایت همیشه تست کنید تا مطمئن شوید نود در شرایط مختلف درست کار می‌کند.

آیا توانستیم چالش شما را حل کنیم؟