ساخت ربات تلگرام Airbnb با هوش مصنوعی و جستجوی صوتی

ساخت ربات تلگرام Airbnb با هوش مصنوعی و جستجوی صوتی

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

دانلود workflow

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

  1. فایل JSON را دانلود کنید.
  2. در n8n: Workflows → Import from File.
  3. Credentialهای هر node را متصل کنید.
  4. workflow را فعال کنید.

شناسه workflow: 4494 · منبع: کاتالوگ Pixori

عامل تلگرام Airbnb با پشتیبانی صوتی مبتنی بر هوش مصنوعی

این گردش کار با تلگرام ادغام می‌شود تا یک عامل مبتنی بر هوش مصنوعی برای جستجوی اقامتگاه‌های Airbnb ارائه دهد. این برنامه از دستورات متنی و صوتی پشتیبانی می‌کند و تجربه‌ای مکالمه‌ای چندوجهی و بدون درز را ارائه می‌دهد. این عامل درخواست‌های کاربر را تفسیر کرده، داده‌های Airbnb را در لحظه با استفاده از پلتفرم فرماندهی مدولار (MCP) واکشی می‌کند و پاسخ‌های قالب‌بندی شده و سازگار با موبایل را مستقیماً در تلگرام تحویل می‌دهد.

این گردش کار و موارد دیگر را در کاتالوگ n8n در Axeto.ai کاوش کنید.

نمای کلی گردش کار

این عامل برای مدیریت تعاملات کاربر از طریق تلگرام، پردازش پیام‌ها، درک قصد، بازیابی داده‌های مرتبط و پاسخگویی مؤثر طراحی شده است.

1. دریافت و مسیریابی ورودی: پیام‌های ورودی از تلگرام را دریافت کرده و بر اساس اینکه متن هستند یا صوتی، آن‌ها را هدایت می‌کند.

2. پردازش پیام صوتی: برای پیام‌های صوتی، صدا را دانلود کرده، با استفاده از Whisper اوپن‌ای‌آی آن را به متن رونویسی می‌کند و برای پردازش هوش مصنوعی آماده می‌سازد.

3. آماده‌سازی متن: ورودی متنی را که از پیام‌های مستقیم یا رونویسی‌های صوتی می‌آید، برای پردازش یکنواخت توسط هوش مصنوعی استاندارد می‌کند.

4. منطق اصلی عامل هوش مصنوعی: از LangChain با GPT-4.1 اوپن‌ای‌آی برای تفسیر پرس‌وجوهای کاربر، مدیریت تاریخچه مکالمه، شناسایی و اجرای ابزارهای لازم (مانند دریافت داده‌های Airbnb از طریق MCP) و قالب‌بندی نتایج استفاده می‌کند.

5. تولید پاسخ: پاسخ متنی پردازش شده و قالب‌بندی شده را به کاربر در تلگرام ارسال می‌کند. به صورت اختیاری، می‌تواند یک پاسخ صوتی خلاصه شده نیز تولید کند، آن را به صدا تبدیل کرده و به عنوان پیام صوتی ارسال کند.

تفکیک نودها

۱. دریافت و مسیریابی ورودی

این بخش مسئول دریافت اولیه پیام‌ها از تلگرام و تعیین نوع پیام است.

  • Telegram Trigger

* نوع: n8n-nodes-base.telegramTrigger

* نقش: گوش دادن به پیام‌های جدید (متنی یا صوتی) ارسال شده به ربات تلگرام.

* پیکربندی: تنظیم شده برای گوش دادن به انواع به‌روزرسانی message.

* اعتبارنامه‌ها: توکن API ربات تلگرام.

  • Text or Voice (Switch)

* نوع: n8n-nodes-base.switch

* نقش: مسیریابی گردش کار بر اساس وجود داده‌های متنی یا صوتی در پیام دریافتی.

* پیکربندی:

* شرط ۱ ("Text"): بررسی می‌کند که آیا پیام حاوی فیلد text غیر خالی است.

* شرط ۲ ("Voice"): بررسی می‌کند که آیا پیام حاوی یک شیء voice است.

۲. پردازش پیام صوتی

این بلوک به طور خاص ورودی صوتی را مدیریت می‌کند.

  • Get Voice Message

* نوع: n8n-nodes-base.telegram (با استفاده از عملیات "Get File")

* نقش: دانلود فایل صوتی مرتبط با پیام صوتی از سرورهای تلگرام.

* پیکربندی: از file_id از شیء پیام صوتی استفاده می‌کند.

* اعتبارنامه‌ها: توکن API ربات تلگرام.

  • Transcribe Voice Message

* نوع: @n8n/n8n-nodes-langchain.openAi (با استفاده از عملیات "Audio Transcription")

* نقش: تبدیل فایل صوتی دانلود شده به متن با استفاده از مدل Whisper اوپن‌ای‌آی.

* پیکربندی: منبع روی audio و عملیات روی transcribe تنظیم شده است.

* اعتبارنامه‌ها: کلید API اوپن‌ای‌آی با دسترسی Whisper.

۳. آماده‌سازی متن

این مرحله اطمینان حاصل می‌کند که ورودی متنی قبل از پردازش توسط هوش مصنوعی استاندارد می‌شود.

  • Prepare Text Message for AI Agent

* نوع: n8n-nodes-base.set

* نقش: ایجاد یک فیلد text سازگار که حاوی پرس‌وجوی کاربر است، چه مستقیماً از متن آمده باشد و چه از طریق رونویسی صدا.

* پیکربندی: یک فیلد جدید text را با مقدار محتوای متنی پیام دریافتی تنظیم می‌کند.

۴. منطق اصلی عامل هوش مصنوعی

این بخش هوش مرکزی گردش کار است که توسط LangChain و OpenAI پشتیبانی می‌شود.

  • Simple Memory

* نوع: @n8n/n8n-nodes-langchain.memoryBufferWindow

* نقش: حفظ زمینه مکالمه با ذخیره پیام‌های اخیر. از شناسه چت تلگرام برای مدیریت تاریخچه‌های مکالمه جداگانه استفاده می‌کند.

* پیکربندی: برای استفاده از chatId تلگرام به عنوان sessionKey پیکربندی شده است.

  • OpenAI Chat Model

* نوع: @n8n/n8n-nodes-langchain.lmChatOpenAi

* نقش: قابلیت‌های مدل زبان را فراهم می‌کند، به طور خاص با استفاده از GPT-4.1 برای تولید پاسخ‌ها و درک پرس‌وجوهای پیچیده.

* پیکربندی: مدل روی gpt-4.1 تنظیم شده است.

* اعتبارنامه‌ها: کلید API اوپن‌ای‌آی.

  • Airbnb MCP Client - List Tools

* نوع: n8n-nodes-mcp.mcpClientTool

* نقش: واکشی لیستی از ابزارهای موجود از پلتفرم فرماندهی مدولار (MCP) که می‌توانند برای تعامل با داده‌های Airbnb استفاده شوند.

* پیکربندی: نیازی به پارامترهای خاصی ندارد؛ تمام ابزارهای موجود را لیست می‌کند.

* اعتبارنامه‌ها: کلید API کلاینت MCP.

  • Airbnb MCP Client - Execute Tools

* نوع: n8n-nodes-mcp.mcpClientTool

* نقش: اجرای یک ابزار خاص انتخاب شده توسط عامل هوش مصنوعی، با ارسال هر پارامتر لازم.

* پیکربندی: toolName و toolParameters به صورت پویا توسط عامل هوش مصنوعی ارائه می‌شوند. عملیات روی executeTool تنظیم شده است.

* اعتبارنامه‌ها: کلید API کلاینت MCP.

  • Airbnb Agent

* نوع: @n8n/n8n-nodes-langchain.agent

* نقش: هماهنگ‌کننده اصلی. ورودی text کاربر را تفسیر می‌کند، از Simple Memory برای زمینه استفاده می‌کند، با OpenAI Chat Model برای استدلال تعامل دارد و از نودهای MCP Client Tool برای واکشی و اجرای اقدامات مرتبط با Airbnb استفاده می‌کند. خروجی نهایی را برای تلگرام قالب‌بندی می‌کند.

* پیکربندی: شامل یک اعلان سیستمی است که نقش آن را به عنوان یک متخصص Airbnb تعریف می‌کند.

* ورودی‌ها: text (پرس‌وجوی کاربر)، ai_memory (از Simple Memory)، ai_languageModel (از OpenAI Chat Model)، ai_tool (از نودهای MCP Client).

* خروجی‌ها: پاسخ متنی قالب‌بندی شده.

* نکته: برای پشتیبانی از عامل LangChain به نسخه ۱.۹+ n8n نیاز دارد.

۵. تولید پاسخ

این بخش مسئول ارسال پاسخ هوش مصنوعی به کاربر است.

  • Send Text Response

* نوع: n8n-nodes-base.telegram (با استفاده از عملیات "Send Message")

* نقش: تحویل پاسخ متنی تولید شده توسط هوش مصنوعی به کاربر در تلگرام.

* پیکربندی: از فیلد output از عامل Airbnb و chatId از تریگر اولیه استفاده می‌کند. انتساب غیرفعال شده است.

* اعتبارنامه‌ها: توکن API ربات تلگرام.

  • Summarize Response for Voice

* نوع: @n8n/n8n-nodes-langchain.chainLlm

* نقش: خلاصه کردن پاسخ متنی دقیق به یک خلاصه مختصر و طبیعی که برای پخش صوتی مناسب است. قالب‌بندی، لینک‌ها و ایموجی‌ها را برای بهبود وضوح حذف می‌کند.

* پیکربندی: از یک اعلان طراحی شده برای ایجاد خلاصه‌ای به سبک گفتاری استفاده می‌کند و تعداد کلمات را محدود می‌کند.

* اعتبارنامه‌ها: کلید API اوپن‌ای‌آی.

  • Create Voice Response

* نوع: @n8n/n8n-nodes-langchain.openAi (با استفاده از عملیات "Text-to-Speech")

* نقش: تبدیل متن خلاصه شده به یک فایل صوتی با استفاده از یک موتور تبدیل متن به گفتار (TTS).

* پیکربندی: منبع روی audio تنظیم شده است.

* اعتبارنامه‌ها: کلید API اوپن‌ای‌آی با دسترسی TTS.

  • Send Voice Response

* نوع: n8n-nodes-base.telegram (با استفاده از عملیات "Send Audio")

* نقش: ارسال فایل صوتی تولید شده به عنوان پیام صوتی به کاربر در تلگرام.

* پیکربندی: از chatId از تریگر اولیه استفاده می‌کند و داده‌های صوتی را ارسال می‌کند.

* اعتبارنامه‌ها: توکن API ربات تلگرام.

جدول خلاصه

نام نود (Node Name)نوع نود (Node Type)نقش عملکردی (Functional Role)نود(های) ورودی (Input Node(s))نود(های) خروجی (Output Node(s))یادداشت چسبان (Sticky Note)
Telegram Triggern8n-nodes-base.telegramTriggerدریافت پیام‌های ورودی تلگرامWebhookText or Voiceبه گردش کار عامل تلگرام Airbnb من خوش آمدید! توالی کامل و لینک‌های راه‌اندازی در اینجا گنجانده شده است.
Text or Voicen8n-nodes-base.switchمسیریابی بر اساس نوع پیامTelegram TriggerPrepare Text Message, Get Voice Message
Get Voice Messagen8n-nodes-base.telegramدانلود فایل صوتی صداText or VoiceTranscribe Voice Message
Transcribe Voice Message@n8n/n8n-nodes-langchain.openAiتبدیل صدای صوتی به متنGet Voice MessageAirbnb Agent
Prepare Text Message for AI Agentn8n-nodes-base.setنرمال‌سازی ورودی متن برای هوش مصنوعیText or VoiceAirbnb Agent
Simple Memory@n8n/n8n-nodes-langchain.memoryBufferWindowحفظ حافظه مکالمهAirbnb AgentAirbnb Agent
OpenAI Chat Model@n8n/n8n-nodes-langchain.lmChatOpenAiارائه تکمیل چت GPT-4.1Airbnb AgentAirbnb Agent, Summarize Response for Voice
Airbnb MCP Client - List Toolsn8n-nodes-mcp.mcpClientToolفهرست کردن ابزارهای موجود Airbnb MCPAirbnb AgentAirbnb Agent
Airbnb MCP Client - Execute Toolsn8n-nodes-mcp.mcpClientToolاجرای ابزارهای انتخاب شده Airbnb MCPAirbnb AgentAirbnb Agent
Airbnb Agent@n8n/n8n-nodes-langchain.agentمنطق اصلی هوش مصنوعی: تفسیر، اجرای ابزارها، قالب‌بندیPrepare Text Message, Transcribe Voice Message, Simple Memory, OpenAI Chat Model, MCP Client nodesSend Text Response, Summarize Response for Voice
Send Text Responsen8n-nodes-base.telegramارسال پیام متنی به کاربرAirbnb AgentSummarize Response for Voice
Summarize Response for Voice@n8n/n8n-nodes-langchain.chainLlmایجاد خلاصه مختصر به سبک گفتاری برای صداAirbnb AgentCreate Voice Response
Create Voice Response@n8n/n8n-nodes-langchain.openAiتبدیل متن خلاصه شده به صدا (TTS)Summarize Response for VoiceSend Voice Response
Send Voice Responsen8n-nodes-base.telegramارسال پیام صوتی تولید شده به کاربرCreate Voice Response(End of workflow)

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

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

این ربات تلگرام چگونه کار می‌کند؟

این ربات پیام‌های متنی یا صوتی شما را دریافت می‌کند، با استفاده از هوش مصنوعی (OpenAI و LangChain) درخواست شما را درک کرده، داده‌های مربوط به اقامتگاه‌های Airbnb را جستجو می‌کند و پاسخ را مستقیماً در تلگرام به شما نمایش می‌دهد.

آیا این ربات از جستجوی صوتی پشتیبانی می‌کند؟

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

چه ابزارهایی برای ساخت این ربات استفاده شده است؟

این گردش کار از ابزارهایی مانند n8n، LangChain، OpenAI (شامل مدل‌های GPT و Whisper برای رونویسی صدا) و نودهای تلگرام برای ارتباط با پلتفرم پیام‌رسان استفاده می‌کند.

چگونه می‌توانم این گردش کار را در n8n پیاده‌سازی کنم؟

شما می‌توانید این گردش کار را با استفاده از نودهای مشخص شده در n8n بازسازی کرده و با کلیدهای API مربوط به تلگرام و OpenAI پیکربندی نمایید. جزئیات دقیق در مستندات گردش کار موجود است.

workflowهای مرتبط

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