8
n8n 한국어amn8n.com

AI와 인텐트 라우팅을 사용하여 왓스앱 고객 상담 처리

고급

이것은Support Chatbot, AI Chatbot분야의자동화 워크플로우로, 20개의 노드를 포함합니다.주로 Code, Switch, WhatsApp, GoogleDocsTool, Agent 등의 노드를 사용하며. AI와 의도 경로를 사용하여 WhatsApp 고객 상담 처리

사전 요구사항
  • Google Gemini API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "2awBbs4kwz2DghoQ",
  "meta": {
    "instanceId": "e46a00fdf674c6a717d1781ab876c72daac39cdddf1349ff176b416ee5840ee5",
    "templateCredsSetupCompleted": true
  },
  "name": "Handle WhatsApp customer inquiries with AI and intent routing",
  "tags": [],
  "nodes": [
    {
      "id": "18ede450-1342-4afc-ae8a-e77cd6e0f5b3",
      "name": "Sticky Note - 주요 설명",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -560,
        1104
      ],
      "parameters": {
        "color": 4,
        "width": 566,
        "height": 960,
        "content": "## 💬 WhatsApp Customer Support Bot\n### ✨ Universal Template for ANY Business\n\n**What it does:**\n- Receives WhatsApp messages automatically\n- Classifies customer intent (product, contact, support)\n- Routes to pre-built responses (fast) or AI agent (smart)\n- Sends professional replies with product info & prices\n- Remembers conversation context\n\n**Works for:** Fashion | Electronics | Food | Furniture | Beauty | ANY store!\n\n**Requirements:**\n- WhatsApp Business API (Twilio/360Dialog/Meta)\n- Google Gemini API key\n- n8n instance\n\n**Quick Setup:**\n\n1️⃣ **Connect WhatsApp** - Add API credentials to WhatsApp nodes\n\n2️⃣ **Customize Products** - Edit \"Classify User Intent\" node with YOUR categories\n\n3️⃣ **Add Product List** - Update \"Generate Product Response\" with YOUR items & prices\n\n4️⃣ **Company Info** - Fill YOUR details in \"Build AI System Prompt\" node\n\n5️⃣ **Test & Launch** - Send test messages, verify, activate!\n\n**Customize (No Coding!):**\n- Products: Edit \"Generate Product Response\"\n- Categories: Update \"Classify User Intent\"\n- Store info: Modify \"Generate Contact Info Response\"\n- AI behavior: Adjust \"Build AI System Prompt\"\n\n**Hybrid Approach = Cost Savings:**\n- 80% queries → Pre-built responses (instant, free)\n- 20% queries → AI agent (smart, low cost)\n\n**Result:** Save 80% on AI costs while maintaining quality!\n\n💡 **Pro Tip:** Start with pre-built FAQs, let AI handle the rest!"
      },
      "typeVersion": 1
    },
    {
      "id": "bcd03e0f-491a-4403-9415-1cbebb03990c",
      "name": "Sticky Note - 1단계",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        160,
        1072
      ],
      "parameters": {
        "color": 7,
        "width": 324,
        "height": 401,
        "content": "## 📱 Step 1: Receive WhatsApp Message\n\nWhatsApp Business API triggers the workflow when a customer sends a message.\n\nCaptures:\n- Chat ID\n- User ID\n- User name\n- Message text\n- Timestamp\n\nSupports text messages (media handling can be added)."
      },
      "typeVersion": 1
    },
    {
      "id": "1dd7b535-b77a-43e3-a0c8-8ea2c5ef6f10",
      "name": "Sticky Note - 2단계",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        544,
        1072
      ],
      "parameters": {
        "color": 7,
        "width": 324,
        "height": 443,
        "content": "## 🧠 Step 2: Intent Classification\n\nAnalyzes the message to determine what the customer wants:\n\n**Intents Recognized:**\n- 🛍️ Product inquiry (monitors, CPUs, GPUs, etc.)\n- 📞 Contact information\n- 👋 Greeting\n- 🙏 Thanks\n- 💰 Price inquiry\n- 🆘 Support request\n- ❓ General inquiry\n\nUses keyword matching and pattern recognition for fast, accurate classification."
      },
      "typeVersion": 1
    },
    {
      "id": "9d8b4954-a7ed-44d1-b0f5-722f129450b3",
      "name": "Sticky Note - 3단계",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1040,
        1072
      ],
      "parameters": {
        "color": 7,
        "width": 314,
        "height": 378,
        "content": "## 🔀 Step 3: Intelligent Routing\n\nRoutes to the best response handler based on intent:\n\n**Route 1**: Product inquiries → Pre-built catalog responses (fast, cost-effective)\n\n**Route 2**: Contact/hours → Static information response\n\n**Route 3**: Complex questions → AI agent with full context\n\nThis hybrid approach balances speed, cost, and intelligence."
      },
      "typeVersion": 1
    },
    {
      "id": "185a07f9-2406-4ff8-9e26-c7897dc483e7",
      "name": "Sticky Note - 4단계",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1536,
        1056
      ],
      "parameters": {
        "color": 7,
        "width": 334,
        "height": 393,
        "content": "## 🤖 Step 4: AI Agent (For Complex Queries)\n\nGoogle Gemini AI handles:\n- Custom product recommendations\n- Comparison questions\n- Technical specifications\n- Build suggestions\n- Multi-step conversations\n\nFeatures:\n- Conversation memory (remembers context)\n- Company knowledge (products, policies)\n- Natural language understanding\n- Markdown-formatted responses"
      },
      "typeVersion": 1
    },
    {
      "id": "9c249b38-41a9-4446-befb-a07aaa1076c4",
      "name": "Sticky Note - 5단계",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2000,
        1056
      ],
      "parameters": {
        "color": 7,
        "width": 324,
        "height": 354,
        "content": "## 📤 Step 5: Send WhatsApp Response\n\nFormats and sends the response back to the customer via WhatsApp.\n\nSupports:\n- Markdown formatting (bold, italic, lists)\n- Emojis for engagement\n- Links to products\n- Multi-line messages\n\nResponses are friendly, professional, and on-brand."
      },
      "typeVersion": 1
    },
    {
      "id": "7fb04cfb-53c6-4424-96a4-0a28d0e2c551",
      "name": "WhatsApp Trigger - 메시지 수신",
      "type": "n8n-nodes-base.whatsAppTrigger",
      "position": [
        176,
        1664
      ],
      "webhookId": "whatsapp-webhook-id",
      "parameters": {
        "options": {},
        "updates": [
          "messages"
        ]
      },
      "credentials": {
        "whatsAppTriggerApi": {
          "id": "UHBhPoQG2bNZKkzc",
          "name": "WhatsApp OAuth account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "06578f8a-5296-4b4e-a8d8-5757a5a346ca",
      "name": "WhatsApp 메시지 데이터 파싱",
      "type": "n8n-nodes-base.code",
      "position": [
        384,
        1664
      ],
      "parameters": {
        "jsCode": "// Extract and structure message data\nconst message = $input.item.json.message;\nconst chatId = message.chat.id;\nconst userId = message.from.id;\nconst userName = message.from.first_name || 'Customer';\nconst userText = message.text || '';\nconst messageId = message.message_id;\n\n// Store session data for downstream nodes\nconst sessionData = {\n  chatId: chatId,\n  userId: userId,\n  userName: userName,\n  messageText: userText.toLowerCase(), // Lowercase for intent matching\n  originalText: userText, // Keep original for AI\n  messageId: messageId,\n  timestamp: new Date().toISOString()\n};\n\nreturn [sessionData];"
      },
      "typeVersion": 2
    },
    {
      "id": "d5e00bfe-a374-46f6-a058-e5c6d9bab965",
      "name": "사용자 의도 분류",
      "type": "n8n-nodes-base.code",
      "position": [
        608,
        1664
      ],
      "parameters": {
        "jsCode": "// Intent Classification with Pattern Matching\nconst text = $input.item.json.messageText;\nconst originalText = $input.item.json.originalText;\n\nlet intent = 'general_inquiry';\nlet entities = {\n  category: null,\n  brand: null,\n  priceRange: null\n};\n\n// Priority 1: Contact/Location queries (check first)\nif (/where.*store|store.*locat|address|location|contact|phone|email|visit.*store|shop.*address/i.test(text)) {\n  intent = 'contact_info';\n  return [{...($input.item.json), intent, entities}];\n}\n\n// Priority 2: Greetings (only exact greetings)\nif (/^(hi|hello|hey|good morning|good evening|good afternoon|start|greetings)$/i.test(text)) {\n  intent = 'greeting';\n  return [{...($input.item.json), intent, entities}];\n}\n\n// Priority 3: Thanks\nif (/thank|thanks|appreciate|grateful/i.test(text)) {\n  intent = 'thanks';\n  return [{...($input.item.json), intent, entities}];\n}\n\n// Priority 4: Product categories\n// CUSTOMIZE THESE PATTERNS FOR YOUR BUSINESS TYPE\nconst categories = [\n  // Electronics/Tech Store Examples:\n  { pattern: /(monitor|display|screen|tv)/i, category: 'monitors' },\n  { pattern: /(laptop|notebook|computer)/i, category: 'laptops' },\n  { pattern: /(phone|mobile|smartphone)/i, category: 'phones' },\n  { pattern: /(headphone|earphone|earbuds|airpods)/i, category: 'audio' },\n  \n  // Fashion Store Examples:\n  { pattern: /(shirt|tshirt|top|blouse)/i, category: 'clothing' },\n  { pattern: /(jeans|pants|trousers)/i, category: 'bottomwear' },\n  { pattern: /(dress|gown|saree)/i, category: 'ethnic' },\n  { pattern: /(shoe|footwear|sneaker|sandal)/i, category: 'footwear' },\n  { pattern: /(bag|purse|wallet)/i, category: 'accessories' },\n  \n  // Home/Furniture Examples:\n  { pattern: /(sofa|couch|chair|seating)/i, category: 'furniture' },\n  { pattern: /(bed|mattress|bedroom)/i, category: 'bedroom' },\n  { pattern: /(table|desk|dining)/i, category: 'tables' },\n  { pattern: /(decor|decoration|wall art)/i, category: 'decor' },\n  \n  // Beauty/Cosmetics Examples:\n  { pattern: /(skincare|cream|serum|moisturizer)/i, category: 'skincare' },\n  { pattern: /(makeup|lipstick|foundation)/i, category: 'makeup' },\n  { pattern: /(perfume|fragrance|cologne)/i, category: 'fragrance' },\n  \n  // Food/Grocery Examples:\n  { pattern: /(grocery|groceries|food)/i, category: 'groceries' },\n  { pattern: /(vegetable|fruit|produce)/i, category: 'fresh' },\n  { pattern: /(snack|chips|biscuit)/i, category: 'snacks' },\n  \n  // Add YOUR business-specific categories here\n  // { pattern: /YOUR_KEYWORD/i, category: 'YOUR_CATEGORY' },\n];\n\nfor (const cat of categories) {\n  if (cat.pattern.test(text)) {\n    intent = 'product_inquiry';\n    entities.category = cat.category;\n    break;\n  }\n}\n\n// Priority 5: Order tracking\nif (/track.*order|order.*status|where.*order|order.*id/i.test(text)) {\n  intent = 'order_tracking';\n}\n\n// Priority 6: Price queries (if not already classified)\nif (intent !== 'contact_info' && /price|cost|how much|budget|expensive|cheap|rate/i.test(text)) {\n  intent = 'price_inquiry';\n}\n\n// Priority 7: Shipping/Delivery\nif (/shipping|delivery|courier|dispatch|arrive|reach/i.test(text)) {\n  intent = 'shipping_inquiry';\n}\n\n// Priority 8: Return/Refund\nif (/return|refund|exchange|replace|cancel/i.test(text)) {\n  intent = 'return_request';\n}\n\n// Priority 9: Support queries\nif (/help|support|problem|issue|complaint|not working/i.test(text)) {\n  intent = 'support_request';\n}\n\nreturn [{...($input.item.json), intent, entities}];"
      },
      "typeVersion": 2
    },
    {
      "id": "7445df59-15a2-4734-a871-2d1559546523",
      "name": "의도 기반 라우팅",
      "type": "n8n-nodes-base.switch",
      "position": [
        848,
        1648
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "product_inquiry",
              "conditions": {
                "options": {
                  "caseSensitive": false
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.intent }}",
                    "rightValue": "product_inquiry"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "contact_info",
              "conditions": {
                "options": {
                  "caseSensitive": false
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.intent }}",
                    "rightValue": "contact_info"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {
          "fallbackOutput": "extra"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "81f8deee-e06b-496d-9c3b-b7edde36a79a",
      "name": "제품 응답 생성",
      "type": "n8n-nodes-base.code",
      "position": [
        1120,
        1488
      ],
      "parameters": {
        "jsCode": "// Generate Product Catalog Response\nconst category = $input.item.json.entities.category;\nconst userName = $input.item.json.userName;\n\nlet response = '';\n\n// ========================================\n// CUSTOMIZE WITH YOUR ACTUAL PRODUCTS\n// ========================================\n// The examples below show different business types\n// Replace with YOUR products, prices, and categories\n\n// EXAMPLE 1: Electronics Store\nif (category === 'monitors') {\n  response = `Great choice, ${userName}! Check out our *MONITORS*:\\n\\n`;\n  response += `1. *24\" Full HD Monitor*\\n   💰 ₹8,999\\n   ✅ In Stock\\n   🔗 https://yourstore.com/monitors\\n\\n`;\n  response += `2. *27\" 4K Professional Display*\\n   💰 ₹22,999\\n   🎉 20% OFF!\\n   🔗 https://yourstore.com/monitors\\n\\n`;\n}\n\n// EXAMPLE 2: Fashion Store\nelse if (category === 'clothing') {\n  response = `Hi ${userName}! Here are our trending *CLOTHING* items:\\n\\n`;\n  response += `👕 *Men's Cotton T-Shirts*\\n   💰 Starting at ₹399\\n   🔗 https://yourstore.com/mens-tshirts\\n\\n`;\n  response += `👗 *Women's Summer Dresses*\\n   💰 ₹1,299 - ₹2,999\\n   🎉 Buy 2 Get 10% OFF\\n   🔗 https://yourstore.com/dresses\\n\\n`;\n}\n\n// EXAMPLE 3: Home Decor Store\nelse if (category === 'furniture') {\n  response = `Wonderful choice, ${userName}! Our *FURNITURE* collection:\\n\\n`;\n  response += `🛋️ *3-Seater Sofa Set*\\n   💰 ₹24,999\\n   🚚 Free Delivery\\n   🔗 https://yourstore.com/sofas\\n\\n`;\n  response += `🪑 *Dining Table (6-Seater)*\\n   💰 ₹15,999\\n   ✅ Solid Wood\\n   🔗 https://yourstore.com/dining\\n\\n`;\n}\n\n// EXAMPLE 4: Beauty & Cosmetics\nelse if (category === 'skincare') {\n  response = `Great selection, ${userName}! Our *SKINCARE* products:\\n\\n`;\n  response += `✨ *Vitamin C Face Serum*\\n   💰 ₹599\\n   🌿 100% Natural\\n   🔗 https://yourstore.com/skincare\\n\\n`;\n  response += `💆 *Anti-Aging Night Cream*\\n   💰 ₹899\\n   ⭐ Bestseller!\\n   🔗 https://yourstore.com/skincare\\n\\n`;\n}\n\n// EXAMPLE 5: Food & Grocery\nelse if (category === 'groceries') {\n  response = `Perfect, ${userName}! Check our *GROCERIES*:\\n\\n`;\n  response += `🌾 *Organic Rice (5kg)*\\n   💰 ₹450\\n   🌱 Chemical-free\\n   🔗 https://yourstore.com/groceries\\n\\n`;\n  response += `🫘 *Mixed Nuts Pack (500g)*\\n   💰 ₹299\\n   💪 High Protein\\n   🔗 https://yourstore.com/dry-fruits\\n\\n`;\n}\n\n// Default: Show all categories\nelse {\n  response = `Hi ${userName}! Browse our categories:\\n\\n`;\n  response += `📱 [Category 1]\\n`;\n  response += `👕 [Category 2]\\n`;\n  response += `🏠 [Category 3]\\n`;\n  response += `💄 [Category 4]\\n\\n`;\n  response += `🌐 Visit: https://yourstore.com/`;\n}\n\n// Add universal call-to-action\nresponse += `\\n\\n✨ Special Offer: [Your Current Promotion]`;\nresponse += `\\n📞 Questions? Call: +91 XXXXXXXXXX`;\nresponse += `\\n💬 Or just reply here!`;\n\nreturn [{\n  chatId: $input.item.json.chatId,\n  response: response,\n  parseMode: 'Markdown'\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "8edafb90-588a-40ca-93b5-366fa5cbcf71",
      "name": "연락처 정보 응답 생성",
      "type": "n8n-nodes-base.code",
      "position": [
        1120,
        1664
      ],
      "parameters": {
        "jsCode": "// Generate Contact Information Response\nconst userName = $input.item.json.userName;\n\n// CUSTOMIZE THIS WITH YOUR COMPANY DETAILS\nconst response = `📍 *Your Company Name - Contact Details*\\n\\n🏢 *Address:*\\nYour Street Address\\nCity, State - PIN Code\\n\\n📞 *Phone:*\\n+91 XXXXXXXXXX (Main)\\n+91 XXXXXXXXXX (Sales)\\n+91 XXXXXXXXXX (Support)\\n\\n📧 *Email:*\\ninfo@yourcompany.com\\nsupport@yourcompany.com\\n\\n🌐 *Website:*\\nhttps://yourcompany.com/\\n\\n⏰ *Store Hours:*\\nMon-Sat: 10 AM - 8 PM\\nSunday: 11 AM - 6 PM\\n\\nFeel free to visit us, ${userName}! 😊`;\n\nreturn [{\n  chatId: $input.item.json.chatId,\n  response: response,\n  parseMode: 'Markdown'\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "6454f0d9-1b24-4dec-820d-073ce268d1a2",
      "name": "AI 시스템 프롬프트 구축",
      "type": "n8n-nodes-base.code",
      "position": [
        1424,
        1664
      ],
      "parameters": {
        "jsCode": "// Build comprehensive AI system prompt with company knowledge\nconst userMessage = $input.first().json.originalText;\nconst userName = $input.first().json.userName;\nconst intent = $input.first().json.intent;\n\n// ========================================\n// CUSTOMIZE THIS SECTION FOR YOUR BUSINESS\n// ========================================\n\nconst systemPrompt = `You are a helpful AI customer service assistant for [YOUR COMPANY NAME].\n\n📋 COMPANY INFORMATION:\n- Business Name: [Your Business Name]\n- Industry: [e.g., Fashion, Electronics, Home Decor, Food & Beverage, etc.]\n- Store Address: [Your Physical Address]\n- Phone: [Your Phone Number(s)]\n- Email: [Your Email Address]\n- Website: [Your Website URL]\n\n🛍️ WHAT WE SELL:\n[Describe your products/services in 2-3 sentences]\nExamples:\n- \"We sell premium handcrafted leather bags, wallets, and accessories\"\n- \"We offer organic skincare products made from natural ingredients\"\n- \"We provide home furniture including sofas, beds, dining sets, and decor\"\n\n📦 PRODUCT CATEGORIES:\n[List your main categories, e.g.:\n- Category 1: [Name]\n- Category 2: [Name]\n- Category 3: [Name]]\n\n💰 PRICING & PAYMENT:\n- Price Range: [e.g., ₹500 - ₹50,000]\n- Accepted Payments: [e.g., Cash on Delivery, Credit/Debit Cards, UPI, Net Banking]\n- Current Offers: [Any ongoing sales/discounts]\n\n🚚 DELIVERY & SHIPPING:\n- Delivery Areas: [e.g., Pan India, Local City Only, International]\n- Delivery Time: [e.g., 3-5 business days]\n- Shipping Cost: [e.g., Free above ₹999, ₹50 flat rate]\n\n🔄 POLICIES:\n- Return Policy: [e.g., 7-day return, 30-day exchange]\n- Warranty: [If applicable]\n- Refund Policy: [Your refund terms]\n\n🎯 YOUR ROLE:\nYou help customers with:\n1. Product recommendations based on their needs\n2. Answering questions about prices, availability, and features\n3. Explaining policies (returns, shipping, payments)\n4. Providing order tracking information\n5. Resolving common issues and concerns\n6. Guiding them to make purchases\n\n💬 RESPONSE STYLE:\n1. Be warm, friendly, and professional\n2. Always use the customer's name: ${userName}\n3. Provide specific, helpful answers\n4. Mention prices in your local currency\n5. Highlight ongoing offers when relevant\n6. Use emojis appropriately for engagement (but don't overdo it)\n7. Keep responses concise and easy to read on mobile\n8. If you don't know something specific, direct them to call or email\n9. Always end complex responses with a clear call-to-action\n\n📍 IMPORTANT NOTES:\n- Current customer query type: ${intent}\n- If customer asks about specific products not in your knowledge, provide general category info and suggest they visit the website or call\n- For order-specific questions (tracking, returns), direct them to email or phone with order number\n- Be honest about delivery times and stock availability\n`;\n\nreturn [{\n  ...($input.first().json),\n  systemPrompt: systemPrompt,\n  userPrompt: userMessage\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "b13be1ed-6b8a-44a8-8dda-30ea5634eb00",
      "name": "AI Agent - 복잡한 문의 처리",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1632,
        1664
      ],
      "parameters": {
        "text": "={{ $json.userPrompt }}",
        "options": {
          "systemMessage": "={{ $json.systemPrompt }}"
        },
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "ea4fbfc4-99fd-4fa0-9c86-a4093d1c5dbd",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        1632,
        1520
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "googlePalmApi": {
          "id": "KtAMOYdbcKc3zjad",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "38a18571-b06e-450b-85fe-34b33e312569",
      "name": "대화 메모리",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        1728,
        1808
      ],
      "parameters": {
        "sessionKey": "={{ $json.userId }}",
        "sessionIdType": "customKey"
      },
      "typeVersion": 1.2
    },
    {
      "id": "50a654e2-7c70-4b0c-99be-ca2ba890961e",
      "name": "Google Docs - 제품 카탈로그 (선택사항)",
      "type": "n8n-nodes-base.googleDocsTool",
      "position": [
        1776,
        1504
      ],
      "parameters": {
        "operation": "get",
        "documentURL": "https://docs.google.com/document/d/YOUR_DOCUMENT_ID/edit"
      },
      "credentials": {
        "googleDocsOAuth2Api": {
          "id": "HHtSmyiZeuvQ7w3f",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "78c748ca-531b-4aaa-8d75-471bfe96d8d7",
      "name": "AI 응답 형식화",
      "type": "n8n-nodes-base.code",
      "position": [
        1952,
        1664
      ],
      "parameters": {
        "jsCode": "// Format AI response for WhatsApp\nconst aiResponse = $input.first().json.output;\nconst chatId = $input.first().json.chatId;\n\nreturn [{\n  chatId: chatId,\n  response: aiResponse,\n  parseMode: 'Markdown'\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "30eca11b-6aae-4db7-ad0a-1c58d6311d5a",
      "name": "기본 응답 생성",
      "type": "n8n-nodes-base.code",
      "position": [
        1136,
        1872
      ],
      "parameters": {
        "jsCode": "// Generate default/fallback response\nconst userName = $input.item.json.userName;\n\n// ========================================\n// CUSTOMIZE THIS MENU FOR YOUR BUSINESS\n// ========================================\n\nconst response = `Hi ${userName}! 👋 Welcome to [Your Store Name]!\\n\\nI can help you with:\\n\\n🛍️ *Browse Products:*\\n• [Your Category 1]\\n• [Your Category 2]\\n• [Your Category 3]\\n• [Your Category 4]\\n• And more...\\n\\n📦 *Order Information:*\\n• Track your order\\n• Check delivery status\\n• Return or exchange items\\n\\n💰 *Pricing & Offers:*\\n• Current promotions\\n• Bulk discounts\\n• Payment options\\n\\n📍 *Store Information:*\\n• Location & hours\\n• Contact details\\n• Shipping areas\\n\\n💬 *Try asking me:*\\n• \"Show me [product type]\"\\n• \"What's available under ₹[amount]?\"\\n• \"Do you deliver to [location]?\"\\n• \"What's your return policy?\"\\n• \"Where is your store?\"\\n\\n📞 *Need Personal Assistance?*\\nCall: +91 XXXXXXXXXX\\nEmail: info@yourstore.com\\n\\nWhat would you like to know? 😊`;\n\nreturn [{\n  chatId: $input.item.json.chatId,\n  response: response,\n  parseMode: 'Markdown'\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "ec2b6512-76a0-4f25-a0eb-0f14615b070f",
      "name": "WhatsApp 응답 전송",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        2192,
        1664
      ],
      "webhookId": "9fab27ba-160c-49be-8e15-a2dbe798a318",
      "parameters": {},
      "credentials": {
        "whatsAppApi": {
          "id": "k1o5E0dQ9sRIo9pB",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "4cfcb3d6-cf04-4278-ba04-65106b76e543",
  "connections": {
    "7445df59-15a2-4734-a871-2d1559546523": {
      "main": [
        [
          {
            "node": "81f8deee-e06b-496d-9c3b-b7edde36a79a",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "8edafb90-588a-40ca-93b5-366fa5cbcf71",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "30eca11b-6aae-4db7-ad0a-1c58d6311d5a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "78c748ca-531b-4aaa-8d75-471bfe96d8d7": {
      "main": [
        [
          {
            "node": "ec2b6512-76a0-4f25-a0eb-0f14615b070f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "38a18571-b06e-450b-85fe-34b33e312569": {
      "ai_memory": [
        [
          {
            "node": "b13be1ed-6b8a-44a8-8dda-30ea5634eb00",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "d5e00bfe-a374-46f6-a058-e5c6d9bab965": {
      "main": [
        [
          {
            "node": "7445df59-15a2-4734-a871-2d1559546523",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6454f0d9-1b24-4dec-820d-073ce268d1a2": {
      "main": [
        [
          {
            "node": "b13be1ed-6b8a-44a8-8dda-30ea5634eb00",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ea4fbfc4-99fd-4fa0-9c86-a4093d1c5dbd": {
      "ai_languageModel": [
        [
          {
            "node": "b13be1ed-6b8a-44a8-8dda-30ea5634eb00",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "30eca11b-6aae-4db7-ad0a-1c58d6311d5a": {
      "main": [
        [
          {
            "node": "6454f0d9-1b24-4dec-820d-073ce268d1a2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "81f8deee-e06b-496d-9c3b-b7edde36a79a": {
      "main": [
        [
          {
            "node": "6454f0d9-1b24-4dec-820d-073ce268d1a2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "06578f8a-5296-4b4e-a8d8-5757a5a346ca": {
      "main": [
        [
          {
            "node": "d5e00bfe-a374-46f6-a058-e5c6d9bab965",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8edafb90-588a-40ca-93b5-366fa5cbcf71": {
      "main": [
        [
          {
            "node": "6454f0d9-1b24-4dec-820d-073ce268d1a2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b13be1ed-6b8a-44a8-8dda-30ea5634eb00": {
      "main": [
        [
          {
            "node": "78c748ca-531b-4aaa-8d75-471bfe96d8d7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7fb04cfb-53c6-4424-96a4-0a28d0e2c551": {
      "main": [
        [
          {
            "node": "06578f8a-5296-4b4e-a8d8-5757a5a346ca",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "50a654e2-7c70-4b0c-99be-ca2ba890961e": {
      "ai_tool": [
        [
          {
            "node": "b13be1ed-6b8a-44a8-8dda-30ea5634eb00",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급 - 지원 챗봇, AI 챗봇

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
고급
노드 수20
카테고리2
노드 유형9
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34