اتوماسیون پیشنهاد در Freelancer با هوش مصنوعی و تأیید تلگرام

اتوماسیون پیشنهاد در Freelancer با هوش مصنوعی و تأیید تلگرام

10 دقیقه مطالعه · منتشر شده ۱۴۰۵/۵/۷

دانلود workflow

فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.

  1. فایل JSON را دانلود کنید.
  2. در n8n: Workflows → Import from File.
  3. Credentialهای هر node را متصل کنید.
  4. 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)
ExecuteWorkflowTriggerExecuteWorkflowTriggerنقطه ورود برای فراخوانی‌های گردش کار خارجی-SetInputsانتظار پارامتر query را دارد.
SetInputsSetمقداردهی اولیه متغیرهای گردش کار (search, My_ID, ChatID)ExecuteWorkflowTriggerEdit Fields1مقادیر پیش‌فرض برای My_ID و ChatID ارائه شده است.
ManualTriggerManualTriggerاجرای دستی گردش کار را امکان‌پذیر می‌سازد-Edit Fields1-
ScheduleTriggerScheduleTriggerاجرای خودکار گردش کار (مثلاً ساعتی)-Edit Fields1-
Edit Fields1Setتعریف آرایه مهارت‌ها برای جستجوی پروژهManualTrigger, ScheduleTrigger, ExecuteWorkflowTriggerSplit Out1مثال: ["n8n", "python"].
Split Out1SplitOutتقسیم آرایه مهارت‌ها به موارد جداگانهEdit Fields1Execute Workflowمهارت‌ها را برای فراخوانی گردش کار فرعی آماده می‌کند.
Execute WorkflowExecuteWorkflowفراخوانی گردش کار فرعی freelancerAgent برای هر مهارتSplit Out1-از حالت "each" استفاده می‌کند.
SearchHttpRequestدریافت پروژه‌های فعال از API Freelancer.comExecute WorkflowGetProjectsنقطه پایانی: /projects/active. نیاز به اعتبارنامه API دارد.
GetProjectsSplitOutتقسیم پروژه‌های پاسخ API به موارد جداگانهSearchIfپروژه‌های result.projects را پردازش می‌کند.
IfIfفیلتر کردن پروژه‌ها بر اساس وضعیت "active"GetProjectsExtractDateشرط: $json['result.projects'].status == "active".
ExtractDateSetاستخراج جزئیات کلیدی پروژهIfLoop Over Itemsعنوان، توضیحات، بودجه، شناسه، URL و غیره را اختصاص می‌دهد.
Loop Over ItemsSplitInBatchesپردازش پروژه‌ها یکی یکیExtractDatecheckBiddingپردازش متوالی را مدیریت می‌کند.
checkBiddingHttpRequestدریافت پیشنهادات موجود برای پروژه فعلیLoop Over ItemsSplit Outنقطه پایانی: /projects/{Project Id}/bids.
Split OutSplitOutتقسیم پیشنهادات موجود به موارد جداگانهcheckBiddingEdit Fieldsپیشنهادات result.bids را پردازش می‌کند.
Edit FieldsSetاستخراج bidder_id از هر پیشنهادSplit OutAggregateشناسه پیشنهاد دهندگان را برای بررسی آماده می‌کند.
AggregateAggregateجمع‌آوری تمام bidder_idها در یک آرایهEdit FieldsIf2برای بررسی اینکه آیا شناسه شما وجود دارد یا خیر استفاده می‌شود.
If2Ifبررسی اینکه آیا کاربر قبلاً پیشنهاد داده استAggregateAlreadyBid, GetApprovalشرط: My_ID شما در لیست پیشنهادات جمع‌آوری شده وجود دارد.
AlreadyBidSetتنظیم پیام نشان دهنده ثبت پیشنهاد قبلیIf2 (شاخه True)-پایان مسیر برای این پروژه.
GetApprovalTelegram (Send and Wait)درخواست تأیید از طریق تلگرامIf2 (شاخه False)If1خلاصه پروژه و دکمه‌های درون‌خطی ("Bid", "Cancel") را ارسال می‌کند.
If1Ifارزیابی پاسخ تأیید تلگرامGetApprovalAI Agent, Canceledشرط: data.approved درست است.
AI AgentLangchain Agentتولید متن پیشنهاد توسط هوش مصنوعیIf1 (شاخه True)create a bidاز Langchain و OpenAI GPT-4 استفاده می‌کند.
CanceledTelegramارسال تأیید لغو به تلگرامIf1 (شاخه False)Loop Over Itemsبه کاربر در مورد لغو اطلاع می‌دهد.
OpenAI Chat ModelLangchain LMChatOpenAiبک‌اند مدل زبان برای AI AgentAI AgentAI Agentبا مدل GPT-4 و کلید API OpenAI پیکربندی شده است.
create a bidHttpRequestارسال پیشنهاد به API Freelancer.comAI AgentSend Succussنقطه پایانی: /bids. نیاز به اعتبارنامه API دارد.
Send SuccussTelegramارسال اعلان موفقیت‌آمیز بودن پیشنهاد به تلگرامcreate a bidLoop Over Itemsارسال پیشنهاد را با لینک شغل تأیید می‌کند.

Nodeهای استفاده‌شده

سوالات متداول

این گردش کار n8n چگونه به اتوماسیون پیشنهاد در Freelancer.com کمک می‌کند؟

این گردش کار پروژه‌های جدید را جستجو می‌کند، با استفاده از هوش مصنوعی پیشنهادات سفارشی تولید می‌کند و پس از تأیید شما از طریق تلگرام، آن‌ها را ارسال می‌کند. این امر فرآیند پیشنهاد دادن را به طور قابل توجهی تسریع می‌بخشد.

نقش هوش مصنوعی در این گردش کار چیست؟

هوش مصنوعی (با استفاده از Langchain و OpenAI GPT-4) برای تجزیه و تحلیل جزئیات پروژه و تولید پیشنهادات متنی سفارشی و متقاعدکننده بر اساس مهارت‌ها و الزامات پروژه استفاده می‌شود.

چرا از تلگرام برای تأیید استفاده می‌شود؟

تلگرام به عنوان یک کانال ارتباطی سریع و آسان برای ارسال خلاصه‌های پروژه و دریافت تأیید نهایی شما قبل از ارسال پیشنهاد عمل می‌کند. این امر اطمینان می‌دهد که شما کنترل کاملی بر پیشنهادهای ارسالی دارید.

آیا این گردش کار از پیشنهادهای تکراری جلوگیری می‌کند؟

بله، گردش کار شامل منطقی برای بررسی اینکه آیا قبلاً روی یک پروژه خاص پیشنهاد داده شده است یا خیر، می‌باشد تا از ارسال پیشنهادهای تکراری جلوگیری شود.

workflowهای مرتبط

این workflow در کاتالوگ Pixori.me بایگانی شده است. لایسنس اصلی متعلق به سازنده workflow است.