
پاسخدهنده خودکار ایمیل با GPT-4، RAG و بازخورد انسانی
13 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۲۷
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 8802 · منبع: کاتالوگ Axeto
پاسخدهنده خودکار ایمیل تطبیقی با GPT-4، RAG و بازخورد انسانی
این گردش کار یک پاسخدهنده خودکار ایمیل تطبیقی را پیادهسازی میکند که از GPT-4، تولید افزوده بازیابی (RAG) با فروشگاههای برداری Supabase و یک حلقه بازخورد انسانی برای بهبود مستمر بهره میبرد. این سیستم ارتباطات ایمیلی را با تولید پویا و آگاه از زمینه، پاسخهای مرتبط بر اساس محتوای ایمیل ورودی و پایگاههای دانش منتخب، خودکار میکند. این سیستم همچنین یک مکانیزم انسان در حلقه برای بازبینی و بازخورد را برای اطمینان از کیفیت و فعال کردن یادگیری تکراری، در بر میگیرد.
این گردش کار و موارد دیگر را در کاتالوگ n8n در Axeto.ai کاوش کنید.
نمای کلی گردش کار
گردش کار به طور منطقی به چندین مرحله کلیدی تقسیم میشود:
1. دریافت و پردازش اولیه ایمیل: ایمیلهای ورودی را دریافت کرده و گردش کار را راهاندازی میکند. سپس اطلاعات ضروری را از این ایمیلها تجزیه و استخراج میکند.
2. بازیابی پویا Prompt: قالبهای Prompt مخصوص زمینه را از Google Sheets بر اساس شرایط از پیش تعریف شده بازیابی میکند و دستورالعملهای AI را سفارشی میسازد.
3. پردازش AI و ادغام RAG: از مدلهای OpenAI GPT-4 در کنار فروشگاههای برداری Supabase برای بازیابی دانش و تولید پاسخ استفاده میکند. این مرحله شامل تولید embedding، جستجوی برداری، فراخوانی مدل زبان، تجزیه خروجی و ارکستراسیون عامل AI است.
4. قالببندی پاسخ و منطق تصمیمگیری: محتوای تولید شده توسط AI را پردازش میکند، تجزیهکنندههای ساختاریافته را اعمال میکند و مسیر پاسخ مناسب را تعیین میکند - یا یک پاسخ خودکار فوری یا علامتگذاری برای مداخله دستی.
5. ارسال ایمیل و حلقه بازخورد: ایمیلهای تولید شده را از طریق Gmail ارسال میکند، تعاملات و بازخوردها را در Google Sheets ثبت میکند و بررسی انسانی را برای کنترل کیفیت و یادگیری مداوم تسهیل میکند.
6. آمادهسازی دادههای کمکی و تقسیم متن: از بهروزرسانی فروشگاه برداری با تقسیم بازگشتی اسناد به بخشهای قابل مدیریت برای بازیابی دانش و embedding کارآمد پشتیبانی میکند.
تشریح جزئیات نودها
۱. دریافت و پردازش اولیه ایمیل
این بخش بر روی دریافت ایمیلهای جدید، اعمال فیلترهای اولیه و استخراج نقاط کلیدی داده برای آمادهسازی جهت تحلیل مبتنی بر هوش مصنوعی تمرکز دارد.
- نودها:
* Gmail Trigger1 (Gmail Trigger)
* If2 (If)
* Get Dynamic Prompt (Google Sheets)
* Original Reply (Markdown)
* Edit Fields (Set)
* AI Agent (@n8n/n8n-nodes-langchain.agent)
- جزئیات نودها:
* Gmail Trigger1:
* نوع: n8n-nodes-base.gmailTrigger
* نقش: صندوق ورودی Gmail شما را برای ایمیلهای ورودی جدید جهت راهاندازی گردش کار، پایش میکند.
* پیکربندی: برای دسترسی به Gmail به اعتبارنامههای OAuth2 نیاز دارد.
* خروجی: دادههای ایمیل جدید را به نود If2 منتقل میکند.
* مشکلات احتمالی: خرابی احراز هویت، محدودیتهای نرخ API Gmail، مشکلات اتصال شبکه.
* If2:
* نوع: n8n-nodes-base.if
* نقش: منطق شرطی (مثلاً بر اساس موضوع ایمیل، فرستنده، یا کلمات کلیدی محتوا) را برای تعیین اینکه آیا ایمیل نیاز به پردازش بیشتر دارد، پیادهسازی میکند.
* اتصالات: شاخه 'True' به Get Dynamic Prompt ادامه مییابد؛ شاخه 'False' معمولاً نادیده گرفته میشود یا به نقطه پایانی منجر میشود.
* مشکلات احتمالی: پیکربندی نادرست عبارات منجر به انشعاب ناخواسته.
* Get Dynamic Prompt:
* نوع: n8n-nodes-base.googleSheets
* نقش: الگوهای Prompt مرتبط را بر اساس پارامترهای ورودی مشتق شده از ایمیل، به صورت پویا از یک Google Sheet بازیابی میکند.
* پیکربندی: از اعتبارنامههای Google OAuth2 استفاده میکند.
* ورودی: متادیتای فیلتر شده ایمیل.
* خروجی: یک الگوی Prompt ساختاریافته.
* مشکلات احتمالی: محدودیتهای API Google Sheets، خطاهای اعتبارنامه، تغییرات در طرحبندی (schema) صفحه.
* Original Reply:
* نوع: n8n-nodes-base.markdown
* نقش: الگوی Prompt بازیابی شده را به Markdown قالببندی میکند و آن را برای مراحل پردازش بعدی آماده میسازد.
* مشکلات احتمالی: خطاهای نحوی در الگو.
* Edit Fields:
* نوع: n8n-nodes-base.set
* نقش: فیلدهای داده را برای همراستا شدن با طرحبندی ورودی مورد نیاز نود AI Agent، آماده و اصلاح میکند.
* خروجی: دادههای قالببندی شده آماده برای AI Agent.
* AI Agent:
* نوع: @n8n/n8n-nodes-langchain.agent
* نقش: به عنوان هماهنگکننده مرکزی عمل میکند و مدلهای زبان و ابزارها (شامل قابلیتهای RAG) را فراخوانی میکند تا پاسخی مرتبط تولید کند.
* خروجی: پاسخ تولید شده توسط هوش مصنوعی که سپس به یک نود تصمیمگیری منتقل میشود.
* مشکلات احتمالی: محدودیتهای نرخ API OpenAI، پارامترهای نامعتبر مدل، خطاهای حین اجرای ابزار.
۲. بازیابی پویا Prompt
این بخش جزئیات نحوه بازیابی الگوهای Prompt مختلف از Google Sheets برای سفارشیسازی تعاملات هوش مصنوعی بر اساس زمینههای خاص یا اقدامات کاربر را شرح میدهد.
- نودها:
* Google Sheets Trigger (Google Sheets Trigger)
* If1 (If)
* Get Dynamic Prompt1 (Google Sheets)
Information Extractor (Langchain Information Extractor - توجه: این نوع نود خاص ممکن است یک پیادهسازی سفارشی یا استفاده خاص از ابزار Langchain در نود Agent باشد.*)
* OpenAI Chat Model2 (@n8n/n8n-nodes-langchain.lmChatOpenAi)
- جزئیات نودها:
* Google Sheets Trigger:
* نوع: n8n-nodes-base.googleSheetsTrigger
* نقش: یک Google Sheet را برای بهروزرسانیها پایش میکند و بخشهایی از گردش کار مربوط به بهروزرسانی Prompt یا استخراج داده را راهاندازی میکند.
* مشکلات احتمالی: مشکلات شبکه، مشکلات احراز هویت، مجوزهای ناکافی صفحه.
* If1:
* نوع: n8n-nodes-base.if
* نقش: گردش کار را بر اساس دادههای دریافتی از تریگر Google Sheets هدایت میکند.
* اتصالات: شاخه 'True' به Get Dynamic Prompt1 منجر میشود.
* Get Dynamic Prompt1:
* نوع: n8n-nodes-base.googleSheets
* نقش: الگوهای Prompt خاص طراحی شده برای وظایف استخراج اطلاعات را بازیابی میکند.
* مشکلات احتمالی: مشابه Get Dynamic Prompt در بخش ۱.
* Information Extractor:
نوع: به احتمال زیاد یک ابزار Langchain است که در نود AI Agent استفاده میشود.*
* نقش: دادههای ساختاریافته را با استفاده از خروجیهای مدل هوش مصنوعی از متن استخراج میکند.
* اتصالات: اطلاعات پردازش شده را به نودهای بعدی خروجی میدهد.
* مشکلات احتمالی: تفسیر نادرست داده توسط هوش مصنوعی، خطاهای قالببندی خروجی.
* OpenAI Chat Model2:
* نوع: @n8n/n8n-nodes-langchain.lmChatOpenAi
* نقش: قابلیتهای مدل GPT زیربنایی را برای وظایف استخراج اطلاعات فراهم میکند.
* مشکلات احتمالی: محدودیتهای نرخ API، مهلتهای زمانی درخواست.
۳. پردازش AI و ادغام RAG
این بخش اصلی، فرآیند جاسازی (embedding) دادههای متنی، پرسوجو از فروشگاههای برداری (vector stores) برای زمینه مرتبط و تولید پاسخهای مبتنی بر هوش مصنوعی را شرح میدهد.
- نودها:
* Embeddings OpenAI (@n8n/n8n-nodes-langchain.embeddingsOpenAi)
Supabase Vector Store (ادغام سفارشی یا خاص Langchain*)
* OpenAI Chat Model (@n8n/n8n-nodes-langchain.lmChatOpenAi)
* AI Agent (@n8n/n8n-nodes-langchain.agent)
Auto-fixing Output Parser (ادغام سفارشی یا خاص Langchain*)
* OpenAI Chat Model1 (@n8n/n8n-nodes-langchain.lmChatOpenAi)
Structured Output Parser (ادغام سفارشی یا خاص Langchain*)
* Switch (Switch)
Supabase Vector Store1 (ادغام سفارشی یا خاص Langchain*)
* Embeddings OpenAI1 (@n8n/n8n-nodes-langchain.embeddingsOpenAi)
Default Data Loader (ادغام سفارشی یا خاص Langchain*)
Recursive Character Text Splitter (ادغام سفارشی یا خاص Langchain*)
- جزئیات نودها:
* Embeddings OpenAI & Embeddings OpenAI1:
* نوع: @n8n/n8n-nodes-langchain.embeddingsOpenAi
* نقش: محتوای متنی (از ایمیلها یا اسناد پایگاه دانش) را به بردارهای عددی (vector embeddings) تبدیل میکند و جستجوی معنایی را امکانپذیر میسازد.
* مشکلات احتمالی: محدودیتهای نرخ API OpenAI، در دسترس بودن سرویس جاسازی.
* Supabase Vector Store & Supabase Vector Store1:
نوع: نشاندهنده یکپارچهسازی فروشگاه برداری است که احتمالاً از قابلیتهای برداری Supabase استفاده میکند.*
* نقش: بردارهای جاسازی شده اسناد را ذخیره و بازیابی میکند. این برای جزء RAG حیاتی است و به هوش مصنوعی اجازه میدهد تا به اطلاعات مرتبط از پایگاه دانش شما دسترسی پیدا کند.
* مشکلات احتمالی: خطاهای اتصال پایگاه داده، خرابی اجرای پرسوجو، نمایهسازی نادرست.
* OpenAI Chat Model & OpenAI Chat Model1:
* نوع: @n8n/n8n-nodes-langchain.lmChatOpenAi
* نقش: از GPT-4 (یا مدلی مشابه) برای تولید پاسخها بر اساس زمینه ارائه شده و اطلاعات بازیابی شده استفاده میکند.
* مشکلات احتمالی: محدودیتهای نرخ API، Prompt های نامعتبر، خطاهای پیکربندی مدل.
* AI Agent:
* نقش: تعامل بین مدل زبان، فروشگاه برداری و هر ابزار دیگری را هماهنگ میکند و منطق RAG را پیادهسازی میکند.
* Auto-fixing Output Parser:
نوع: یک تجزیهکننده خروجی Langchain است که برای اصلاح خطاهای رایج قالببندی طراحی شده است.*
* نقش: خروجی خام هوش مصنوعی را تجزیه میکند و تلاش میکند تا خطاها را برطرف کند تا اطمینان حاصل شود که با فرمت دلخواه (مثلاً JSON) مطابقت دارد.
* مشکلات احتمالی: خروجی برای اصلاح خودکار بیش از حد نامعتبر است.
* Structured Output Parser:
نوع: یک تجزیهکننده خروجی Langchain است که یک طرحبندی (schema) خاص را اجباری میکند.*
* نقش: اطمینان حاصل میکند که پاسخ هوش مصنوعی به شدت از یک ساختار از پیش تعریف شده، مانند طرحبندی JSON، پیروی میکند.
* Switch:
* نوع: n8n-nodes-base.switch
* نقش: گردش کار را بر اساس معیارهای خاص هدایت میکند، و به طور بالقوه فروشگاههای برداری یا مسیرهای پردازش مختلف را انتخاب میکند.
* Default Data Loader & Recursive Character Text Splitter:
نوع: نودهایی برای پردازش اسناد و متن.*
* نقش: اسناد را برای جاسازی با بارگذاری آنها و تقسیم متون بزرگ به قطعات کوچکتر و با معنای معنایی، آماده میکند. این برای RAG مؤثر ضروری است.
* مشکلات احتمالی: خطاهای حین بارگذاری داده، استراتژی تقسیم متن نامناسب.
۴. قالببندی پاسخ و منطق تصمیمگیری
این مرحله بر روی اصلاح پاسخ تولید شده توسط هوش مصنوعی و تصمیمگیری در مورد اینکه آیا برای ارسال خودکار مناسب است یا نیاز به بازبینی انسانی دارد، تمرکز دارد.
- نودها:
* If (If)
* Markdown (Markdown)
* Google Sheets (Google Sheets)
* Gmail (Gmail)
- جزئیات نودها:
* If:
* نوع: n8n-nodes-base.if
* نقش: پاسخ تولید شده توسط هوش مصنوعی را در برابر معیارهای از پیش تعریف شده ارزیابی میکند تا تعیین کند آیا میتوان آن را به طور خودکار ارسال کرد.
* خروجیها: گردش کار را به نود Markdown (برای قالببندی قبل از ارسال) یا نود Gmail (برای ارسال فوری) هدایت میکند.
* Markdown:
* نوع: n8n-nodes-base.markdown
* نقش: پاسخ هوش مصنوعی را به یک فرمت Markdown تمیز و آماده برای ایمیل قالببندی میکند.
* Google Sheets:
* نوع: n8n-nodes-base.googleSheets
* نقش: تعامل را ثبت میکند، پاسخ تولید شده را ذخیره میکند، یا بازخورد را برای تحلیلهای آینده ثبت میکند.
* Gmail:
* نوع: n8n-nodes-base.gmail
* نقش: پاسخ نهایی ایمیل را با استفاده از اعتبارنامههای Gmail پیکربندی شده به فرستنده اصلی ارسال میکند.
* مشکلات احتمالی: خطاهای احراز هویت، محدودیتهای ارسال.
۵. ارسال ایمیل و حلقه بازخورد
این بخش شامل ارسال نهایی ایمیلها و مکانیسمهای جمعآوری بازخورد برای بهبود سیستم در طول زمان است.
- نودها:
* Gmail1 (Gmail)
* Markdown1 (Markdown)
* Google Sheets1 (Google Sheets)
- جزئیات نودها:
* Markdown1:
* نوع: n8n-nodes-base.markdown
* نقش: پاسخهای در نظر گرفته شده برای بازبینی انسانی یا درخواست بازخورد را قالببندی میکند.
* Gmail1:
* نوع: n8n-nodes-base.gmail
* نقش: پاسخهای نهایی ایمیل را به گیرندگان ارسال میکند یا درخواستهای بازخورد را ارسال میکند.
* Google Sheets1:
* نوع: n8n-nodes-base.googleSheets
* نقش: بازخورد دریافتی از کاربران را ثبت میکند و وضعیت مکالمه را پیگیری میکند و دادههایی را برای یادگیری مداوم و اصلاح مدل فراهم میکند.
۶. آمادهسازی دادههای کمکی و تقسیم متن
این بخش نودهای کمکی مورد استفاده برای نگهداری و بهروزرسانی پایگاه دانش که سیستم RAG را تغذیه میکند، را تشریح میکند.
- نودها:
Recursive Character Text Splitter (ادغام سفارشی یا خاص Langchain*)
Default Data Loader (ادغام سفارشی یا خاص Langchain*)
* Embeddings OpenAI1 (@n8n/n8n-nodes-langchain.embeddingsOpenAi)
Supabase Vector Store1 (ادغام سفارشی یا خاص Langchain*)
- جزئیات نودها:
* Recursive Character Text Splitter:
* نقش: اسناد متنی بزرگ را به صورت بازگشتی به قطعات کوچکتر تقسیم میکند و اطمینان حاصل میکند که معنای معنایی در هر قطعه حفظ میشود. این برای بازیابی مؤثر حیاتی است.
* Default Data Loader:
* نقش: اسناد را از منابع مختلف بارگیری میکند تا پردازش و به پایگاه دانش اضافه شوند.
* Embeddings OpenAI1:
* نقش: بردارهای جاسازی شده را برای قطعات متنی ایجاد شده توسط تقسیمکننده تولید میکند.
* Supabase Vector Store1:
* نقش: بردارهای جاسازی شده جدید را در پایگاه داده برداری Supabase نمایهسازی میکند و اطلاعات جدید را برای سیستم RAG قابل جستجو میسازد.
جدول خلاصه
| نام نود (Node Name) | نوع نود (Node Type) | نقش عملکردی (Functional Role) | نود(های) ورودی (Input Node(s)) | نود(های) خروجی (Output Node(s)) | یادداشت چسبان (Sticky Note) |
|---|---|---|---|---|---|
Gmail Trigger1 | n8n-nodes-base.gmailTrigger | شروع گردش کار با دریافت ایمیل | If2 | ||
If2 | n8n-nodes-base.if | فیلتر کردن ایمیلهای دریافتی | Gmail Trigger1 | Get Dynamic Prompt | |
Get Dynamic Prompt | n8n-nodes-base.googleSheets | بازیابی قالبهای Prompt | If2 | Original Reply | |
Original Reply | n8n-nodes-base.markdown | قالببندی قالب Prompt | Get Dynamic Prompt | Edit Fields | |
Edit Fields | n8n-nodes-base.set | آمادهسازی فیلدهای داده برای AI Agent | Original Reply | AI Agent | |
AI Agent | @n8n/n8n-nodes-langchain.agent | هماهنگسازی فراخوانیهای هوش مصنوعی با RAG | Edit Fields | If | |
If | n8n-nodes-base.if | تعیین مسیر پاسخ خودکار | AI Agent | Markdown / Gmail | |
Markdown | n8n-nodes-base.markdown | قالببندی پاسخ هوش مصنوعی برای ارسال | If | Google Sheets | |
Google Sheets | n8n-nodes-base.googleSheets | ثبت تعاملات و دادههای پاسخ | Markdown | Gmail | |
Gmail | n8n-nodes-base.gmail | ارسال پاسخ ایمیل تولید شده خودکار | Google Sheets | ||
Google Sheets Trigger | n8n-nodes-base.googleSheetsTrigger | راهاندازی بهروزرسانی Prompt یا استخراج داده | If1 | ||
If1 | n8n-nodes-base.if | انشعاب شرطی برای بهروزرسانی Prompt | Google Sheets Trigger | Get Dynamic Prompt1 | |
Get Dynamic Prompt1 | n8n-nodes-base.googleSheets | دریافت قالبهای Prompt برای استخراج | If1 | Information Extractor | |
Information Extractor | Langchain Tool (within Agent) | استخراج دادههای ساختاریافته از خروجی هوش مصنوعی | Get Dynamic Prompt1 | Markdown1 / Switch | |
OpenAI Chat Model2 | @n8n/n8n-nodes-langchain.lmChatOpenAi | توانمندسازی استخراج اطلاعات | Information Extractor | ||
Embeddings OpenAI | @n8n/n8n-nodes-langchain.embeddingsOpenAi | ایجاد embedding برای RAG | AI Agent / Edit Fields | Supabase Vector Store | |
Supabase Vector Store | Vector Store Integration | ذخیره و پرسوجو از embeddingها | Embeddings OpenAI | AI Agent | |
OpenAI Chat Model | @n8n/n8n-nodes-langchain.lmChatOpenAi | تولید پاسخ با استفاده از زمینه RAG | Supabase Vector Store | Auto-fixing Output Parser | |
Auto-fixing Output Parser | Langchain Output Parser | تجزیه و اصلاح خروجی هوش مصنوعی | OpenAI Chat Model | Structured Output Parser | |
OpenAI Chat Model1 | @n8n/n8n-nodes-langchain.lmChatOpenAi | فراخوانی مدل ثانویه (در صورت نیاز) | Structured Output Parser | Switch | |
Structured Output Parser | Langchain Output Parser | اعمال طرح خروجی سختگیرانه | Auto-fixing Output Parser | Switch | |
Switch | n8n-nodes-base.switch | مسیریابی بر اساس خروجی هوش مصنوعی یا مسیر پردازش | OpenAI Chat Model1 | Gmail1 / Google Sheets1 | |
Supabase Vector Store1 | Vector Store Integration | ذخیره embeddingها برای بهروزرسانی پایگاه دانش | Embeddings OpenAI1 | ||
Embeddings OpenAI1 | @n8n/n8n-nodes-langchain.embeddingsOpenAi | ایجاد embedding برای دادههای پایگاه دانش جدید | Recursive Character Text Splitter | Supabase Vector Store1 | |
Default Data Loader | Document Loader | بارگذاری اسناد برای پایگاه دانش | Recursive Character Text Splitter | ||
Recursive Character Text Splitter | Text Splitter | تقسیم اسناد به بخشهای قابل مدیریت | Default Data Loader | Embeddings OpenAI1 | |
Gmail1 | n8n-nodes-base.gmail | ارسال ایمیلهای نهایی یا درخواست بازخورد | Switch | ||
Markdown1 | n8n-nodes-base.markdown | قالببندی پاسخ برای بررسی/بازخورد | Information Extractor | Gmail1 | |
Google Sheets1 | n8n-nodes-base.googleSheets | ثبت بازخورد و وضعیت مکالمه | Switch |
Nodeهای استفادهشده
سوالات متداول
این گردش کار چگونه پاسخهای ایمیل را خودکار میکند؟▾
این گردش کار با استفاده از GPT-4 و تکنیک RAG، ایمیلهای ورودی را تجزیه و تحلیل کرده و پاسخهای مرتبط و آگاه از زمینه را به صورت خودکار تولید میکند. همچنین از یک حلقه بازخورد انسانی برای بهبود مستمر دقت و کیفیت پاسخها استفاده میکند.
نقش Supabase در این گردش کار چیست؟▾
Supabase به عنوان یک فروشگاه برداری (vector store) عمل میکند که دانش مورد نیاز برای تولید پاسخهای دقیق و متناسب با زمینه را ذخیره و بازیابی میکند. این امر به مدل هوش مصنوعی اجازه میدهد تا به اطلاعات مرتبط دسترسی پیدا کند.
چگونه بازخورد انسانی به بهبود پاسخها کمک میکند؟▾
بازخورد انسانی به عنوان یک مکانیزم کنترل کیفیت عمل میکند. با بررسی و تأیید پاسخهای تولید شده توسط هوش مصنوعی، میتوان خطاها را شناسایی و اصلاح کرد و مدل را برای تولید پاسخهای بهتر در آینده آموزش داد.
آیا این گردش کار برای هر نوع ایمیلی مناسب است؟▾
این گردش کار برای پاسخ به طیف وسیعی از ایمیلها طراحی شده است، به خصوص آنهایی که نیاز به پاسخهای متنی دارند. با این حال، میتوان آن را با تنظیم منطق شرطی و الگوهای Prompt برای نیازهای خاص سفارشیسازی کرد.
workflowهای مرتبط
- دستهبندی خودکار ایمیل جیمیل با GPT-4o و هشدار SlackAI Summarization
- دستهبندی خودکار پستهای وبلاگ با هوش مصنوعی و گیتهابContent Creation
- اتوماسیون زیرنویسگذاری ویدیو با n8n، Google Drive و SubmagicContent Creation
- تحلیل خودکار Google Analytics با هوش مصنوعی Gemini و اعلانه…Market Research
- اتوماسیون ثبت رزروهای Calendly در Google Sheets با n8nCRM
- اتوماسیون پیامهای تشکر و کوپن واتساپ برای مشتریان ShopifyContent Creation
