ربات هوشمند تلگرام با n8n
مقدمه
استفاده از n8n تنها به سازمانهای بزرگ محدود نمیشود. کسبوکارهای کوچک و متوسط نیز میتوانند با استفاده از Workflowهای آماده، در مدتزمان کوتاهی بسیاری از فرایندهای تکراری خود را خودکار کنند و بدون نیاز به توسعه از صفر، از مزایای اتوماسیون بهرهمند شوند.
اگر به پیادهسازی اختصاصی، اتصال n8n به نرمافزارهای سازمانی یا سفارشیسازی Workflowها متناسب با نیاز کسبوکارتان نیاز دارید، Danix با بررسی نیازهای کسبوکار شما، میتواند این فرایند را از طراحی تا استقرار برای شما انجام دهد.
همچنین اگر ترجیح میدهید شخصاً نصب و راهاندازی را انجام دهید، میتوانید از مقاله ربات هوشمند تلگرام با n8n که در ادامه معرفی شده است استفاده کنید و template این workflow را از این قسمت دانلود کنید.
ربات هوشمند تلگرام با n8n: آموزش ساخت ربات هوش مصنوعی پاسخگوی برنامه جلسات با Telegram، Google Sheets و OpenRouter در n8n
اگر به دنبال ساخت یک ربات هوشمند تلگرام با n8n هستید که بتواند اطلاعات یک برنامه زمانبندی را از Google Sheets دریافت کرده و به سوالات کاربران پاسخ دهد، این Workflow یکی از بهترین نمونههای آموزشی محسوب میشود.
در این Template، اطلاعات مربوط به برنامه جلسات یا رویدادها داخل یک فایل Google Sheets نگهداری میشود. زمانی که کاربر از طریق تلگرام یا محیط Chat داخلی n8n سوالی مانند «جلسه بعدی چه زمانی برگزار میشود؟» یا «برنامه امروز چیست؟» را مطرح میکند، Workflow ابتدا اطلاعات جدول را دریافت کرده، آن را به فرمتی مناسب برای مدل هوش مصنوعی تبدیل میکند و سپس با استفاده از OpenRouter و یک مدل زبانی، پاسخ مناسبی تولید میکند.
یکی از ویژگیهای جالب این Workflow آن است که تنها به تلگرام محدود نیست. طراح Workflow دو مسیر مختلف برای دریافت پیام در نظر گرفته است؛ یکی از طریق Telegram Bot و دیگری از طریق Chat Trigger داخلی n8n. به همین دلیل میتوان قبل از انتشار نهایی، عملکرد ربات را داخل خود n8n آزمایش کرد و سپس همان منطق را برای کاربران تلگرام نیز مورد استفاده قرار داد. همچنین حافظه گفتگو باعث میشود ربات بتواند مکالمه را تا چند پیام متوالی حفظ کرده و پاسخهای طبیعیتری ارائه دهد.
اگر قصد دارید بدون نوشتن کدهای پیچیده، یک دستیار هوشمند برای پاسخگویی به سوالات کاربران درباره زمانبندی رویدادها، کلاسها، جلسات یا برنامههای کاری ایجاد کنید، این Template نقطه شروع بسیار مناسبی خواهد بود.
قبل از شروع
اگر هنوز n8n را نصب نکردهاید، پیشنهاد میکنیم ابتدا مقاله «آموزش n8n» را مطالعه کنید. در آن مقاله، مراحل نصب با Node.js و Docker، راهاندازی اولیه و ساخت اولین Workflow بهصورت کامل آموزش داده شده است. پس از نصب و راهاندازی، به این مقاله بازگردید و مراحل پیادهسازی این Workflow را دنبال کنید.
این Workflow چه کاری انجام میدهد؟
این Workflow یک ربات گفتگو مبتنی بر هوش مصنوعی ایجاد میکند که اطلاعات برنامه جلسات را از Google Sheets دریافت کرده و به سوالات کاربران پاسخ میدهد.
روند کلی اجرای Workflow به صورت زیر است:
- دریافت پیام از تلگرام یا Chat داخلی n8n
- یکسانسازی ساختار دادههای ورودی
- خواندن اطلاعات Schedule از Google Sheets
- تبدیل جدول به فرمت Markdown
- ارسال پیام کاربر و اطلاعات برنامه به Agent هوش مصنوعی
- تولید پاسخ توسط مدل زبانی OpenRouter
- ارسال پاسخ به همان محیطی که پیام از آن دریافت شده است.
این معماری باعث میشود تنها یک منطق برای پاسخگویی وجود داشته باشد اما چندین روش مختلف برای دریافت و ارسال پیام مورد استفاده قرار گیرد.
کاربردهای این Workflow
این Template تنها برای برنامه جلسات طراحی نشده و میتوان از آن در پروژههای مختلف استفاده کرد، از جمله:
- ساخت ربات پاسخگوی برنامه رویدادها
- مدیریت زمانبندی کلاسهای آموزشی
- پاسخگویی به برنامه کنفرانسها
- اطلاعرسانی جلسات شرکتها
- راهنمای بازدیدکنندگان نمایشگاهها
- پاسخ به سوالات مربوط به برنامه تورهای گردشگری
- اطلاعرسانی برنامه شیفت کارکنان
- مدیریت برنامه جلسات تیمهای کاری
- پاسخگویی هوشمند به سوالات کاربران درباره تقویم کاری
پیشنیازهای اجرای این Workflow
برای اجرای این Template به موارد زیر نیاز دارید:
- نصب n8n
- ساخت Telegram Bot از طریق BotFather
- Credential مربوط به Telegram
- حساب Google
- Credential مربوط به Google Sheets
- دسترسی به فایل Google Sheets
- حساب OpenRouter
- API Key مربوط به OpenRouter
- اتصال اینترنت
- دسترسی به Chat Trigger یا Telegram Trigger
- تنظیم صحیح Credentialهای موجود در Workflow
در این Workflow سه Credential اصلی مورد استفاده قرار گرفته است:
| سرویس | کاربرد |
|---|---|
| Telegram | دریافت و ارسال پیام کاربران |
| Google Sheets | نگهداری برنامه جلسات |
| OpenRouter | تولید پاسخ توسط مدل هوش مصنوعی |
فایل JSON این Workflow را از این قسمت دانلود کنید.
رمز فایل: danixai.com
آموزش Import کردن Workflow
- وارد داشبورد n8n شوید.
- روی Import from File کلیک کنید.
- فایل JSON را انتخاب کنید.
- Workflow ایجاد خواهد شد.
- Credentialهای موردنیاز را تنظیم کنید.
ساختار Workflow
این Workflow از دو مسیر ورودی مختلف استفاده میکند اما در نهایت هر دو مسیر به یک منطق مشترک متصل میشوند.
Telegram Trigger
│
Send Typing
│
Telegram Chat Settings
│
Settings
│
Google Sheets
│
Schedule To Markdown
│
AI Agent
│
Set Response
│
Switch
│
Telegram Response
مسیر دوم نیز به شکل زیر است:
n8n Chat Trigger
│
n8n Chat Settings
│
Settings
│
Google Sheets
│
Schedule To Markdown
│
AI Agent
│
Set Response
│
Switch
│
n8n Chat Response
در واقع، تنها بخش دریافت پیام متفاوت است و پس از آن هر دو مسیر از یک جریان پردازش مشترک استفاده میکنند. این طراحی باعث کاهش پیچیدگی و جلوگیری از تکرار Nodeها شده است.
آموزش کامل Nodeهای Workflow
1. Telegram Trigger
وظیفه Node
این Node نقطه شروع اجرای Workflow برای کاربران تلگرام است. هر زمان کاربر پیامی برای ربات ارسال کند، این Trigger فعال شده و اطلاعات پیام را وارد Workflow میکند.
ورودی
پیام جدید ارسالشده به ربات تلگرام
خروجی
خروجی شامل اطلاعات مختلفی مانند:
- متن پیام
- شناسه کاربر
- شناسه چت
- اطلاعات فرستنده
- زمان ارسال
تنظیمات مهم
در این Workflow فقط رویداد Message فعال شده است؛ بنابراین تنها پیامهای معمولی باعث اجرای Workflow میشوند.
نکات قابل تغییر
- دریافت عکس
- دریافت فایل
- دریافت Voice
- دریافت Location
- دریافت Callback Query
- محدود کردن نوع پیامها
دلیل استفاده در Workflow
این Node ارتباط مستقیم میان کاربران و Workflow را برقرار میکند.
2. Send Typing
وظیفه Node
پس از دریافت پیام، این Node وضعیت Typing… را در تلگرام نمایش میدهد تا کاربر احساس کند ربات در حال پردازش درخواست است.
ورودی
اطلاعات پیام دریافتی از Telegram Trigger
خروجی
ارسال Chat Action به تلگرام و انتقال دادهها به Node بعدی
تنظیمات مهم
در این Workflow شناسه چت از پیام دریافتی استخراج شده و عملیات sendChatAction اجرا میشود.
نکات قابل تغییر
- تغییر نوع Chat Action
- نمایش Upload Photo
- نمایش Upload Document
- حذف کامل این مرحله
دلیل استفاده در Workflow
بهبود تجربه کاربری و جلوگیری از تصور هنگ کردن ربات
3. telegram Chat Settings
وظیفه Node
این Node اطلاعات دریافتی از تلگرام را به ساختاری استاندارد تبدیل میکند تا بقیه Workflow بدون توجه به منبع پیام بتوانند از همان متغیرها استفاده کنند.
ورودی
اطلاعات Telegram Trigger
خروجی
سه متغیر مهم ایجاد میشود:
- inputMessage
- chatId
- mode
تنظیمات مهم
در این Workflow مقدار mode برابر telegram قرار داده شده است تا در انتهای Workflow مشخص شود پاسخ باید به تلگرام ارسال شود.
نکات قابل تغییر
- افزودن نام کاربر
- ذخیره Username
- ذخیره زبان کاربر
- ذخیره شناسه پیام
دلیل استفاده در Workflow
یکسانسازی دادهها و جلوگیری از ساخت دو Workflow جداگانه
4. Chat Trigger (n8n Input)
وظیفه Node
این Trigger نسخه مخصوص تست Workflow در محیط داخلی n8n است.
به کمک آن میتوان بدون استفاده از تلگرام، عملکرد Agent را بررسی کرد.
ورودی
پیام واردشده در Chat داخلی n8n
خروجی
اطلاعات پیام و Session
تنظیمات مهم
این Node دارای Webhook اختصاصی برای محیط Chat داخلی است.
نکات قابل تغییر
- فعال یا غیرفعال کردن Chat داخلی
- اتصال به سایر Triggerها
- استفاده برای تست Promptها
دلیل استفاده در Workflow
کاهش زمان تست و توسعه Workflow
5. n8n Chat Settings
وظیفه Node
این Node دقیقاً مشابه telegramChatSettings عمل میکند اما برای پیامهایی که از محیط داخلی n8n ارسال میشوند.
ورودی
پیام Chat داخلی
خروجی
متغیرهای استاندارد Workflow:
- inputMessage
- chatId
- mode
تنظیمات مهم
در این مسیر مقدار mode برابر n8n تنظیم شده است.
نکات قابل تغییر
- تعریف Session اختصاصی
- افزودن اطلاعات تست
- ذخیره متغیرهای اضافی
دلیل استفاده در Workflow
اشتراکگذاری منطق اصلی Workflow بین دو مسیر ورودی
6. Settings
وظیفه Node
این Node تنظیمات عمومی Workflow را نگهداری میکند.
در این Template آدرس فایل Google Sheets در این بخش قرار گرفته است.
ورودی
اطلاعات استانداردشده از هر دو مسیر
خروجی
اضافه شدن متغیر scheduleURL
تنظیمات مهم
در Workflow لینک Google Spreadsheet به صورت یک متغیر ذخیره شده تا در Node بعدی استفاده شود.
نکات قابل تغییر
- تغییر لینک Spreadsheet
- استفاده از Environment Variable
- انتخاب فایل دیگر
- استفاده از چند فایل مختلف
دلیل استفاده در Workflow
جلوگیری از تکرار تنظیمات در چند Node مختلف
7. Google Sheets (Schedule)
وظیفه Node
این Node اطلاعات زمانبندی را از فایل Google Sheets دریافت میکند.
تمام سطرهای Sheet خوانده شده و به Workflow ارسال میشوند.
ورودی
آدرس Spreadsheet
خروجی
لیستی از تمام ردیفهای جدول
تنظیمات مهم
در این Workflow:
- فایل از طریق URL انتخاب شده است.
- Sheet با شناسه
gid=0خوانده میشود.
نکات قابل تغییر
- انتخاب Sheet دیگر
- خواندن محدوده خاص
- فیلتر دادهها
- محدود کردن تعداد سطرها
- استفاده از Spreadsheet متفاوت
دلیل استفاده در Workflow
Google Sheets نقش دیتابیس سبک پروژه را ایفا میکند.
8. Schedule To Markdown (Code)
وظیفه Node
این یکی از مهمترین Nodeهای Workflow است.
مدلهای زبانی معمولاً دادههای جدولی خام را بهخوبی درک نمیکنند. به همین دلیل این Node دادههای Google Sheets را به یک جدول Markdown تبدیل میکند تا Agent بتواند آن را بهعنوان Context پردازش کند.
ورودی
تمام ردیفهای Google Sheets
خروجی
یک رشته Markdown شامل کل جدول
نکات قابل تغییر
- تغییر قالب خروجی
- تبدیل به HTML
- تبدیل به CSV
- ارسال فایل Markdown
- حذف ستونهای اضافی
- مرتبسازی دادهها
دلیل استفاده در Workflow
افزایش کیفیت پاسخهای مدل هوش مصنوعی با ارائه اطلاعات ساختاریافته و قابلفهم
9. Schedule Bot (AI Agent)
وظیفه Node
این Node هسته اصلی Workflow است و تمام پردازشهای مربوط به هوش مصنوعی در این بخش انجام میشود.
Agent پیام کاربر را دریافت میکند، برنامه جلسات را که به فرمت Markdown تبدیل شده است به عنوان Context در اختیار مدل زبانی قرار میدهد و سپس مناسبترین پاسخ را تولید میکند.
ورودی
این Node دو ورودی اصلی دارد:
- پیام کاربر
- جدول زمانبندی به فرمت Markdown
همچنین از Model و Memory نیز به عنوان ورودی استفاده میکند.
خروجی
یک پاسخ متنی تولیدشده توسط مدل هوش مصنوعی
تنظیمات مهم
در این Workflow، Prompt سیستم به Agent اعلام میکند که نقش یک دستیار برای اعضای یک گروه Meetup را دارد و باید براساس جدول برنامه جلسات به سوالات کاربران پاسخ دهد. متن جدول Markdown نیز مستقیماً داخل Prompt قرار میگیرد تا مدل بتواند اطلاعات را تحلیل کند.
نکات قابل تغییر
- تغییر System Prompt
- تغییر شخصیت ربات
- افزودن قوانین پاسخگویی
- محدود کردن نوع پاسخها
- اضافه کردن زبان فارسی یا سایر زبانها
- افزودن ابزارهای بیشتر به Agent
دلیل استفاده در Workflow
به جای نوشتن منطق پیچیده برای جستجو در جدول، مدل زبانی اطلاعات را تحلیل کرده و پاسخ مناسب را به زبان طبیعی تولید میکند.
10. LLM
وظیفه Node
این Node مدل زبانی مورد استفاده توسط AI Agent را فراهم میکند.
در این Workflow از سرویس OpenRouter استفاده شده است که امکان دسترسی به مدلهای مختلف هوش مصنوعی را از طریق یک API واحد فراهم میکند.
ورودی
درخواست ارسالشده از AI Agent
خروجی
پاسخ تولیدشده توسط مدل زبانی
تنظیمات مهم
در فایل Workflow تنها Credential مربوط به OpenRouter مشخص شده و Agent از همین مدل برای تولید پاسخ استفاده میکند.
نکات قابل تغییر
- تغییر مدل AI
- استفاده از GPT
- استفاده از Claude
- استفاده از Gemini
- استفاده از Llama
- تنظیم Temperature
- تعیین Max Tokens
دلیل استفاده در Workflow
جدا کردن مدل زبانی از Agent باعث میشود بدون تغییر ساختار Workflow بتوان مدل دیگری را جایگزین کرد.
11. Memory
وظیفه Node
این Node حافظه مکالمه را مدیریت میکند.
به کمک آن، ربات میتواند پیامهای قبلی کاربر را نیز در نظر بگیرد و پاسخهای طبیعیتر و مرتبطتری تولید کند.
ورودی
شناسه Session هر کاربر
خروجی
تاریخچه مکالمه
تنظیمات مهم
در این Workflow، شناسه چت هر کاربر به عنوان Session Key استفاده شده است؛ بنابراین مکالمه هر کاربر به صورت جداگانه نگهداری میشود.
نکات قابل تغییر
- افزایش یا کاهش اندازه حافظه
- استفاده از Redis
- استفاده از پایگاه داده
- حذف حافظه بعد از مدت مشخص
- استفاده از حافظه دائمی
دلیل استفاده در Workflow
اگر کاربر چند سوال پشت سر هم بپرسد، مدل میتواند مفهوم گفتگو را حفظ کند و پاسخ دقیقتری ارائه دهد.
12. Set Response
وظیفه Node
پس از تولید پاسخ توسط Agent، این Node پاسخ را برای ارسال آماده میکند.
ورودی
پاسخ تولیدشده توسط AI Agent
خروجی
متغیر responseMessage که در مراحل بعدی استفاده میشود.
تنظیمات مهم
در این Workflow مقدار خروجی Agent در فیلدی به نام responseMessage ذخیره میشود تا Nodeهای بعدی بدون وابستگی به ساختار خروجی Agent از آن استفاده کنند.
نکات قابل تغییر
- افزودن Timestamp
- افزودن نام کاربر
- قالببندی پاسخ
- اضافه کردن لینک
- اضافه کردن امضا
دلیل استفاده در Workflow
یکسانسازی خروجی قبل از ارسال پاسخ.
13. Switch
وظیفه Node
این Node تصمیم میگیرد پاسخ نهایی به کدام مسیر ارسال شود.
ورودی
اطلاعات موجود در متغیر mode
خروجی
یکی از دو مسیر:
- n8n Response
- Telegram Response
تنظیمات مهم
در این Workflow دو شرط تعریف شده است:
- اگر مقدار mode برابر n8n باشد، پاسخ داخل Chat محیط n8n نمایش داده میشود.
- اگر مقدار mode برابر telegram باشد، پاسخ برای کاربر تلگرام ارسال میشود.
نکات قابل تغییر
- اضافه کردن مسیرهای بیشتر
- اتصال به Slack
- اتصال به Discord
- اتصال به Email
- ارسال همزمان به چند مقصد
دلیل استفاده در Workflow
جلوگیری از ساخت چند Workflow مجزا و مدیریت مسیرهای مختلف در یک پروژه.
14. Telegram Response
وظیفه Node
این Node پاسخ نهایی را برای کاربر تلگرام ارسال میکند.
ورودی
متغیر responseMessage
خروجی
پیام متنی در چت تلگرام
تنظیمات مهم
شناسه چت از متغیرهای ایجادشده در ابتدای Workflow خوانده شده و متن پاسخ برای همان کاربر ارسال میشود.
نکات قابل تغییر
- ارسال Markdown
- ارسال HTML
- ارسال تصویر
- ارسال فایل
- ارسال دکمههای Inline
- ارسال پیام چندرسانهای
دلیل استفاده در Workflow
این Node آخرین مرحله ارتباط با کاربر تلگرام است.
15. n8n Response
وظیفه Node
این Node پایان مسیر مربوط به Chat داخلی n8n است.
در این Workflow از Node نوع No Operation استفاده شده که صرفاً برای تکمیل مسیر اجرای Chat داخلی کاربرد دارد.
ورودی
پاسخ تولیدشده توسط AI Agent
خروجی
اتمام اجرای Workflow در محیط Chat داخلی
نکات قابل تغییر
- جایگزینی با HTTP Response
- ثبت لاگ
- ذخیره در دیتابیس
- ارسال به سرویس دیگر
دلیل استفاده در Workflow
حفظ ساختار استاندارد Workflow برای تست و دیباگ


