مقدمه
خلاصه روزانه ایمیل با n8n:
N8Nابزاری است که به کمک آن می توانید در مدتزمان کوتاهی، فرایندهای خود را با هوش مصنوعی خودکار کنید و از مزایای اتوماسیون هوشمند بهره مند شوید.
N8N برای چه کسب و کارهایی مناسب است:
اگر سازمان شما کوچک می باشد و هم اکنون بسیاری از کار های خود را با نرم افزار هایی همچون اکسل انجام می دهید، N8N برای کسب و کار شما ایده آل است و در صورتی که کسب و کاری متوسط یا بزرگ دارید می توانید بخش های بسیاری از فرایند های غیر کلیدی خود را با این ابزار هوشمند کنید.
اگر به پیادهسازی اختصاصی، اتصال n8n به نرمافزارهای سازمانی یا سفارشیسازی Workflowها متناسب با کسبوکارتان نیاز دارید، Danix با بررسی نیازهای کسبوکار تان، میتواند این فرایند را از طراحی تا استقرار برای شما انجام دهیم.
برای کسب و کارهای کوچک به این لینک مراجعه کنید و برای کسب و کارهای بزرگ و متوسط میتوانید از این لینک استفاده نمایید.
همچنین اگر ترجیح میدهید شخصاً نصب و راهاندازی را انجام دهید، میتوانید از اطلاعات موجود در مقالات، دسته N8N استفاده کنید .همچنین می توانید template موجود در این workflow را به صورت رایگان از این قسمت دانلود کنید.
رمز فایل: danixai.com
خلاصه روزانه ایمیل با n8n:
آموزش ساخت سیستم خلاصه روزانه ایمیل با n8n، Ollama و تلگرام
مدیریت تعداد زیادی ایمیل در طول روز میتواند زمانبر و خستهکننده باشد. بسیاری از پیامهای دریافتی شامل خبرنامهها، تبلیغات، پیشنهادهای فروش، اعلانهای خودکار و پیامهای اطلاعرسانی هستند، اما در میان آنها ممکن است ایمیلهایی وجود داشته باشند که به پاسخ، تأیید، بررسی امنیتی یا اقدام فوری نیاز دارند. بررسی دستی تمام این پیامها علاوه بر صرف زمان، احتمال نادیده گرفتن یک ایمیل مهم را نیز افزایش میدهد.
در این آموزش، یک سیستم هوشمند برای ساخت خلاصه روزانه ایمیل با n8n را بررسی میکنیم. این Workflow بهصورت خودکار ایمیلهای ۲۴ ساعت گذشته را از طریق پروتکل IMAP دریافت میکند، محتوای آنها را پردازش میکند، ایمیلهای مرتبط را در قالب Thread گروهبندی کرده و پیامهای تبلیغاتی و کماهمیت را تا حد امکان فیلتر میکند.
پس از این مرحله، اطلاعات ایمیلهای مهمتر برای تحلیل به یک مدل هوش مصنوعی محلی در Ollama ارسال میشوند. مدل AI بررسی میکند که کدام پیامها واقعاً به اقدام کاربر نیاز دارند و آنها را در قالب یک خروجی ساختاریافته دستهبندی میکند. در نهایت، خلاصه روزانه ایمیل بهصورت یک گزارش خوانا ساخته شده و برای کاربر در تلگرام ارسال میشود.
این Workflow از یک مسیر جایگزین نیز پشتیبانی میکند. اگر ارسال گزارش در تلگرام با مشکل مواجه شود، میتوان همان گزارش را از طریق سرویس ntfy ارسال کرد. به همین دلیل، این Template علاوه بر خلاصهسازی ایمیل، نمونهای کاربردی از ترکیب n8n، Python، IMAP، هوش مصنوعی محلی و سیستمهای اعلان است.
قبل از شروع
اگر هنوز n8n را نصب نکردهاید، پیشنهاد میکنیم ابتدا مقاله «آموزش n8n» را مطالعه کنید. در آن مقاله، مراحل نصب با Node.js و Docker، راهاندازی اولیه و ساخت اولین Workflow بهصورت کامل آموزش داده شده است. پس از نصب و راهاندازی، به این مقاله بازگردید و مراحل پیادهسازی این Workflow را دنبال کنید.
جریان کاری خلاصه روزانه ایمیل با n8n چه کاری انجام میدهد؟
این Workflow یک سیستم خودکار برای ایجاد خلاصه روزانه ایمیل با n8n است که ایمیلهای ۲۴ ساعت گذشته را بررسی میکند، پیامهای مهم را از پیامهای کماهمیت جدا میکند و نتیجه را در قالب یک گزارش خلاصه برای کاربر ارسال میکند.
اجرای Workflow از دو روش امکانپذیر است. در حالت اول، میتوانید آن را بهصورت دستی اجرا کنید تا عملکرد سیستم را آزمایش کنید. در حالت دوم، Schedule Trigger در ساعت ۲۳:۵۹ اجرا شده و فرآیند بررسی ایمیلها را بهصورت خودکار آغاز میکند.
پس از شروع Workflow، یک اسکریپت Python از طریق IMAP به صندوق ایمیل متصل میشود. اسکریپت پیامهای ۲۴ ساعت گذشته را دریافت میکند، اطلاعاتی مانند تاریخ، فرستنده و عنوان را استخراج کرده و محتوای قابلخواندن ایمیل را از نسخه متنی یا HTML به دست میآورد.
سپس ایمیلهای مرتبط در قالب Thread یا رشته گفتوگو گروهبندی میشوند. این کار باعث میشود چند پاسخ متعلق به یک مکالمه بهعنوان یک موضوع واحد تحلیل شوند و مدل هوش مصنوعی با دادههای تکراری مواجه نشود.
در مرحله بعد، یک Code Node با استفاده از الگوهای از پیش تعریفشده، پیامهایی مانند خبرنامهها، تبلیغات، پیشنهادهای فروش، Job Alertها و سایر ایمیلهای کماهمیت را فیلتر میکند. سپس Threadهای باقیمانده همراه با موضوع، فرستنده و متن مکالمه برای تحلیل به Ollama ارسال میشوند.
مدل هوش مصنوعی بررسی میکند که کدام ایمیلها واقعاً نیازمند اقدام هستند. برای مثال، هشدارهای امنیتی، درخواست تأیید، مهلت انجام کار، مشکلات پرداخت، تمدید سرویس یا جلسات مهم میتوانند در دسته موارد فوری قرار بگیرند.
در نهایت، خروجی مدل اعتبارسنجی شده و یک خلاصه روزانه ایمیل شامل جمعبندی، موارد نیازمند اقدام و پیامهای صرفاً اطلاعرسانی ساخته میشود. گزارش ابتدا به تلگرام ارسال میشود و در صورت بروز خطا، مسیر جایگزین ntfy فعال خواهد شد.
کاربردهای این WorkFlow:
۱. مدیریت ایمیلهای شخصی
کاربرانی که روزانه تعداد زیادی ایمیل دریافت میکنند، میتوانند بهجای بررسی تکتک پیامها، یک گزارش خلاصه و اولویتبندیشده دریافت کنند.
۲. شناسایی ایمیلهای نیازمند اقدام
پیامهایی مانند درخواست تأیید، Deadline، هشدار امنیتی، نیاز به پاسخ، پرداخت ناموفق یا تمدید سرویس میتوانند سریعتر شناسایی شوند.
۳. کاهش مزاحمت خبرنامهها و تبلیغات
Workflow پیش از ارسال داده به مدل AI، بسیاری از ایمیلهای تبلیغاتی و غیرضروری را با استفاده از الگوهای مشخص فیلتر میکند.
۴. ساخت دستیار شخصی مدیریت ایمیل
این Workflow میتواند پایهای برای ساخت یک Email Assistant شخصی باشد که در آینده قابلیت پاسخگویی، دستهبندی یا ایجاد Task را نیز دریافت کند.
۵. استفاده در محیطهای حساس به حریم خصوصی
بهدلیل استفاده از Ollama محلی، تحلیل ایمیلها میتواند روی سیستم یا سرور شخصی انجام شود و وابستگی به سرویسهای ابری هوش مصنوعی کاهش پیدا کند.
۶. ارسال گزارش روزانه برای تیمها
با اتصال یک صندوق ایمیل مشترک، میتوان گزارش روزانه پیامهای مهم را برای مدیر یا اعضای تیم ارسال کرد.
۷. نظارت بر ایمیلهای امنیتی و عملیاتی
ایمیلهای مربوط به ورود مشکوک، OTP، تغییر رمز عبور، هشدارهای پرداخت یا اختلال سرویس میتوانند سریعتر شناسایی شوند.
۸. ساخت سیستم اعلان چندمسیره
ساختار جریان کاری خلاصه روزانه ایمیل با n8n امکان ارسال گزارش به تلگرام و استفاده از ntfy بهعنوان مسیر جایگزین را فراهم میکند.
پیشنیازها
برای اجرای جریان کاری خلاصه روزانه ایمیل با n8n به موارد زیر نیاز دارید:
-
نصب و اجرای n8n
-
دسترسی به Node از نوع Execute Command
-
نصب Python 3 در محیط اجرای n8n
-
دسترسی شبکه به سرور IMAP
-
یک حساب ایمیل با قابلیت IMAP
-
آدرس سرور IMAP
-
نام کاربری یا آدرس ایمیل
-
رمز عبور یا App Password
-
نصب و اجرای Ollama
-
دانلود یک مدل سازگار با Ollama
-
مشخص کردن نام مدل در Workflow
-
ساخت Telegram Bot
-
ایجاد Credential مربوط به Telegram در n8n
-
دریافت Telegram Chat ID
-
ساخت Topic در ntfy در صورت استفاده از مسیر جایگزین
-
دسترسیهای لازم برای اجرای اسکریپت و اتصال شبکه
برای Gmail معمولاً باید IMAP را فعال کرده و بهجای رمز عبور اصلی حساب، از App Password استفاده کنید.
اگر n8n را با Docker اجرا میکنید، باید توجه داشته باشید که Python در محیط اجرای n8n در دسترس باشد. همچنین در چنین شرایطی، آدرس 127.0.0.1 ممکن است به خود Container اشاره کند و نه به سیستم میزبان؛ بنابراین آدرس Ollama باید متناسب با معماری شما تنظیم شود.
دانلود Template
فایل JSON این Workflow خلاصه روزانه ایمیل با n8n را از این قسمت دانلود کنید.
رمز فایل: danixai.com
آموزش Import کردن Workflow
-
وارد داشبورد n8n شوید.
-
روی Import from File کلیک کنید.
-
فایل JSON را انتخاب کنید.
-
Workflow ایجاد خواهد شد.
-
Credentialهای موردنیاز را تنظیم کنید.
ساختار Workflow و آموزش Node های آن:
1.Manual Trigger
وظیفه: Manual Trigger برای اجرای دستی Workflow استفاده میشود. این Node زمانی کاربرد دارد که میخواهید پیش از فعالسازی کامل سیستم، مراحل مختلف را آزمایش کنید.
ورودی: این Node ورودی از Node دیگری دریافت نمیکند و نقطه شروع اجرای دستی Workflow است.
خروجی: پس از اجرای دستی، یک آیتم به Node دریافت ایمیل ارسال میشود.
تنظیمات مهم: این Node تنظیمات پیچیدهای ندارد و معمولاً به همان شکل پیشفرض باقی میماند.
نکات قابل تغییر: بهتر است Manual Trigger را برای تست Workflow نگه دارید، حتی اگر اجرای اصلی سیستم با Schedule Trigger انجام شود.
دلیل استفاده: وجود این Node باعث میشود برای هر آزمایش نیازی به انتظار تا زمان اجرای خودکار نداشته باشید.
2.Schedule Trigger
وظیفه: مسئول اجرای خودکار Workflow در زمان مشخص است.
ورودی: ورودی ندارد و براساس زمانبندی تعیینشده فعال میشود.
خروجی: در زمان مشخص، فرآیند بررسی ایمیلها را آغاز میکند.
تنظیمات مهم: در این Template، زمان اجرا روی ساعت ۲۳:۵۹ تنظیم شده است. بنابراین سیستم در پایان روز، ایمیلهای ۲۴ ساعت گذشته را بررسی میکند.
نکات قابل تغییر: میتوانید زمان اجرا را به ابتدای صبح، پایان ساعت کاری یا چند بار در روز تغییر دهید.
دلیل استفاده: این Node باعث میشود فرآیند ایجاد خلاصه روزانه ایمیل با n8n کاملاً خودکار انجام شود.
3.Fetch Gmail via IMAP
وظیفه: این Node از نوع Execute Command است و یک اسکریپت Python را اجرا میکند. وظیفه اسکریپت، اتصال به سرویس ایمیل از طریق IMAP و دریافت ایمیلهای ۲۴ ساعت گذشته است.
ورودی: Trigger فعالشده توسط Manual Trigger یا Schedule Trigger.
خروجی: خروجی اسکریپت شامل اطلاعات ساختاریافته JSON از ایمیلها و Threadهای شناساییشده است.
تنظیمات مهم:
سه مقدار اصلی باید شخصیسازی شوند:
-
USER -
PASSWORD -
HOST
برای Gmail معمولاً Host برابر imap.gmail.com و Port برابر 993 است.
نکات قابل تغییر: بازه بررسی ایمیلها، تعداد کاراکترهای بدنه هر پیام، تعداد پیامها در هر Thread و حجم Context قابل تغییر هستند.
این Node همچنین در صورت خطا تا چهار بار تلاش مجدد انجام میدهد و بین هر تلاش پنج ثانیه فاصله قرار میدهد.
دلیل استفاده: استفاده از Python و IMAP کنترل بیشتری روی دریافت ایمیل، مدیریت Encoding، استخراج HTML، حذف پیوستها و گروهبندی پیامها در اختیار Workflow قرار میدهد.
4.Parse JSON Output
وظیفه: این Code Node خروجی متنی حاصل از اجرای Python را دریافت کرده و آن را به JSON قابلاستفاده در n8n تبدیل میکند.
ورودی: مقدار stdout حاصل از Execute Command.
خروجی: یک آبجکت شامل تعداد ایمیلها، تعداد Threadها، لیست ایمیلها و هشدارهای احتمالی.
تنظیمات مهم: اگر خروجی stdout خالی باشد، Node یک خروجی جایگزین با تعداد صفر تولید میکند.
نکات قابل تغییر: میتوانید نحوه مدیریت خروجی خالی، خطاهای JSON و اطلاعات stderr را تغییر دهید.
دلیل استفاده: Nodeهای بعدی برای پردازش راحتتر به دادههای ساختاریافته نیاز دارند.
5.Build Summary Prompt
وظیفه: این Node ایمیلها و Threadها را برای تحلیل هوشمند آماده میکند و قبل از ارسال داده به مدل، فیلتر اولیه انجام میدهد.
ورودی: اطلاعات ساختاریافته ایمیلها از Node قبلی.
خروجی: اطلاعاتی شامل Threadهای قابلتحلیل، تعداد ایمیلها، تعداد Threadها، نمونه پیامهای فیلترشده و یک خروجی جایگزین.
تنظیمات مهم: در این Node الگوهایی برای شناسایی پیامهای تبلیغاتی، خبرنامهها، پیشنهادهای فروش، Job Alertها و پیامهای بازاریابی تعریف شده است.
همچنین الگوهایی برای شناسایی موارد مهم مانند هشدار امنیتی، Deadline، پرداخت، Invoice، جلسه، تمدید و نیاز به تأیید وجود دارد.
نکات قابل تغییر: لیست blockedPatterns و urgentPatterns از مهمترین بخشهای قابل شخصیسازی هستند. میتوانید الگوهای خاص کسبوکار یا ایمیلهای شخصی خود را به آنها اضافه کنید.
دلیل استفاده: این مرحله حجم داده غیرضروری را کاهش میدهد و باعث میشود Ollama روی ایمیلهای مهمتر تمرکز کند.
6.Prepare Structured Prompt
وظیفه: این Node System Prompt و User Prompt موردنیاز برای تحلیل ایمیلها توسط Ollama را ایجاد میکند.
ورودی: داده آمادهشده توسط Build Summary Prompt.
خروجی: سه فیلد اصلی شامل system_prompt، user_prompt و prompt_text.
تنظیمات مهم: Prompt مدل را موظف میکند فقط یک JSON معتبر تولید کند و از ارسال Markdown، Code Fence، توضیح اضافه یا خروجی غیرساختاریافته جلوگیری میکند.
خروجی مورد انتظار شامل سه بخش است:
-
summary -
urgent_items -
for_info
نکات قابل تغییر:
میتوانید تعریف موارد فوری را براساس نیاز خود تغییر دهید. برای مثال، در یک شرکت ممکن است ایمیلهای مشتریان VIP یا پیامهای مربوط به سرور همیشه در اولویت باشند.
همچنین میتوانید Prompt را فارسیسازی کنید تا خلاصه روزانه ایمیل به زبان فارسی تولید شود.
دلیل استفاده: Prompt ساختاریافته احتمال تولید خروجی قابلاعتماد و قابلپردازش توسط مدل را افزایش میدهد.
7.Call Ollama Summary API
وظیفه: این HTTP Request درخواست تحلیل ایمیلها را به API محلی Ollama ارسال میکند.
ورودی: System Prompt و User Prompt.
خروجی: پاسخ مدل هوش مصنوعی.
تنظیمات مهم: آدرس API روی سرویس محلی Ollama تنظیم شده است و مقدار YOUR_OLLAMA_MODEL باید با نام مدل نصبشده روی سیستم جایگزین شود.
تنظیمات مهم درخواست شامل موارد زیر هستند:
-
temperature: 0 -
format: json -
stream: false -
num_ctx: 32768 -
num_predict: 260
نکات قابل تغییر: میتوانید مدل AI، حجم Context، تعداد توکن خروجی و Timeout را متناسب با سختافزار و نیاز خود تغییر دهید.
دلیل استفاده: Ollama امکان اجرای مدلهای زبانی بهصورت محلی را فراهم میکند و برای تحلیل دادههایی مانند ایمیل میتواند کنترل بیشتری روی حریم خصوصی ایجاد کند.
8.Parse Ollama Summary
وظیفه: این Node پاسخ Ollama را اعتبارسنجی کرده و JSON نهایی را استخراج میکند.
ورودی: پاسخ HTTP Request از Ollama.
خروجی: خلاصه، لیست موارد فوری و لیست موارد اطلاعرسانی.
تنظیمات مهم: این node تلاش میکند JSON را از بخشهای مختلف پاسخ استخراج کند. اگر خروجی مدل معتبر نباشد، از ساختار جایگزین fallback_structured استفاده میشود.
نکات قابل تغییر: میتوانید منطق استخراج JSON، طول خلاصه و ساختار Fallback را شخصیسازی کنید.
دلیل استفاده: مدلهای AI ممکن است گاهی خروجی کاملاً مطابق انتظار تولید نکنند. این مرحله پایداری Workflow را افزایش میدهد.
9.Has Urgent Items?
وظیفه: این IF Node بررسی میکند که آیا مورد فوری در خروجی تحلیل وجود دارد یا خیر.
ورودی: مقدار Boolean مربوط به has_urgent_items.
خروجی: در صورت وجود مورد فوری، مسیر اول فعال میشود. در صورت نبود مورد فوری، مسیر دوم در ساختار فعلی خالی است.
تنظیمات مهم: شرط براساس مقدار Boolean تنظیم شده است.
نکات قابل تغییر: میتوانید مسیر False را نیز به یک Node ارسال پیام متصل کنید تا در صورت نبود موارد فوری، گزارشی مانند «امروز مورد مهمی برای اقدام وجود ندارد» ارسال شود.
دلیل استفاده: این Node امکان تصمیمگیری و کنترل مسیر Workflow براساس نتیجه تحلیل هوش مصنوعی را فراهم میکند.
10.Normalize Summary Message
وظیفه: این Node دادههای ساختاریافته را به یک پیام نهایی و قابلخواندن تبدیل میکند.
ورودی: خلاصه و لیست موارد فوری و اطلاعرسانی.
خروجی:
سه نسخه اصلی از پیام تولید میشود:
-
text -
notify_message -
telegram_message
تنظیمات مهم: برای موارد فوری یک جدول متنی شامل موضوع، فرستنده و دلیل اهمیت ساخته میشود. نسخه HTML نیز برای نمایش مناسبتر در تلگرام تولید میشود.
نکات قابل تغییر: میتوانید ساختار گزارش، عنوانها، تعداد ستونها، زبان متن و طول هر بخش را تغییر دهید.
دلیل استفاده: خروجی ساختاریافته AI برای کاربر نهایی بهاندازه کافی خوانا نیست و باید به یک گزارش مناسب تبدیل شود.
11.Fix Action Table Layout
وظیفه: این Node در نسخه فعلی نقش یک مرحله عبوری را دارد و داده نهایی را بدون تغییر اساسی به مرحله بعد منتقل میکند.
ورودی: پیام نهایی آمادهشده برای ارسال.
خروجی: همان اطلاعات دریافتی.
تنظیمات مهم: در حال حاضر این Node فقط یک کپی از JSON را بازمیگرداند.
نکات قابل تغییر: میتوانید در آینده اصلاحات نهایی Layout، کوتاهسازی متن یا تغییر ساختار جدول را در این مرحله انجام دهید.
دلیل استفاده: وجود یک مرحله جداگانه برای اصلاح ظاهر پیام، توسعه و نگهداری Workflow را سادهتر میکند.
12.Send Telegram Summary
وظیفه: این Node خلاصه روزانه ایمیل را از طریق Telegram Bot برای کاربر ارسال میکند.
ورودی: پیام HTML تولیدشده توسط Node قبلی.
خروجی: پاسخ API تلگرام یا اطلاعات خطا.
تنظیمات مهم: باید مقدار YOUR_TELEGRAM_CHAT_ID و Credential مربوط به Telegram Bot را تنظیم کنید.
حالت parse_mode روی HTML قرار دارد تا ساختار پیام بهتر نمایش داده شود.
نکات قابل تغییر: میتوانید گزارش را به Chat شخصی، Group یا Channel ارسال کنید.
دلیل استفاده: تلگرام یک کانال سریع و در دسترس برای دریافت گزارشهای خودکار روزانه است.
13.Telegram Delivery Failed?
وظیفه: این IF Node بررسی میکند که ارسال گزارش در تلگرام با خطا مواجه شده است یا خیر.
ورودی: خروجی Node تلگرام.
خروجی: در صورت وجود خطا، مسیر Fallback فعال میشود.
تنظیمات مهم: شرط براساس وجود فیلد error بررسی میشود.
نکات قابل تغییر: میتوانید چند مسیر جایگزین مانند Email، Slack یا Discord نیز اضافه کنید.
دلیل استفاده: این مرحله قابلیت اطمینان سیستم اعلان را افزایش میدهد.
14.Send ntfy Summary
وظیفه: این Node گزارش نهایی را از طریق یک درخواست HTTP POST به سرویس ntfy ارسال میکند.
ورودی: متن نهایی گزارش.
خروجی: پاسخ سرویس ntfy.
تنظیمات مهم: باید مقدار YOUR_NTFY_TOPIC را با Topic شخصی خود جایگزین کنید. در Headerها عنوان، اولویت، Tag و نوع محتوا مشخص شدهاند.
نکات قابل تغییر: اگر به مسیر جایگزین نیاز ندارید، میتوانید این Node را حذف کنید یا آن را با سرویس دیگری جایگزین کنید.
دلیل استفاده: ntfy یک مسیر جایگزین برای ارسال گزارش در صورت ناموفق بودن تلگرام فراهم میکند.
نحوه شخصیسازی Workflow
تغییر Promptها:
مهمترین بخش برای تغییر رفتار مدل AI، Node با نام Prepare Structured Prompt است. میتوانید تعریف موارد فوری، زبان خروجی، نوع دستهبندی و محدودیت تعداد آیتمها را تغییر دهید.
تغییر APIها:
آدرس Ollama در Node Call Ollama Summary API قابل تغییر است. اگر Ollama روی سرور دیگری اجرا میشود، باید URL و تنظیمات اتصال را متناسب با محیط خود وارد کنید.
تغییر مدل AI:
مقدار YOUR_OLLAMA_MODEL را با نام مدل محلی خود جایگزین کنید. برای تحلیل ایمیلهای فارسی یا چندزبانه، استفاده از مدلی با توانایی مناسب در پردازش زبانهای موردنظر اهمیت زیادی دارد.
تغییر Triggerها:
میتوانید Schedule Trigger را به اجرای ساعتی، چندبار در روز یا اجرای هفتگی تغییر دهید.
تغییر Labelها و فیلترها:
در Node Build Summary Prompt میتوانید Regexهای مربوط به تبلیغات، خبرنامهها و ایمیلهای مهم را براساس نیاز خود تغییر دهید.
تغییر شرطها:
میتوانید شرط Has Urgent Items? را تغییر دهید تا فقط در شرایط خاص، مانند وجود بیش از یک مورد فوری، پیام ارسال شود.
تغییر مسیر اجرای Workflow:
امکان اضافه کردن مسیرهایی به Google Sheets، Notion، Slack، Discord یا ابزارهای مدیریت Task وجود دارد.
تغییر بازه بررسی ایمیلها:
در اسکریپت Python، بازه ۲۴ ساعته قابل تغییر است. برای مثال، میتوانید ایمیلهای ۱۲ ساعت، ۴۸ ساعت یا چند روز گذشته را بررسی کنید.
مزایای استفاده از خلاصه روزانه ایمیل:
استفاده از این جریان کاری خلاصه روزانه ایمیل با n8n مزایای مختلفی دارد:
-
کاهش زمان موردنیاز برای بررسی دستی ایمیلها
-
شناسایی سریع پیامهای نیازمند اقدام
-
کاهش نویز ناشی از خبرنامهها و تبلیغات
-
استفاده از هوش مصنوعی محلی با Ollama
-
گروهبندی پاسخهای مرتبط در قالب Thread
-
وجود Fallback در صورت تولید خروجی نامعتبر توسط مدل
-
ارسال سریع گزارش به تلگرام
-
استفاده از ntfy بهعنوان مسیر جایگزین
-
قابلیت اجرای دستی و خودکار
-
امکان توسعه آسان برای اتصال به سرویسهای دیگر
نکات مهم:
-
رمز عبور اصلی ایمیل را مستقیماً در Workflowهای اشتراکی قرار ندهید و در صورت امکان از Credential یا متغیر محیطی استفاده کنید.
-
برای Gmail بهتر است از App Password استفاده شود.
-
مطمئن شوید قابلیت IMAP برای حساب ایمیل فعال است.
-
اگر n8n در Docker اجرا میشود، دسترسی Container به Python و Ollama را بررسی کنید.
-
مدل انتخابی Ollama باید توانایی مناسبی در پیروی از Prompt و تولید JSON داشته باشد.
-
افزایش بیش از حد حجم Context و تعداد ایمیلها میتواند مصرف RAM و زمان پردازش را افزایش دهد.
-
Regexهای فیلتر را با ایمیلهای واقعی خود آزمایش کنید تا پیام مهم بهاشتباه حذف نشود.
-
پیش از فعال کردن Schedule Trigger، Workflow را چند بار با Manual Trigger آزمایش کنید.
-
Chat ID تلگرام و Credential Bot را با دقت بررسی کنید.
-
در صورت حساس بودن اطلاعات ایمیل، دسترسی به n8n و سرور Ollama را محدود کنید.
خطاهای رایج و Troubleshooting
خطا: اتصال IMAP برقرار نمیشود
علت: آدرس Host، Port، نام کاربری یا رمز عبور اشتباه است. همچنین ممکن است IMAP در حساب ایمیل فعال نباشد.
راهحل: تنظیمات IMAP سرویس ایمیل را بررسی کنید. برای Gmail از App Password استفاده کرده و Host و Port صحیح را وارد کنید.
خطا: Execute Command اجرا نمیشود
علت: Python در محیط اجرای n8n نصب نشده یا دسترسی اجرای Command محدود شده است.
راهحل: وجود Python را در محیط اجرای n8n بررسی کنید. اگر از Docker استفاده میکنید، Python باید داخل Container نیز در دسترس باشد.
خطا: Ollama پاسخ نمیدهد
علت: سرویس Ollama اجرا نشده، URL اشتباه است یا مدل موردنظر روی سیستم وجود ندارد.
راهحل: اجرای Ollama را بررسی کنید، نام مدل را کنترل کنید و اتصال n8n به سرویس Ollama را آزمایش کنید.
خطا: مدل JSON نامعتبر تولید میکند
علت: مدل ممکن است به Prompt پایبند نباشد یا توانایی کافی برای تولید خروجی ساختاریافته نداشته باشد.
راهحل: از یک مدل مناسبتر استفاده کنید، Prompt را دقیقتر کنید و مقدار Temperature را پایین نگه دارید. این Workflow برای چنین شرایطی از Fallback نیز استفاده میکند.
خطا: تلگرام پیام را ارسال نمیکند
علت: Token Bot، Credential یا Chat ID اشتباه است. همچنین ممکن است Bot به مقصد موردنظر دسترسی کافی نداشته باشد.
راهحل: Credential تلگرام را بررسی کنید و مطمئن شوید Bot در Group یا Channel موردنظر عضو بوده و مجوز ارسال پیام دارد.
خطا: مورد فوری وجود دارد اما گزارشی ارسال نمیشود
علت: شرط IF ممکن است مقدار مورد انتظار را دریافت نکند یا خروجی مدل در مرحله Parse بهدرستی نرمال نشده باشد.
راهحل: خروجی Node Parse Ollama Summary را در بخش Execution Data بررسی کرده و مقدار has_urgent_items را کنترل کنید.
خطا: مسیر ntfy کار نمیکند
علت: Topic یا URL بهدرستی تنظیم نشده است.
راهحل: مقدار YOUR_NTFY_TOPIC را بررسی کنید و درخواست POST را بهصورت جداگانه آزمایش کنید.
سوالات متداول
آیا برای استفاده از این Workflow به API پولی هوش مصنوعی نیاز دارم؟
خیر. در نسخه فعلی Workflow از Ollama استفاده شده و مدل هوش مصنوعی میتواند بهصورت محلی اجرا شود. بنابراین نیازی به API Key سرویسهای تجاری AI ندارید، مگر اینکه بخواهید ساختار Workflow را تغییر دهید.
آیا این Workflow فقط با Gmail کار میکند؟
خیر. اگرچه نام یکی از Nodeها Fetch Gmail via IMAP است، اما منطق اصلی بر پایه پروتکل IMAP ساخته شده است. بنابراین میتوانید از سرویسهای ایمیلی دیگری که IMAP را پشتیبانی میکنند نیز استفاده کنید.
آیا همه ایمیلهای ۲۴ ساعت گذشته برای Ollama ارسال میشوند؟
خیر. Workflow ابتدا ایمیلها را در قالب Thread گروهبندی کرده و سپس تلاش میکند تبلیغات، خبرنامهها و پیامهای کماهمیت را فیلتر کند. همچنین برای حجم داده ارسالی به مدل محدودیت در نظر گرفته شده است.
اگر Ollama خروجی JSON اشتباه تولید کند چه میشود؟
Node مربوط به Parse Ollama Summary تلاش میکند JSON معتبر را از پاسخ استخراج کند. اگر خروجی قابلاستفاده نباشد، Workflow از ساختار جایگزین مبتنی بر تحلیل اولیه استفاده میکند.
آیا میتوان خلاصه روزانه ایمیل را به فارسی دریافت کرد؟
بله. کافی است Promptهای Node Prepare Structured Prompt را فارسیسازی کنید و از مدلی استفاده کنید که توانایی مناسبی در پردازش زبان فارسی داشته باشد.
آیا میتوان بهجای تلگرام از Slack یا Discord استفاده کرد؟
بله. میتوانید Node ارسال تلگرام را با Slack یا Discord جایگزین کنید. همچنین امکان ارسال همزمان گزارش به چند سرویس وجود دارد.
آیا میتوان فقط ایمیلهای یک فرستنده خاص را بررسی کرد؟
بله. میتوانید منطق جستوجوی IMAP یا فیلترهای موجود در اسکریپت را تغییر دهید تا فقط ایمیلهای مربوط به یک فرستنده، دامنه، پوشه یا موضوع مشخص پردازش شوند.
جمعبندی
ساخت خلاصه روزانه ایمیل با n8n یک روش کاربردی برای ترکیب اتوماسیون، پردازش داده و هوش مصنوعی است. این Workflow بهجای ارسال تمام ایمیلهای جدید بدون پردازش، ابتدا پیامها را دریافت و پاکسازی میکند، مکالمات مرتبط را در قالب Thread گروهبندی میکند و بخش قابلتوجهی از تبلیغات، خبرنامهها و پیامهای غیرضروری را پیش از تحلیل هوش مصنوعی فیلتر میکند.
در مرحله بعد، Ollama نقش یک دستیار هوشمند را برای بررسی اهمیت ایمیلها بر عهده میگیرد. خروجی ساختاریافته باعث میشود نتیجه تحلیل AI قابلاعتمادتر و پردازش آن در مراحل بعدی سادهتر باشد. علاوه بر این، وجود یک ساختار جایگزین برای مدیریت خروجی نامعتبر مدل، پایداری Workflow را افزایش میدهد.
در نهایت، خلاصه روزانه ایمیل به یک گزارش خوانا تبدیل شده و از طریق تلگرام ارسال میشود. استفاده از ntfy نیز باعث میشود در صورت بروز مشکل در کانال اصلی، امکان دریافت اعلان از یک مسیر جایگزین وجود داشته باشد.
این Workflow قابلیت شخصیسازی بالایی دارد و میتوانید مدل AI، Promptها، قوانین فیلتر، زمانبندی، بازه بررسی ایمیلها و مقصد گزارش را تغییر دهید. به همین دلیل، این Template میتواند از یک ابزار ساده برای مدیریت ایمیل شخصی به پایهای برای ساخت یک سیستم حرفهای Email Triage و مدیریت هوشمند ارتباطات تبدیل شود.



