تحلیل تماس‌های Retell AI با OpenAI و همگام‌سازی با HubSpot

تحلیل تماس‌های Retell AI با OpenAI و همگام‌سازی با HubSpot

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

دانلود workflow

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

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

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

تحلیل رونوشت تماس Retell AI با OpenAI و همگام‌سازی بینش‌ها با HubSpot

این گردش کار، تحلیل رونوشت‌های تماس از Retell AI را خودکار می‌کند و از OpenAI برای خلاصه‌سازی هوشمند و استخراج بینش بهره می‌برد. اطلاعات پردازش شده سپس با HubSpot CRM همگام‌سازی می‌شود، با اعلان‌های اختیاری به Slack و ایجاد وظایف پیگیری برای لیدهای واجد شرایط. گزارش‌های تماس نیز برای پیگیری جامع در Google Sheets نگهداری می‌شوند.

موارد استفاده کلیدی:

  • صلاحیت‌سنجی خودکار فروش: ارزیابی خودکار کیفیت لید بر اساس احساسات و امتیازدهی تماس.
  • غنی‌سازی CRM: بهبود رکوردهای مخاطب در HubSpot با خلاصه‌های دقیق تماس و بینش‌های مبتنی بر هوش مصنوعی.
  • مسیریابی هوشمند لید: هدایت لیدها به اعضای مناسب تیم فروش بر اساس قصد و امتیازات تشخیص داده شده توسط هوش مصنوعی.
  • ثبت متمرکز تماس: نگهداری سابقه یکپارچه از تمام تماس‌های تحلیل شده برای گزارش‌دهی و مراجعه آتی.

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

این گردش کار با یک وب‌هوک call_analyzed از Retell AI آغاز می‌شود. پس از دریافت این تریگر، مراحل مختلفی را طی می‌کند:

1. پیکربندی: یک نود Set امکان سفارشی‌سازی آسان پارامترهایی مانند کانال Slack، آستانه‌های واجد شرایط بودن لید و مقصد Google Sheets را فراهم می‌کند.

2. نرمال‌سازی داده‌ها: محموله وب‌هوک دریافتی تجزیه و به قالبی سازگار ساختاردهی می‌شود و فراداده‌های ضروری تماس و متن پیاده‌شده استخراج می‌گردد.

3. تحلیل هوش مصنوعی: متن پیاده‌شده به OpenAI ارسال می‌شود و یک پرامپت خاص برای استخراج بینش‌های فروش ساختاریافته، شامل احساسات، امتیاز لید، خلاصه، موارد اقدام و سیگنال‌های خرید، طراحی شده است. یک نود Code متعاقب، این خروجی را پردازش کرده و واجد شرایط بودن لید را بر اساس یک آستانه قابل تنظیم تعیین می‌کند.

4. همگام‌سازی CRM و پاسخ: داده‌های تحلیل‌شده تماس در HubSpot به‌روزرسانی می‌شود. پس از آن، پاسخی به وب‌هوک Retell AI مبدأ ارسال می‌شود تا پردازش موفقیت‌آمیز تأیید گردد.

5. واجد شرایط بودن لید و مسیریابی: اگر امتیاز لید تعیین‌شده توسط هوش مصنوعی معیارهای واجد شرایط بودن را برآورده کند، گردش کار یک اعلان Slack به تیم فروش را راه‌اندازی کرده و یک وظیفه پیگیری در HubSpot ایجاد می‌کند.

6. ثبت وقایع: صرف نظر از وضعیت واجد شرایط بودن، سابقه هر تماس تحلیل‌شده برای اهداف حسابرسی و گزارش‌دهی به یک Google Sheet مشخص اضافه می‌شود.

---

تشریح گره به گره (Node Breakdown)

۱. گره راه‌اندازی و پیکربندی (Trigger & Configuration)

این بلوک اولیه، گردش کار را با دریافت وب‌هوک ورودی از Retell AI و تعریف پارامترهای عملیاتی کلیدی راه‌اندازی می‌کند.

#### ۱.۱. دریافت وب‌هوک تماس Retell (Receive Retell Call Webhook)

  • نوع گره: n8n-nodes-base.webhook
  • هدف: گوش دادن به درخواست‌های HTTP POST ورودی از Retell AI، به طور خاص رویداد call_analyzed.
  • پیکربندی:

* مسیر (Path): retell-call-analyzed

* متد HTTP (HTTP Method): POST

* حالت پاسخ (Response Mode): responseNode (نیاز به گره Respond to Webhook در پایین دست دارد)

  • اتصالات:

* ورودی (Input): ندارد (نقطه ورود)

* خروجی (Output): به Set User Config Variables متصل می‌شود.

  • نکات: اطمینان حاصل کنید که URL وب‌هوک ارائه شده توسط Retell AI به درستی برای اشاره به این نقطه پایانی n8n پیکربندی شده است.

#### ۱.۲. تنظیم متغیرهای پیکربندی کاربر (Set User Config Variables)

  • نوع گره: n8n-nodes-base.set
  • هدف: تزریق مقادیر پیکربندی قابل تنظیم به اجرای گردش کار، ضمن حفظ محموله وب‌هوک اصلی.
  • پیکربندی:

* حالت (Mode): دستی (Manual)

* شامل فیلدهای دیگر (Include Other Fields): true (برای حفظ داده‌های وب‌هوک)

* افزودن فیلدها (Add Fields):

* slackChannel: مثال: #sales-alerts

* leadScoreThreshold: مثال: 7 (در مقیاس ۱ تا ۱۰)

* googleSheetId: YOUR_GOOGLE_SHEET_ID_HERE (شناسه Sheet خود را جایگزین کنید)

* sheetName: Call Log

  • اتصالات:

* ورودی (Input): داده‌ها را از Receive Retell Call Webhook دریافت می‌کند.

* خروجی (Output): به Parse Call Transcript and Metadata متصل می‌شود.

  • نکات: قبل از فعال کردن گردش کار، مقادیر جایگزین مانند googleSheetId را به‌روزرسانی کنید.

۲. تجزیه و نرمال‌سازی رونوشت (Transcript Parsing & Normalization)

این بخش بر استخراج و ساختاردهی داده‌های ضروری از محموله وب‌هوک Retell AI تمرکز دارد.

#### ۲.۱. تجزیه رونوشت و فراداده تماس (Parse Call Transcript and Metadata)

  • نوع گره: n8n-nodes-base.code
  • هدف: تبدیل محموله خام وب‌هوک به یک ساختار داده داخلی استاندارد، با مدیریت تغییرات در مکان رونوشت.
  • منطق کد (Code Logic):

* فیلدهایی مانند callId, agentId, fromNumber, toNumber, callDurationSeconds, callStatus, disconnectReason, transcript, و analyzedAt را استخراج می‌کند.

* مقادیر پیکربندی را از گره Set قبلی ادغام می‌کند.

* از فرمت‌های مختلف رونوشت پشتیبانی می‌کند: body.transcript, body.call.transcript, و body.transcript_object[].

* مقادیر پیش‌فرض را برای فیلدهای گمشده اعمال می‌کند (مثال: 'unknown', 0).

  • اتصالات:

* ورودی (Input): داده‌ها را از Set User Config Variables دریافت می‌کند.

* خروجی (Output): به Analyze Call with OpenAI متصل می‌شود.

  • نکات: مدیریت خطای قوی برای داده‌های گمشده یا بدشکل گنجانده شده است.

۳. تحلیل هوش مصنوعی (AI Analysis)

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

#### ۳.۱. تحلیل تماس با OpenAI (Analyze Call with OpenAI)

  • نوع گره: @n8n/n8n-nodes-langchain.openAi
  • هدف: ارسال رونوشت و فراداده تماس به مدل چت OpenAI برای تحلیل ساختاریافته.
  • پیکربندی:

* منبع (Resource): chat

* مدل (Model): gpt-4o-mini (یا جایگزین ترجیحی)

* دما (Temperature): 0.2 (برای خروجی متمرکز و قطعی)

* حداکثر توکن (Max Tokens): 1500

* دستور (Prompt): مدل را برای بازگرداندن JSON حاوی sentiment, leadScore, summary, actionItems, keyTopics, buyingSignals, objections, و recommendedNextStep آموزش می‌دهد. به طور صریح خروجی JSON-only را درخواست می‌کند.

* داده ورودی (Input Data): شامل transcript, callDurationSeconds, و callStatus است.

  • اتصالات:

* ورودی (Input): داده‌ها را از Parse Call Transcript and Metadata دریافت می‌کند.

* خروجی (Output): به Extract and Structure AI Analysis متصل می‌شود.

  • نیازمندی‌ها: نیاز به اعتبارنامه API OpenAI معتبر پیکربندی شده در n8n دارد.

#### ۳.۲. استخراج و ساختاردهی تحلیل هوش مصنوعی (Extract and Structure AI Analysis)

  • نوع گره: n8n-nodes-base.code
  • هدف: تجزیه پاسخ JSON از OpenAI، پاکسازی آن (حذف احتمالی موانع Markdown)، اعمال مقادیر پیش‌فرض در صورت شکست تجزیه، و ادغام بینش‌های هوش مصنوعی با فراداده اصلی تماس. همچنین مقدار بولی isQualified را محاسبه می‌کند.
  • منطق کد (Code Logic):

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

* در صورت شکست تجزیه، مقادیر تحلیل پیش‌فرض (احساسات خنثی، امتیاز ۵ و غیره) را ارائه می‌دهد.

* isQualified را با مقایسه leadScore با leadScoreThreshold از پیکربندی محاسبه می‌کند.

  • اتصالات:

* ورودی (Input): داده‌ها را از Analyze Call with OpenAI دریافت می‌کند.

* خروجی (Output): به سه شاخه تقسیم می‌شود:

* Update HubSpot Contact with Insights

* Check if Lead is Qualified

* Log Call Analysis to Tracking Sheet

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

۴. به‌روزرسانی CRM و پاسخ وب‌هوک (CRM Update & Webhook Response)

این بلوک مسئول به‌روزرسانی HubSpot و تأیید درخواست وب‌هوک اولیه است.

#### ۴.۱. به‌روزرسانی مخاطب HubSpot با بینش‌ها (Update HubSpot Contact with Insights)

  • نوع گره: n8n-nodes-base.hubspot
  • هدف: به‌روزرسانی رکورد مخاطب مربوطه در HubSpot با بینش‌های تولید شده توسط هوش مصنوعی از تماس.
  • پیکربندی:

* منبع (Resource): contact

* عملیات (Operation): update

* شناسه مخاطب (Contact Identifier): ={{ $json.fromNumber }} (از شماره تلفن تماس‌گیرنده استفاده می‌کند)

* ویژگی‌های به‌روزرسانی (Properties to Update):

* last_call_summary: ={{ $json.summary }}

* lead_score: ={{ $json.leadScore }}

* last_call_sentiment: ={{ $json.sentiment }}

* last_call_date: ={{ $json.analyzedAt }}

  • اتصالات:

* ورودی (Input): داده‌ها را از Extract and Structure AI Analysis دریافت می‌کند.

* خروجی (Output): به Respond to Retell Webhook متصل می‌شود.

  • نیازمندی‌ها: نیاز به اعتبارنامه API HubSpot معتبر دارد. ویژگی‌های مخاطب سفارشی (last_call_summary, lead_score, و غیره) باید در حساب HubSpot شما وجود داشته باشند.
  • مشکلات احتمالی: اگر fromNumber به طور منحصر به فرد یک مخاطب را در HubSpot شناسایی نکند، به‌روزرسانی ممکن است با شکست مواجه شود یا رکورد اشتباهی را هدف قرار دهد. در صورت لزوم روش‌های شناسایی جایگزین را در نظر بگیرید.

#### ۴.۲. پاسخ به وب‌هوک Retell (Respond to Retell Webhook)

  • نوع گره: n8n-nodes-base.respondToWebhook
  • هدف: ارسال یک پاسخ موفقیت‌آمیز به وب‌هوک Retell AI، تکمیل درخواست HTTP اولیه.
  • پیکربندی:

* پاسخ با (Respond with): JSON

* بدنه (Body):

* status: "processed"

* callId: ={{ $('Parse Call Transcript and Metadata').first().json.callId }}

  • اتصالات:

* ورودی (Input): داده‌ها را از Update HubSpot Contact with Insights دریافت می‌کند.

* خروجی (Output): ندارد (گره پایانی برای این شاخه)

  • نکات: این گره ضروری است زیرا وب‌هوک با responseNode پیکربندی شده بود. اگر این گره (به عنوان مثال، به دلیل خطایی در به‌روزرسانی HubSpot) نرسد، Retell AI ممکن است با گذشت زمان مواجه شود.

۵. صلاحیت‌سنجی و مسیریابی سرنخ (Lead Qualification & Routing)

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

#### ۵.۱. بررسی صلاحیت سرنخ (Check if Lead is Qualified)

  • نوع گره: n8n-nodes-base.if
  • هدف: به عنوان یک دروازه شرطی عمل می‌کند و گردش کار را بر اساس مقدار بولی isQualified محاسبه شده در گره Extract and Structure AI Analysis هدایت می‌کند.
  • شرط (Condition): {{ $json.isQualified }} برابر با true است.
  • اتصالات:

* ورودی (Input): داده‌ها را از Extract and Structure AI Analysis دریافت می‌کند.

* خروجی (True): به Send Slack Alert متصل می‌شود.

* خروجی (False): از هشدار Slack و ایجاد وظیفه صرف نظر کرده و مستقیماً به ثبت گزارش می‌رود.

#### ۵.۲. ارسال هشدار Slack (Send Slack Alert)

  • نوع گره: n8n-nodes-base.slack
  • هدف: اطلاع‌رسانی به تیم فروش در یک کانال Slack تعیین شده در مورد یک سرنخ واجد شرایط.
  • پیکربندی:

* منبع (Resource): message

* عملیات (Operation): send

* نام کانال (Channel Name): ={{ $json.config.slackChannel }}

* متن (Text): یک پیام قالب‌بندی شده شامل جزئیات تماس، خلاصه و امتیاز سرنخ.

  • اتصالات:

* ورودی (Input): داده‌ها را از خروجی "True" گره Check if Lead is Qualified دریافت می‌کند.

* خروجی (Output): به Create HubSpot Follow-up Task متصل می‌شود.

  • نیازمندی‌ها: نیاز به اعتبارنامه API Slack معتبر پیکربندی شده در n8n دارد.

#### ۵.۳. ایجاد وظیفه پیگیری HubSpot (Create HubSpot Follow-up Task)

  • نوع گره: n8n-nodes-base.hubspot
  • هدف: ایجاد یک وظیفه پیگیری در HubSpot برای سرنخ واجد شرایط.
  • پیکربندی:

* منبع (Resource): task

* عملیات (Operation): create

* نوع وظیفه (Task Type): Follow up

* عنوان (Title): Follow up with qualified lead - {{ $('Parse Call Transcript and Metadata').first().json.fromNumber }}

* یادداشت‌ها (Notes): شامل خلاصه هوش مصنوعی و مراحل بعدی پیشنهادی است.

* مخاطب (Contact): وظیفه را به مخاطب شناسایی شده توسط ={{ $json.fromNumber }} پیوند می‌دهد.

  • اتصالات:

* ورودی (Input): داده‌ها را از Send Slack Alert دریافت می‌کند.

* خروجی (Output): به Log Call Analysis to Tracking Sheet متصل می‌شود.

  • نیازمندی‌ها: نیاز به اعتبارنامه API HubSpot معتبر دارد.

۶. ثبت گزارش (Logging)

این بلوک نهایی تضمین می‌کند که هر تماس تحلیل شده برای مراجعه تاریخی ثبت می‌شود.

#### ۶.۱. ثبت تحلیل تماس در برگه پیگیری (Log Call Analysis to Tracking Sheet)

  • نوع گره: n8n-nodes-base.googleSheets
  • هدف: افزودن یک ردیف به یک Google Sheet حاوی جزئیات کلیدی تماس تحلیل شده.
  • پیکربندی:

* منبع (Resource): row

* عملیات (Operation): insert

* شناسه صفحه گسترده (Spreadsheet ID): ={{ $json.config.googleSheetId }}

* نام برگه (Sheet Name): ={{ $json.config.sheetName }}

* مقادیر (Values): فیلدهایی از داده‌های گردش کار (مانند callId, fromNumber, summary, leadScore, sentiment, isQualified) را به ستون‌های Google Sheet نگاشت می‌کند.

  • اتصالات:

* ورودی (Input): داده‌ها را از Extract and Structure AI Analysis (این یک شاخه موازی است که صرف نظر از صلاحیت اجرا می‌شود) یا از Create HubSpot Follow-up Task اگر سرنخ واجد شرایط بود، دریافت می‌کند.

* خروجی (Output): ندارد (گره پایانی)

  • نیازمندی‌ها: نیاز به اعتبارنامه API Google Sheets معتبر پیکربندی شده در n8n دارد. Google Sheet و نام برگه مشخص شده باید وجود داشته باشند.

---

نکته: این گردش کار از گره‌های بسته پایه n8n و بسته جامعه @n8n/n8n-nodes-langchain استفاده می‌کند. اطمینان حاصل کنید که این موارد در نمونه n8n شما نصب شده‌اند. می‌توانید گردش کارهای بیشتری مانند این را در Axeto n8n Catalog پیدا کنید.

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

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

این گردش کار چگونه به تحلیل تماس‌های Retell AI کمک می‌کند؟

این گردش کار رونوشت تماس‌های Retell AI را دریافت کرده و با استفاده از OpenAI، آن‌ها را خلاصه می‌کند، احساسات را تحلیل می‌کند و بینش‌های کلیدی مانند موارد اقدام و سیگنال‌های خرید را استخراج می‌نماید.

داده‌های تحلیل شده تماس به کجا همگام‌سازی می‌شوند؟

داده‌های تحلیل شده تماس با HubSpot CRM همگام‌سازی می‌شوند تا رکوردهای مخاطب غنی‌تر شده و فرآیند فروش بهبود یابد. همچنین، سابقه تماس‌ها در Google Sheets نیز ثبت می‌شود.

چه اقداماتی برای لیدهای واجد شرایط انجام می‌شود؟

در صورت واجد شرایط بودن لید بر اساس امتیازدهی هوش مصنوعی، گردش کار یک اعلان به Slack برای تیم فروش ارسال کرده و یک وظیفه پیگیری در HubSpot ایجاد می‌کند.

آیا این گردش کار قابل سفارشی‌سازی است؟

بله، پارامترهایی مانند کانال Slack، آستانه واجد شرایط بودن لید و شناسه Google Sheet از طریق یک گره 'Set' قابل تنظیم هستند.

workflowهای مرتبط

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