
اتوماسیون پیشنهاد در Freelancer با هوش مصنوعی و تأیید تلگرام
10 دقیقه مطالعه · منتشر شده ۱۴۰۵/۵/۷
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 6048 · منبع: کاتالوگ Pixori
اتوماسیون پیشنهاد در Freelancer.com با پیشنهادات هوش مصنوعی و تأیید تلگرام
این گردش کار فرآیند پیشنهاد دادن برای پروژهها در Freelancer.com را خودکار میکند. این گردش کار از هوش مصنوعی برای تولید پیشنهادات استفاده میکند و تلگرام را برای تأیید دستی به کار میگیرد و اطمینان میدهد که شما ضمن سادهسازی تلاشهای پیشنهاد خود، کنترل را حفظ میکنید.
دستهبندیها: پرورش سرنخ، هوش مصنوعی چندوجهی
کاتالوگ Pixori: https://pixori.me/n8n
---
نمای کلی گردش کار
این گردش کار برای موارد زیر طراحی شده است:
1. دریافت کوئریهای جستجو: پذیرش کلمات کلیدی مبتنی بر مهارت برای شروع جستجوی پروژه.
2. جستجو و فیلتر پروژهها: جستجو در Freelancer.com برای پروژههای فعال مطابق با معیارهای شما و استخراج جزئیات مربوطه.
3. جلوگیری از پیشنهادهای تکراری: بررسی اینکه آیا قبلاً روی پروژهای پیشنهاد دادهاید یا خیر.
4. درخواست تأیید تلگرام: ارسال خلاصههای پروژه به تلگرام برای بررسی و تأیید شما.
5. تولید پیشنهادهای هوش مصنوعی: استفاده از یک عامل هوش مصنوعی (Langchain با OpenAI GPT-4) برای ایجاد پیشنهادهای سفارشی.
6. ارسال پیشنهادها: ثبت پیشنهادها در Freelancer.com پس از تأیید شما و تأیید ارسال.
7. فعالسازی انعطافپذیر: پشتیبانی از اجرای دستی، زمانبندی شده یا خارجی گردش کار.
---
جزئیات کامل
1. ورودی و مقداردهی اولیه
این بخش نحوه شروع و دریافت پارامترهای اولیه مانند مهارتهای جستجو، شناسه Freelancer.com شما و شناسه چت تلگرام شما را مدیریت میکند.
- نودها (Nodes):
* ExecuteWorkflowTrigger (هنگامی که توسط یک گردش کار دیگر اجرا میشود)
* Set (تنظیم ورودیها)
* ManualTrigger (هنگام کلیک بر روی 'اجرای گردش کار')
* ScheduleTrigger (تریگر زمانبندی)
* Set (ویرایش فیلدها1)
* SplitOut (جدا کردن1)
* ExecuteWorkflow (اجرای گردش کار)
- جزئیات:
* ExecuteWorkflowTrigger: به عنوان نقطه ورودی برای گردش کارهای دیگر عمل میکند و انتظار پارامتر query (مهارتهای جستجوی شما) را دارد.
* Set (تنظیم ورودیها): متغیرهای گردش کار را مقداردهی اولیه میکند:
* search: query را از تریگر یا ورودی دستی میگیرد.
* My_ID: شناسه کاربری Freelancer.com شما (پیشفرض: 1234).
* ChatID: شناسه چت تلگرام شما (پیشفرض: 1073915195).
* ManualTrigger: به شما امکان میدهد گردش کار را به صورت دستی شروع کنید.
* ScheduleTrigger: به طور پیشفرض برای اجرای ساعتی گردش کار پیکربندی شده است.
* Set (ویرایش فیلدها1): آرایهای از مهارتها (مثلاً ["n8n", "python"]) را برای استفاده در جستجوی پروژه تعریف میکند.
* SplitOut (جدا کردن1): آرایه مهارتها را به آیتمهای جداگانه تقسیم میکند و آنها را برای پردازش جداگانه آماده میسازد.
* ExecuteWorkflow (اجرای گردش کار): یک زیر-گردش کار به نام freelancerAgent را برای هر مهارت فراخوانی میکند و مهارت را به عنوان query ارسال میکند.
---
2. جستجو و فیلتر کردن پروژه
این بخش پروژههای فعال را از Freelancer.com بر اساس مهارتهای شما واکشی و فیلتر میکند.
- نودها (Nodes):
* HttpRequest (جستجو)
* SplitOut (دریافت پروژهها)
* If (اگر)
* Set (استخراج تاریخ)
* SplitInBatches (تکرار بر روی آیتمها)
- جزئیات:
* HttpRequest (جستجو): API سایت Freelancer.com (/projects/active) را فراخوانی میکند تا پروژهها را بازیابی کند.
* پیکربندی: از query (مهارت)، full_description=1، limit=10، user_status=0 استفاده میکند. نیاز به اعتبارنامه API Freelancer در هدرهای HTTP دارد.
* SplitOut (دریافت پروژهها): آرایه result.projects را از پاسخ API به آیتمهای پروژه جداگانه تقسیم میکند.
* If (اگر): پروژهها را فیلتر میکند و اطمینان حاصل میکند که فقط پروژههای با وضعیت "active" ادامه پیدا میکنند.
* شرط: $json['result.projects'].status == "active"
* Set (استخراج تاریخ): جزئیات کلیدی پروژه را استخراج و اختصاص میدهد: عنوان، توضیحات، بودجه، تعداد پیشنهادها، ارز، شناسه پروژه و URL.
* SplitInBatches (تکرار بر روی آیتمها): پروژهها را یکی یکی پردازش میکند تا منطق ترتیبی و فراخوانیهای API را مدیریت کند.
---
3. جلوگیری از پیشنهاد تکراری
این بخش بررسی میکند که آیا قبلاً برای یک پروژه پیشنهاد ارسال کردهاید یا خیر، قبل از ادامه.
- نودها (Nodes):
* HttpRequest (بررسی پیشنهاد)
* SplitOut (جدا کردن)
* Set (ویرایش فیلدها)
* Aggregate (تجمیع)
* If (اگر2)
* Set (قبلاً پیشنهاد داده شده)
* Telegram (دریافت تایید)
- جزئیات:
* HttpRequest (بررسی پیشنهاد): API سایت Freelancer.com (/projects/{Project Id}/bids) را برای دریافت پیشنهادهای موجود برای پروژه فعلی کوئری میکند.
* SplitOut (جدا کردن): آرایه result.bids را به آیتمهای پیشنهاد جداگانه تقسیم میکند.
* Set (ویرایش فیلدها): bidder_id را از هر پیشنهاد استخراج میکند.
* Aggregate (تجمیع): تمام bidder_idها را در یک آرایه واحد جمعآوری میکند.
* If (اگر2): بررسی میکند که آیا My_ID شما در لیست تجمیع شده شناسههای پیشنهاددهنده وجود دارد یا خیر.
* اگر درست (True): به نود AlreadyBid میرود.
* اگر نادرست (False): به نود GetApproval میرود.
* Set (قبلاً پیشنهاد داده شده): پیامی را تنظیم میکند که نشان میدهد قبلاً پیشنهادی ارسال شده است. این شاخه عملاً برای پروژه فعلی در اینجا به پایان میرسد.
* Telegram (دریافت تایید): خلاصهای دقیق از پروژه را به چت تلگرام شما ارسال میکند، شامل دکمههای درونخطی برای "پیشنهاد" یا "لغو".
---
4. تعامل با تایید تلگرام
این بخش پاسخ شما را از درخواست تأیید تلگرام مدیریت میکند.
- نودها (Nodes):
* If (اگر1)
* Langchain Agent (عامل هوش مصنوعی)
* Telegram (لغو شد)
- جزئیات:
* If (اگر1): پاسخ شما را از تلگرام ارزیابی میکند.
* اگر درست (تأیید شد): به نود AI Agent میرود.
* اگر نادرست (لغو شد): به نود Canceled میرود.
* Langchain Agent (عامل هوش مصنوعی): با استفاده از عنوان و توضیحات پروژه شما، یک پیشنهاد حرفهای و مختصر تولید میکند.
* پیکربندی: به هوش مصنوعی (GPT-4) دستور میدهد تا با لحنی رسمی و مطمئن، با استفاده از Markdown، و شامل یک امضای خاص ("با احترام محمد") بنویسد.
* Telegram (لغو شد): یک پیام تأیید لغو به تلگرام ارسال میکند. سپس گردش کار به نود Loop Over Items بازمیگردد تا پروژه بعدی را پردازش کند.
---
5. تولید پیشنهاد توسط هوش مصنوعی
این بخش نود هوش مصنوعی مسئول ایجاد متن پیشنهاد شما را توضیح میدهد.
- نودها (Nodes):
Langchain Agent (عامل هوش مصنوعی) - در بخش 4 پوشش داده شده است*
* Langchain LMChatOpenAi (مدل چت OpenAI)
- جزئیات:
* Langchain LMChatOpenAi: این نود به عنوان بکاند مدل زبان برای AI Agent عمل میکند.
* پیکربندی: از مدل gpt-4.1-nano-2025-04-14 استفاده میکند و نیاز به اعتبارنامه API OpenAI شما دارد.
---
6. ارسال پیشنهاد و تأیید
اینجا جایی است که پیشنهاد به طور رسمی در Freelancer.com ثبت میشود و شما تأییدیه دریافت میکنید.
- نودها (Nodes):
* HttpRequest (ایجاد پیشنهاد)
* Telegram (ارسال موفقیت)
- جزئیات:
* HttpRequest (ایجاد پیشنهاد): یک درخواست POST به نقطه پایانی /bids در Freelancer.com ارسال میکند.
* پیکربندی: شامل شناسه پروژه، شناسه پیشنهاددهنده شما، مبلغ پیشنهاد، دوره پروژه، متن پیشنهاد تولید شده توسط هوش مصنوعی، شناسه پروفایل شما و درصد مایلستون است. نیاز به اعتبارنامه API Freelancer دارد.
* Telegram (ارسال موفقیت): یک پیام موفقیت به چت تلگرام شما ارسال میکند، ارسال پیشنهاد را تأیید کرده و لینک کار را ارائه میدهد. سپس گردش کار به نود Loop Over Items بازمیگردد تا پروژه بعدی را پردازش کند.
---
7. راهاندازی گردش کار
این بخش روشهای مختلفی را که گردش کار میتواند آغاز شود، خلاصه میکند.
- نودها (Nodes):
* ExecuteWorkflowTrigger (هنگامی که توسط یک گردش کار دیگر اجرا میشود)
* ManualTrigger (هنگام کلیک بر روی 'اجرای گردش کار')
* ScheduleTrigger (تریگر زمانبندی)
* Set (ویرایش فیلدها1)
* SplitOut (جدا کردن1)
* ExecuteWorkflow (اجرای گردش کار)
- جزئیات: این نودها عمدتاً در بخش "ورودی و مقداردهی اولیه" (بخش 1) پیکربندی شدهاند و امکان اجرای انعطافپذیر را بر اساس نیازهای شما فراهم میکنند: شروع دستی، اجرای ساعتی خودکار، یا ادغام با سایر توالیهای اتوماسیون.
---
جدول خلاصه
| نام نود (Node Name) | نوع نود (Node Type) | نقش عملکردی (Functional Role) | نود(های) ورودی (Input Node(s)) | نود(های) خروجی (Output Node(s)) | یادداشت چسبان (Sticky Note) |
|---|---|---|---|---|---|
ExecuteWorkflowTrigger | ExecuteWorkflowTrigger | نقطه ورود برای فراخوانیهای گردش کار خارجی | - | SetInputs | انتظار پارامتر query را دارد. |
SetInputs | Set | مقداردهی اولیه متغیرهای گردش کار (search, My_ID, ChatID) | ExecuteWorkflowTrigger | Edit Fields1 | مقادیر پیشفرض برای My_ID و ChatID ارائه شده است. |
ManualTrigger | ManualTrigger | اجرای دستی گردش کار را امکانپذیر میسازد | - | Edit Fields1 | - |
ScheduleTrigger | ScheduleTrigger | اجرای خودکار گردش کار (مثلاً ساعتی) | - | Edit Fields1 | - |
Edit Fields1 | Set | تعریف آرایه مهارتها برای جستجوی پروژه | ManualTrigger, ScheduleTrigger, ExecuteWorkflowTrigger | Split Out1 | مثال: ["n8n", "python"]. |
Split Out1 | SplitOut | تقسیم آرایه مهارتها به موارد جداگانه | Edit Fields1 | Execute Workflow | مهارتها را برای فراخوانی گردش کار فرعی آماده میکند. |
Execute Workflow | ExecuteWorkflow | فراخوانی گردش کار فرعی freelancerAgent برای هر مهارت | Split Out1 | - | از حالت "each" استفاده میکند. |
Search | HttpRequest | دریافت پروژههای فعال از API Freelancer.com | Execute Workflow | GetProjects | نقطه پایانی: /projects/active. نیاز به اعتبارنامه API دارد. |
GetProjects | SplitOut | تقسیم پروژههای پاسخ API به موارد جداگانه | Search | If | پروژههای result.projects را پردازش میکند. |
If | If | فیلتر کردن پروژهها بر اساس وضعیت "active" | GetProjects | ExtractDate | شرط: $json['result.projects'].status == "active". |
ExtractDate | Set | استخراج جزئیات کلیدی پروژه | If | Loop Over Items | عنوان، توضیحات، بودجه، شناسه، URL و غیره را اختصاص میدهد. |
Loop Over Items | SplitInBatches | پردازش پروژهها یکی یکی | ExtractDate | checkBidding | پردازش متوالی را مدیریت میکند. |
checkBidding | HttpRequest | دریافت پیشنهادات موجود برای پروژه فعلی | Loop Over Items | Split Out | نقطه پایانی: /projects/{Project Id}/bids. |
Split Out | SplitOut | تقسیم پیشنهادات موجود به موارد جداگانه | checkBidding | Edit Fields | پیشنهادات result.bids را پردازش میکند. |
Edit Fields | Set | استخراج bidder_id از هر پیشنهاد | Split Out | Aggregate | شناسه پیشنهاد دهندگان را برای بررسی آماده میکند. |
Aggregate | Aggregate | جمعآوری تمام bidder_idها در یک آرایه | Edit Fields | If2 | برای بررسی اینکه آیا شناسه شما وجود دارد یا خیر استفاده میشود. |
If2 | If | بررسی اینکه آیا کاربر قبلاً پیشنهاد داده است | Aggregate | AlreadyBid, GetApproval | شرط: My_ID شما در لیست پیشنهادات جمعآوری شده وجود دارد. |
AlreadyBid | Set | تنظیم پیام نشان دهنده ثبت پیشنهاد قبلی | If2 (شاخه True) | - | پایان مسیر برای این پروژه. |
GetApproval | Telegram (Send and Wait) | درخواست تأیید از طریق تلگرام | If2 (شاخه False) | If1 | خلاصه پروژه و دکمههای درونخطی ("Bid", "Cancel") را ارسال میکند. |
If1 | If | ارزیابی پاسخ تأیید تلگرام | GetApproval | AI Agent, Canceled | شرط: data.approved درست است. |
AI Agent | Langchain Agent | تولید متن پیشنهاد توسط هوش مصنوعی | If1 (شاخه True) | create a bid | از Langchain و OpenAI GPT-4 استفاده میکند. |
Canceled | Telegram | ارسال تأیید لغو به تلگرام | If1 (شاخه False) | Loop Over Items | به کاربر در مورد لغو اطلاع میدهد. |
OpenAI Chat Model | Langchain LMChatOpenAi | بکاند مدل زبان برای AI Agent | AI Agent | AI Agent | با مدل GPT-4 و کلید API OpenAI پیکربندی شده است. |
create a bid | HttpRequest | ارسال پیشنهاد به API Freelancer.com | AI Agent | Send Succuss | نقطه پایانی: /bids. نیاز به اعتبارنامه API دارد. |
Send Succuss | Telegram | ارسال اعلان موفقیتآمیز بودن پیشنهاد به تلگرام | create a bid | Loop Over Items | ارسال پیشنهاد را با لینک شغل تأیید میکند. |
Nodeهای استفادهشده
سوالات متداول
این گردش کار n8n چگونه به اتوماسیون پیشنهاد در Freelancer.com کمک میکند؟▾
این گردش کار پروژههای جدید را جستجو میکند، با استفاده از هوش مصنوعی پیشنهادات سفارشی تولید میکند و پس از تأیید شما از طریق تلگرام، آنها را ارسال میکند. این امر فرآیند پیشنهاد دادن را به طور قابل توجهی تسریع میبخشد.
نقش هوش مصنوعی در این گردش کار چیست؟▾
هوش مصنوعی (با استفاده از Langchain و OpenAI GPT-4) برای تجزیه و تحلیل جزئیات پروژه و تولید پیشنهادات متنی سفارشی و متقاعدکننده بر اساس مهارتها و الزامات پروژه استفاده میشود.
چرا از تلگرام برای تأیید استفاده میشود؟▾
تلگرام به عنوان یک کانال ارتباطی سریع و آسان برای ارسال خلاصههای پروژه و دریافت تأیید نهایی شما قبل از ارسال پیشنهاد عمل میکند. این امر اطمینان میدهد که شما کنترل کاملی بر پیشنهادهای ارسالی دارید.
آیا این گردش کار از پیشنهادهای تکراری جلوگیری میکند؟▾
بله، گردش کار شامل منطقی برای بررسی اینکه آیا قبلاً روی یک پروژه خاص پیشنهاد داده شده است یا خیر، میباشد تا از ارسال پیشنهادهای تکراری جلوگیری شود.
workflowهای مرتبط
- ساخت خودکار پست وبلاگ اخبار فناوری با هوش مصنوعی و NewsAPIContent Creation
- تولید خودکار پست شبکههای اجتماعی از URL با هوش مصنوعی و تلگ…Content Creation
- اتوماسیون تولید پست وبلاگ سئو با هوش مصنوعی و وردپرسContent Creation
- تولید خودکار توضیحات محصول با Azure OpenAI برای Adobe Comme…Miscellaneous
- اتوماسیون شبکههای اجتماعی وردپرس با Claude و PostizSocial Media
- تولید خودکار پست لینکدین از تصاویر گوگل درایو با GPT-4oContent Creation
