Telegramを使用したAI音声通話による不動産・レストラン予約の自動化
上級
これはPersonal Productivity, AI Chatbot分野の自動化ワークフローで、28個のノードを含みます。主にFilter, Switch, Webhook, Telegram, HttpRequestなどのノードを使用。 Telegram を使った AI 音声通話による不動産とレストランの自動予約
前提条件
- •HTTP Webhookエンドポイント(n8nが自動生成)
- •Telegram Bot Token
- •ターゲットAPIの認証情報が必要な場合あり
- •Google Gemini API Key
使用ノード (28)
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"meta": {
"instanceId": "3378b0d68c3b7ebfc71b79896d94e1a044dec38e99a1160aed4e9c323910fbe2"
},
"nodes": [
{
"id": "6c5d6cf8-0dfa-48a5-8872-cf5cc69e049b",
"name": "セクション: Webhook トリガー & 通話後分析",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1776,
2320
],
"parameters": {
"width": 1080,
"height": 576,
"content": "**Webhook & Post-call Analysis**\n- Retell Webhook\n- Filter call_ended events\n- AI analyzes transcript"
},
"typeVersion": 1
},
{
"id": "9782dbb6-bae4-4888-8c90-232d1e64c3de",
"name": "Gemini 2.0 Flash",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-768,
1616
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "Pz5rkKL1ZRGrSYoQ",
"name": "key studio google"
}
},
"typeVersion": 1
},
{
"id": "996cc320-5576-4751-a5e0-bd8c0f562f4f",
"name": "Retell Create Call",
"type": "n8n-nodes-base.httpRequest",
"position": [
-224,
1408
],
"parameters": {
"url": "https://api.retellai.com/v2/create-phone-call",
"method": "POST",
"options": {},
"jsonBody": "={{ $json.output }}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpBearerAuth": {
"id": "GQi0JW5mlXfIppTf",
"name": "retellai"
},
"httpHeaderAuth": {
"id": "0BDVybffgPLfET7n",
"name": "retelai"
}
},
"typeVersion": 4.2
},
{
"id": "a1aae24d-ec39-4545-b09a-07cc0e5c752e",
"name": "Retell Webhook トリガー",
"type": "n8n-nodes-base.webhook",
"position": [
-1648,
2464
],
"webhookId": "retell-webhook-agent",
"parameters": {
"path": "retell-webhook-agent",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 1.1
},
{
"id": "f65ae764-312f-407e-9666-2b4b6ed93a62",
"name": "AI エージェント Parse Call",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1232,
2464
],
"parameters": {
"text": "=Aquí esta la respuesta de Retellai con los datos y la transcripcion de la llamada analizala: {{ $json.body.call.transcript }} call.status {{ $json.body.call.call_status }} disconection_reason: {{ $json.body.call.disconnection_reason }} ",
"options": {
"systemMessage": "=[ROL]\nEres un experto en análisis de transcripciones de llamadas. Tu trabajo es decidir si la cita quedó REALMENTE confirmada y, solo entonces, crear el evento en Google Calendar con tu tool.\n\n[ENTRADAS DISPONIBLES]\n- now: {{ $now }} (fecha/hora actual)\n- transcript: transcripción completa de la llamada (agent/user)\n- disconnection_reason: motivo de fin de llamada (ej.: agent_hangup, user_hangup, inactivity, voicemail_reached, error_*)\n- started_at / ended_at / duration\n- direccion_fallback: direccion (dirección que yo tenía preparada)\n- precio: precio \n\n[CRITERIOS PARA CONSIDERAR “VISITA CONFIRMADA”]\nDebes cumplir TODOS:\n1) Fin de llamada correcto: disconnection_reason ∈ {agent_hangup, user_hangup, call_transfer}. Rechaza voicemail_reached, inactivity, max_duration_reached, dial_*, error_*.\n2) Confirmación explícita del INTERLOCUTOR (no del agente). Acepta frases inequívocas como:\n - “sí, perfecto”, “de acuerdo”, “ok”, “confirmo”, “queda para …”, “quedamos …”, “nos vemos …”, “me viene bien …”.\n3) Fecha y hora claras:\n - Convierte lenguaje natural (“jueves”, “mañana”, “a las cinco”) a fecha/hora (YYYY-MM-DD, HH:mm) en zona horaria de España.\n - La hora debe estar DENTRO de alguna franja de slots_json para ese día (from ≤ hora < to).\n - Si el usuario propone fuera de franja, NO confirmes; marca fallo.\n4) Dirección:\n - Si el usuario dijo la dirección, úsala tal cual (normaliza números en dígitos: “sesenta y siete” → “67” y respeta tildes: “López”).\n - Si no se dijo, usa direccion_fallback.\n5) Coherencia final:\n - En los últimos turnos debe verse un resumen o aceptación de la cita (del agente o del usuario). Si termina por silencio u omisión, NO confirmes.\n\n[CUANDO NO CONFIRMAR]\n- transcript vacío o casi sin contenido.\n- Falta de confirmación explícita del usuario.\n- Hora fuera de slots_json o sin fecha/hora claras.\n- Cualquier disconnection_reason distinto a los permitidos.\n- Cierre confuso (ej.: solo el agente resume pero el usuario no acepta).\n\n[EXTRACCIÓN DE DATOS]\n- fecha: YYYY-MM-DD\n- hora: HH:mm (24h)\n- direccion: string\n- nombre_contacto y telefono_contacto si aparecen (opcionales)\n- who_hung_up: “agent” / “user” / “other” (según disconnection_reason)\n- resumen_llamada: 1–2 frases objetivas (qué se acordó o por qué falló)\n\n[ACCIÓN DE CALENDARIO]\n- Solo si “Visita confirmada” según las reglas de arriba: crea evento en Google Calendar (usa tu tool) con:\n - title: \"Visita piso – direccion\"\n - start: fecha + hora (zona horaria España)\n - end: start + 30 o 45 min (elige 45 min por defecto si no se indicó duración)\n - description: incluir nombre_contacto, telefono_contacto (si hay), disconnection_reason, precio (si relevante) y el resumen_llamada.\n- Si NO cumple, NO crees evento.\n\n[FORMATO DE SALIDA – SIEMPRE ASÍ]\n\n- ✅ Visita confirmada!\n - Si el evento se creó: añade en la segunda línea “✅ Evento creado en tu calendario.”\n - Si falló al crear por un error técnico: “⚠️ Confirmada pero el evento no se pudo crear: <motivo>”\n- ❌ No se ha podido confirmar la cita.\n- Si fue FALLO, añade “Motivo: <razón>” (p. ej., “hora fuera de disponibilidad”, “sin confirmación explícita”, “voicemail”, etc.)\n- Evaluación final que tal fue la llamada,sono convincente? fue bien?\n\n\n\n[POLÍTICAS DE INTERPRETACIÓN]\n- Fechas relativas: interpreta “jueves” como el próximo jueves posterior a started_at.\n- Horas: normaliza “cinco de la tarde” → 17:00.\n- Nombres y calles: respeta tildes (López, Alcalá). “sesenta y siete” → “67”.\n- Si hay varias fechas/horas en la conversación, usa la ÚLTIMA confirmada por el USUARIO.\n- Si slots_json no tiene ese día/hora, NO confirmes.\n\n[EJEMPLOS RÁPIDOS]\n- Usuario: “El jueves a las 17:00.” (slots_json: solo ≥ 19:00) → ❌ No confirmado (fuera de franja).\n- Usuario: “Quedamos el jueves a las 19:00.” + dirección dicha → ✅ Confirmada y crear evento.\n- Agente: “Queda para el jueves a las 19:00, ¿correcto?” Usuario: (silencio) → ❌ No confirmado.\n"
},
"promptType": "define"
},
"typeVersion": 1.7
},
{
"id": "e7d4003b-97dc-4839-9886-021ff1f0f3e5",
"name": "Gemini 2.0 Flash 2",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1232,
2688
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "Pz5rkKL1ZRGrSYoQ",
"name": "key studio google"
}
},
"typeVersion": 1
},
{
"id": "07d76d6b-97e0-44c3-aa6e-1de1b6be8a76",
"name": "Notify Success",
"type": "n8n-nodes-base.telegram",
"position": [
-944,
2448
],
"webhookId": "9275ea18-e94f-4a3a-86f4-fb02b92f3fe0",
"parameters": {
"text": "=\n{{ $json.output }}",
"chatId": "=245284777",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "Yz85NEO7PkLjqZYt",
"name": "agentsocialmediaAIbot"
}
},
"typeVersion": 1.1
},
{
"id": "0394bc79-5900-43fb-a8f6-f26d6c31a9cb",
"name": "Get an event in Google カレンダー",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-672,
1648
],
"parameters": {
"eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', `Ver si hay disponibilidad ese día y hora en el calendario`, 'string') }}",
"options": {},
"calendar": {
"__rl": true,
"mode": "list",
"value": "bfbpki3lq30nv2hs07kdrudmco@group.calendar.google.com",
"cachedResultName": "alpa y muton"
},
"operation": "get"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "YGoukaJSksnL1Jfq",
"name": "Google Calendar account jc.caverogracia"
}
},
"typeVersion": 1.3
},
{
"id": "5bb4a072-bfa9-4769-a902-bbadf2e8e179",
"name": "構造化出力パーサー",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-544,
1552
],
"parameters": {
"autoFix": true,
"jsonSchemaExample": "{\n \"from_number\": \"+34949960018\",\n \"to_number\": \"complete_llm\",\n \"retell_llm_dynamic_variables\": {\n \"direccion\": \"complete_llm\",\n \"slots_disponibles\": \"complete_llm\"\n }\n}"
},
"typeVersion": 1.3
},
{
"id": "d2515717-c624-4eec-ab39-4bde25c452e1",
"name": "Google Gemini チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-544,
1728
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "Pz5rkKL1ZRGrSYoQ",
"name": "key studio google"
}
},
"typeVersion": 1
},
{
"id": "c3887391-2f0f-4d7d-8ad1-dbcc6390f312",
"name": "フィルター",
"type": "n8n-nodes-base.filter",
"position": [
-1424,
2464
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "e970c523-87ca-43f2-8eb8-6cb3a4811b95",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.body.event }}",
"rightValue": "call_ended"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "a9f6708f-7028-4a5f-9dfe-3e188a3b7d20",
"name": "Create an event in Google カレンダー",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-1088,
2704
],
"parameters": {
"end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
"start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "bfbpki3lq30nv2hs07kdrudmco@group.calendar.google.com",
"cachedResultName": "alpa y muton"
},
"additionalFields": {
"summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}",
"attendees": [
"alessiapavone1991@gmail.com",
"jc.caverogracia@gmail.com"
],
"description": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', ``, 'string') }}"
},
"useDefaultReminders": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Default_Reminders', ``, 'boolean') }}"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "YGoukaJSksnL1Jfq",
"name": "Google Calendar account jc.caverogracia"
}
},
"typeVersion": 1.3
},
{
"id": "4e18400a-65d1-4951-91b1-5cf142396ca6",
"name": "Telegram トリガー",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-1696,
1680
],
"webhookId": "ea1688c0-4e5b-4439-b21e-054c1ceb2aa9",
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "Yz85NEO7PkLjqZYt",
"name": "agentsocialmediaAIbot"
}
},
"typeVersion": 1.2
},
{
"id": "ee853319-7d74-44c2-bde1-6d9be7ce3d33",
"name": "Send a text message",
"type": "n8n-nodes-base.telegram",
"position": [
-1488,
1680
],
"webhookId": "0ffac095-d83a-48ff-96e8-9fb3223634d2",
"parameters": {
"text": "Comenzando llamada",
"chatId": "={{ $json.message.chat.id }}",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "Yz85NEO7PkLjqZYt",
"name": "agentsocialmediaAIbot"
}
},
"typeVersion": 1.2
},
{
"id": "be55dfc4-a7b5-483c-8701-9c8163ffb13f",
"name": "Gemini 2.0 Flash1",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-768,
2144
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "Pz5rkKL1ZRGrSYoQ",
"name": "key studio google"
}
},
"typeVersion": 1
},
{
"id": "8d309cbf-b0b6-4598-a28b-024c5ff7154d",
"name": "Retell Create Call1",
"type": "n8n-nodes-base.httpRequest",
"position": [
-224,
1904
],
"parameters": {
"url": "https://api.retellai.com/v2/create-phone-call",
"method": "POST",
"options": {},
"jsonBody": "={{ $json.output }}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "0BDVybffgPLfET7n",
"name": "retelai"
}
},
"typeVersion": 4.2
},
{
"id": "acaf744a-3e24-4e79-9d12-eb75b8f3eb9f",
"name": "Get an event in Google カレンダー1",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-656,
2176
],
"parameters": {
"eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', `Ver si hay disponibilidad ese día y hora en el calendario`, 'string') }}",
"options": {},
"calendar": {
"__rl": true,
"mode": "list",
"value": "bfbpki3lq30nv2hs07kdrudmco@group.calendar.google.com",
"cachedResultName": "alpa y muton"
},
"operation": "get"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "YGoukaJSksnL1Jfq",
"name": "Google Calendar account jc.caverogracia"
}
},
"typeVersion": 1.3
},
{
"id": "76c3d2af-9370-4614-8319-b733a0ffedb4",
"name": "構造化出力パーサー1",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-544,
2160
],
"parameters": {
"autoFix": true,
"jsonSchemaExample": "{\n \"from_number\": \"+34949960018\",\n \"to_number\": \"complete_llm\",\n \"override_agent_id\": \"agent_6f8860a113d84673ea6e52cfe2\",\n \"retell_llm_dynamic_variables\": {\n \"num_personas\": \"complete_llm\",\n \"hora_deseada\": \"complete_llm\"\n }\n}"
},
"typeVersion": 1.3
},
{
"id": "7d88c75e-a24c-4d31-9401-8192442e8780",
"name": "Google Gemini チャットモデル1",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-544,
2272
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "Pz5rkKL1ZRGrSYoQ",
"name": "key studio google"
}
},
"typeVersion": 1
},
{
"id": "d3abfa2a-6f9a-4ba6-bbfc-a93ab1b0d4db",
"name": "AI エージェント Reserva Restaurantes",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-704,
2016
],
"parameters": {
"text": "=Eres un asistente experto en reservar mesa en restaurantes\n\n**Comando recibido:** {{ $('Telegram Trigger').item.json.message.text }}\n\n**Tu tarea:**\n1. **Extraer datos del comando** `/cita <telefono> [direccion] [notas]`\n - Normaliza el teléfono a formato E.164 español (+34XXXXXXXXX)\n - Valida que sea móvil español (6,7,8,9 + 8 dígitos)\n - Extrae número de personas y la hora deseada\n\n\n2. **Preparar llamada con Retell AI:**\n - Teléfono destino: el extraído del comando\n - Genera un prompt natural para el agente de voz:\n * Solicitar visita al piso en [dirección]\n * Proponer los 3 slots disponibles\n * Confirmar: dirección\n * Ser breve y profesional\n - Incluir metadata: chatId, direccion, intentos:0\n\n3. **Devolver JSON** para hacer la llamada:\n```json\n{\n \"from_number\": \"+34949960018\",\n \"to_number\": \"complete_llm\",\n \"override_agent_id\": \"agent_6f8860a113d84673ea6e52cfe2\",\n \"retell_llm_dynamic_variables\": {\n \"num_personas\": \"complete_llm\",\n \"hora_deseada\": \"complete_llm\"\n }\n}\n```\n\n\n**Timezone:** Europe/Madrid\n**Fecha actual:** {{ $now.toISO() }}",
"options": {
"systemMessage": "Eres un asistente de IA experto en scheduling y automatización. Usas herramientas para obtener datos de calendarios y generar llamadas telefónicas. Siempre devuelves JSON válido y bien estructurado."
},
"promptType": "define",
"hasOutputParser": true
},
"retryOnFail": true,
"typeVersion": 1.7
},
{
"id": "e4308412-51fe-4f44-8fe3-5b3f5a0feb2f",
"name": "スイッチ",
"type": "n8n-nodes-base.switch",
"position": [
-1280,
1680
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "pisos",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "7fafd93a-8ce4-4ddd-a983-4e3934efe1bb",
"operator": {
"type": "string",
"operation": "notStartsWith"
},
"leftValue": "={{ $('Telegram Trigger').item.json.message.text }}",
"rightValue": "/reserva"
}
]
},
"renameOutput": true
},
{
"outputKey": "Reserva restaurante",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "611dbffc-c663-48c9-9e10-c045f26f4505",
"operator": {
"type": "string",
"operation": "startsWith"
},
"leftValue": "={{ $('Telegram Trigger').item.json.message.text }}",
"rightValue": "/reserva"
}
]
},
"renameOutput": true
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "199a1023-342c-48c9-9851-e313a22ac3f6",
"name": "設定up Notes1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2464,
1744
],
"parameters": {
"width": 608,
"height": 624,
"content": "**QUICK SETUP: RetellAI, Telegram & Google Calendar**\n\n**1. RetellAI (Voice Calling)**\n - Create an agent at Retell.ai and get your API Key.\n - In n8n, create \"HTTP Bearer YOUR_TOKEN_HERE\" credentials with that API key.\n - Assign the credentials to the `Retell Create Call` nodes.\n - In RetellAI, set the webhook to point to your `Retell Webhook` node's URL.\n - Set your outbound phone number (`from_number`).\n\n**2. Telegram (Bot)**\n - Create a bot with @BotFather to get the token.\n - In n8n, create \"Telegram API\" credentials with the token.\n - Assign the credentials to the Telegram nodes.\n - Get your Chat ID by starting a conversation with the bot and use it where needed (e.g., `Notify Success`).\n\n**3. Google Calendar**\n - In Google Cloud, enable the Google Calendar API and create OAuth 2.0 credentials.\n - Add the n8n callback URL to the authorized redirect URIs.\n - In n8n, create and authorize \"Google Calendar OAuth2 API\" credentials.\n - Replace the sample Calendar ID with yours in the calendar nodes.\n\n**Final Checklist:**\n- [ ] Replace all sample data (IDs, phone numbers).\n- [ ] Run a full test by sending a command from Telegram.\n- [ ] Adjust the timezone if necessary."
},
"typeVersion": 1
},
{
"id": "cd2945c3-53e9-4abe-8e7b-0d2cba4b9037",
"name": "セクション: トリガー",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1728,
1584
],
"parameters": {
"width": 200,
"height": 288,
"content": "**Triggers**\n- Telegram Trigger"
},
"typeVersion": 1
},
{
"id": "4079fb64-f95c-4227-a886-8e1a2bb7fa33",
"name": "セクション: 解析 & ルーティング",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1520,
1584
],
"parameters": {
"width": 420,
"height": 288,
"content": "**Parsing & Routing**\n- Switch routes commands\n- Initial Telegram reply"
},
"typeVersion": 1
},
{
"id": "d5831d91-7d57-45f6-9c2a-13f8f3cf1a09",
"name": "セクション: エージェント – 物件内見",
"type": "n8n-nodes-base.stickyNote",
"position": [
-800,
1264
],
"parameters": {
"width": 516,
"height": 608,
"content": "**Agent: Property Viewings**\n- LLM generates call JSON\n- Calendar availability logic"
},
"typeVersion": 1
},
{
"id": "3d64406e-42e0-4e8f-8380-9475f267234a",
"name": "AI エージェント: Property Viewings",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-768,
1408
],
"parameters": {
"text": "=Eres un asistente experto en agendar visitas a pisos.\n\n**Comando recibido:** {{ $('Telegram Trigger').item.json.message.text }}\n\n**Tu tarea:**\n1. **Extraer datos del comando** `/cita <telefono> [direccion] [notas]`\n - Normaliza el teléfono a formato E.164 español (+34XXXXXXXXX)\n - Valida que sea móvil español (6,7,8,9 + 8 dígitos)\n - Extrae dirección y notas\n\n2. **Consultar con tu tool Google Calendar y ver que huecos están ocupados y cuales no** \n - Usa la herramienta de Google Calendar\n - Obtén todos los eventos existentes\n\n3. **Generar slots disponibles** según horarios:\n - Lunes-Jueves: ≥19:00\n - Viernes: ≥16:00\n - Sábado-Domingo: 11:00-21:00\n - Duración: 30 min + 20 min buffer = 50 min bloque\n - Intervalos: cada 30 minutos\n - Filtra colisiones con eventos del calendario\n - Selecciona los mejores 5 slots\n - las fechas en slots disponibles pasalas en texto no en números por ejemplo y dale 3 opciones depende del día de hoy, si es más pronto de las 19:00 dile: tengo disponible hoy a partir de las 7 de la tarde, mañana y pasado igual (contando con que no sea viernes o festivo). Si hoy es jueves por ejemplo le dirías tengo disponible hoy a partir de las 7, mañana a partir de las 4 y fin de semana a cualquier hora a partir de las 11\n\n4. **Preparar llamada con Retell AI:**\n - Teléfono destino: el extraído del comando\n - Genera un prompt natural para el agente de voz:\n * Solicitar visita al piso en [dirección]\n * Proponer los 3 slots disponibles\n * Confirmar: dirección\n * Ser breve y profesional\n - Incluir metadata: chatId, direccion, intentos:0\n\n5. **Devolver JSON** para hacer la llamada:\n```json\n{\n \"from_number\": \"+34949960018\",\n \"to_number\": \"complete_llm\",\n \"retell_llm_dynamic_variables\": {\n \"direccion\": \"complete_llm\",\n \"slots_disponibles\": \"complete_llm\"\n }\n}\n```\n\n\n**Timezone:** Europe/Madrid\n**Fecha actual:** {{ $now.toISO() }}",
"options": {
"systemMessage": "Eres un asistente de IA experto en scheduling y automatización. Usas herramientas para obtener datos de calendarios y generar llamadas telefónicas. Siempre devuelves JSON válido y bien estructurado."
},
"promptType": "define",
"hasOutputParser": true
},
"retryOnFail": true,
"typeVersion": 1.7
},
{
"id": "7b44caf1-1760-4b86-ac5c-111414917495",
"name": "セクション: Retell AI Calls1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-288,
1264
],
"parameters": {
"width": 360,
"height": 800,
"content": "**Retell AI Calls**\n- Create outbound calls via HTTP"
},
"typeVersion": 1
},
{
"id": "7b9e4403-19f6-43e2-bb32-8cbb0428578a",
"name": "セクション: エージェント – レストラン予約1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-800,
1872
],
"parameters": {
"width": 516,
"height": 528,
"content": "**Agent: Restaurant Reservations**\n- LLM prepares booking call\n- Collects party size and time"
},
"typeVersion": 1
}
],
"pinData": {
"Retell Webhook": [
{
"body": {
"call": {
"call_id": "call_a6151608cedfc832a311902e2d4",
"latency": {
"e2e": {
"max": 5054,
"min": 278,
"num": 13,
"p50": 1733,
"p90": 3193.8010253906255,
"p95": 4039.999853515623,
"p99": 4851.199970703124,
"values": [
574,
1733,
3363.999755859375,
1970,
1425.0009765625,
5054,
1649,
2453,
1536.001953125,
1808,
278,
2513.006103515625,
1702.0048828125
]
},
"llm": {
"max": 4103,
"min": 816,
"num": 13,
"p50": 1162,
"p90": 2499.8000000000006,
"p95": 3220.399999999998,
"p99": 3926.4799999999987,
"values": [
1824,
1049,
2632,
1162,
865,
4103,
1128,
1653,
816,
1103,
1234,
1971,
897
]
},
"tts": {
"max": 318,
"min": 243,
"num": 13,
"p50": 278,
"p90": 309.8,
"p95": 313.8,
"p99": 317.15999999999997,
"values": [
305,
285,
273,
282,
269,
243,
250,
274,
266,
299,
318,
278,
311
]
}
},
"agent_id": "agent_b9373d40edb62df778a7e5846b",
"call_cost": {
"combined_cost": 21.65,
"product_costs": [
{
"cost": 9.9166667,
"product": "elevenlabs_tts",
"unit_price": 0.1166667
},
{
"cost": 11.3333333,
"product": "gpt_5_high_priority",
"unit_price": 0.1333333
},
{
"cost": 0.4,
"product": "gpt_5_mini_text_testing"
}
],
"total_duration_seconds": 85,
"total_duration_unit_price": 0.25
},
"call_type": "phone_call",
"direction": "outbound",
"to_number": "+34612403687",
"agent_name": "Single-Prompt Agent",
"transcript": "User: ¿Te vas?\nUser: ¿Qué ¿Le va?\nAgent: No, \nUser: Le va.\nAgent: Buenas, soy Juan \nUser: Dígame.\nAgent: Gracias. Te llamo para agendar una visita al piso en Avenida del Manzanares, 20.\n¿Puedes hablar ahora?\nUser: Hola, ¿diga?\nUser: ¿Me oye?\nAgent: Sí, te oigo. Te llamo para agendar una \nUser: Oyes? Ahora.\nAgent: visita al piso \nAgent: Sí, te oigo.\nUser: Se, es que se corta, \nAgent: Te llamo para agendar una \nUser: estoy yo metido en un en un sótano trabajando.\nUser: Espera, espera un segundo, espere.\nAgent: Sin problema. ¿Cuándo te viene mejor que te llame? Puedo llamarte \nUser: No, ahora, ahora, ya \nAgent: hoy a las siete de la \nUser: le oigo, que he salido, es que estamos trabajando en unos traseros, dígame.\nAgent: Perfecto. Te llamo para agendar una visita al piso en Avenida del Manzanares, 20. ¿Qué día te viene bien?\nUser: Pues por las tardes, de seis a ocho, ¿es particular o agencia?\nAgent: Es particular. ¿Te viene bien el jueves 9 de octubre a partir de las siete de la tarde?\nUser: Perfecto.\nAgent: Perfecto, queda para el jueves 9 de octubre a las siete de la tarde.\n¿La dirección exacta del \nUser: Perfecto.\nAgent: piso?\nUser: Sí, ahí en el veinte.\nAgent: Perfecto, \nUser: El portal.\nAgent: Perfecto, queda \nAgent: Perfecto, quedamos así muchas gracias. hasta luego\n",
"call_status": "ended",
"duration_ms": 84385,
"from_number": "+34949960018",
"agent_version": 8,
"end_timestamp": 1759917188812,
"recording_url": "https://dxc03zgurdly9.cloudfront.net/3348e2dfc49d2bb52dc090412bc3687d0233a2e8a6c54f0047831702f5975a4c/recording.wav",
"public_log_url": "https://dxc03zgurdly9.cloudfront.net/3348e2dfc49d2bb52dc090412bc3687d0233a2e8a6c54f0047831702f5975a4c/public.log",
"llm_token_usage": {
"values": [
1160,
1174,
1174,
1188,
1188,
1233,
1240,
1267,
1306,
1318,
1375,
1427,
1458,
1493,
1509,
1522
],
"average": 1314.5,
"num_requests": 16
},
"start_timestamp": 1759917104427,
"opt_in_signed_url": false,
"transcript_object": [
{
"role": "user",
"words": [
{
"end": 1.8519999,
"word": "¿Te ",
"start": 1.6119999
},
{
"end": 2.092,
"word": "vas?",
"start": 1.8519999
}
],
"content": "¿Te vas?"
},
{
"role": "user",
"words": [
{
"end": 4.052,
"word": "¿Qué ",
"start": 3.6519999
},
{
"end": 4.7919997,
"word": "¿Le ",
"start": 4.4719999999999995
},
{
"end": 5.031999999999999,
"word": "va?",
"start": 4.7919997
}
],
"content": "¿Qué ¿Le va?"
},
{
"role": "agent",
"words": [
{
"end": 5.044,
"word": "No, ",
"start": 4.8
}
],
"content": "No, ",
"metadata": {
"response_id": 1
}
},
{
"role": "user",
"words": [
{
"end": 7.342,
"word": "Le ",
"start": 7.021999999999999
},
{
"end": 7.5020001999999995,
"word": "va.",
"start": 7.342
}
],
"content": "Le va."
},
{
"role": "agent",
"words": [
{
"end": 7.276,
"word": "Buenas, ",
"start": 6.893
},
{
"end": 7.427,
"word": "soy ",
"start": 7.276
},
{
"end": 7.613,
"word": "Juan ",
"start": 7.427
}
],
"content": "Buenas, soy Juan ",
"metadata": {
"response_id": 3
}
},
{
"role": "user",
"words": [
{
"end": 10.962,
"word": "Dígame.",
"start": 10.481999
}
],
"content": "Dígame."
},
{
"role": "agent",
"words": [
{
"end": 11.934,
"word": "Gracias.",
"start": 11.04
},
{
"end": 12.155125,
"word": " Te ",
"start": 11.980125
},
{
"end": 12.456125,
"word": "llamo ",
"start": 12.155125
},
{
"end": 12.677125,
"word": "para ",
"start": 12.456125
},
{
"end": 13.072125,
"word": "agendar ",
"start": 12.677125
},
{
"end": 13.223125,
"word": "una ",
"start": 13.072125
},
{
"end": 13.617125,
"word": "visita ",
"start": 13.223125
},
{
"end": 13.780125,
"word": "al ",
"start": 13.617125
},
{
"end": 14.093125,
"word": "piso ",
"start": 13.780125
},
{
"end": 14.198125,
"word": "en ",
"start": 14.093125
},
{
"end": 14.558125,
"word": "Avenida ",
"start": 14.198125
},
{
"end": 14.720125,
"word": "del ",
"start": 14.558125
},
{
"end": 15.301125,
"word": "Manzanares, ",
"start": 14.720125
},
{
"end": 15.730125,
"word": "20.\n",
"start": 15.301125
},
{
"end": 16.125125,
"word": "¿Puedes ",
"start": 15.730125
},
{
"end": 16.392125,
"word": "hablar ",
"start": 16.125125
},
{
"end": 16.903125,
"word": "ahora?",
"start": 16.392125
}
],
"content": "Gracias. Te llamo para agendar una visita al piso en Avenida del Manzanares, 20.\n¿Puedes hablar ahora?",
"metadata": {
"response_id": 5
}
},
{
"role": "user",
"words": [
{
"end": 18.412,
"word": "Hola, ",
"start": 17.772000000000002
},
{
"end": 18.572,
"word": "¿diga?",
"start": 18.572
}
],
"content": "Hola, ¿diga?"
},
{
"role": "user",
"words": [
{
"end": 20.881999,
"word": "¿Me ",
"start": 20.402
},
{
"end": 21.121999,
"word": "oye?",
"start": 20.881999
}
],
"content": "¿Me oye?"
},
{
"role": "agent",
"words": [
{
"end": 22.895,
"word": "Sí, ",
"start": 22.675
},
{
"end": 23.035,
"word": "te ",
"start": 22.895
},
{
"end": 23.569,
"word": "oigo.",
"start": 23.035
},
{
"end": 23.754666748046876,
"word": " Te ",
"start": 23.591666748046876
},
{
"end": 24.137666748046875,
"word": "llamo ",
"start": 23.754666748046876
},
{
"end": 24.346666748046875,
"word": "para ",
"start": 24.137666748046875
},
{
"end": 24.717666748046874,
"word": "agendar ",
"start": 24.346666748046875
},
{
"end": 24.868666748046873,
"word": "una ",
"start": 24.717666748046874
}
],
"content": "Sí, te oigo. Te llamo para agendar una ",
"metadata": {
"response_id": 7
}
},
{
"role": "user",
"words": [
{
"end": 22.942,
"word": "Oyes? ",
"start": 22.622
},
{
"end": 25.102,
"word": "Ahora.",
"start": 24.702
}
],
"content": "Oyes? Ahora."
},
{
"role": "agent",
"words": [
{
"end": 25.205666748046873,
"word": "visita ",
"start": 24.868666748046873
},
{
"end": 25.321666748046876,
"word": "al ",
"start": 25.205666748046873
},
{
"end": 25.623666748046876,
"word": "piso ",
"start": 25.321666748046876
}
],
"content": "visita al piso ",
"metadata": {
"response_id": 7
}
},
{
"role": "agent",
"words": [
{
"end": 30.62,
"word": "Sí, ",
"start": 30.272
},
{
"end": 30.76,
"word": "te ",
"start": 30.62
},
{
"end": 31.317,
"word": "oigo.",
"start": 30.76
}
],
"content": "Sí, te oigo.",
"metadata": {
"response_id": 8
}
},
{
"role": "user",
"words": [
{
"end": 32.502,
"word": "Se, ",
"start": 32.102000000000004
},
{
"end": 32.662,
"word": "es ",
"start": 32.502
},
{
"end": 32.742,
"word": "que ",
"start": 32.662
},
{
"end": 32.902,
"word": "se ",
"start": 32.742
},
{
"end": 33.222,
"word": "corta, ",
"start": 32.902
}
],
"content": "Se, es que se corta, "
},
{
"role": "agent",
"words": [
{
"end": 32.229,
"word": " Te ",
"start": 32.055
},
{
"end": 32.496,
"word": "llamo ",
"start": 32.229
},
{
"end": 32.717,
"word": "para ",
"start": 32.496
},
{
"end": 33.112,
"word": "agendar ",
"start": 32.717
},
{
"end": 33.274,
"word": "una ",
"start": 33.112
}
],
"content": " Te llamo para agendar una ",
"metadata": {
"response_id": 8
}
},
{
"role": "user",
"words": [
{
"end": 33.462,
"word": "estoy ",
"start": 33.222
},
{
"end": 33.622,
"word": "yo ",
"start": 33.462
},
{
"end": 33.942,
"word": "metido ",
"start": 33.622
},
{
"end": 34.102000000000004,
"word": "en ",
"start": 33.942
},
{
"end": 34.342,
"word": "un ",
"start": 34.102000000000004
},
{
"end": 34.582,
"word": "en ",
"start": 34.342
},
{
"end": 34.662,
"word": "un ",
"start": 34.582
},
{
"end": 35.062,
"word": "sótano ",
"start": 34.662
},
{
"end": 35.462,
"word": "trabajando.",
"start": 35.062
}
],
"content": "estoy yo metido en un en un sótano trabajando."
},
{
"role": "user",
"words": [
{
"end": 36.642,
"word": "Espera, ",
"start": 36.162
},
{
"end": 36.802,
"word": "espera ",
"start": 36.642
},
{
"end": 36.962,
"word": "un ",
"start": 36.802
},
{
"end": 37.362,
"word": "segundo, ",
"start": 36.962
},
{
"end": 37.602000000000004,
"word": "espere.",
"start": 37.362
}
],
"content": "Espera, espera un segundo, espere."
},
{
"role": "agent",
"words": [
{
"end": 39.623,
"word": "Sin ",
"start": 39.402
},
{
"end": 40.273,
"word": "problema.",
"start": 39.623
},
{
"end": 40.64466674804687,
"word": " ¿Cuándo ",
"start": 40.31866674804687
},
{
"end": 40.725666748046876,
"word": "te ",
"start": 40.64466674804687
},
{
"end": 40.87666674804687,
"word": "viene ",
"start": 40.725666748046876
},
{
"end": 41.12066674804687,
"word": "mejor ",
"start": 40.87666674804687
},
{
"end": 41.23666674804687,
"word": "que ",
"start": 41.12066674804687
},
{
"end": 41.329666748046876,
"word": "te ",
"start": 41.23666674804687
},
{
"end": 41.851666748046874,
"word": "llame?",
"start": 41.329666748046876
},
{
"end": 42.164625,
"word": " Puedo ",
"start": 41.863625
},
{
"end": 42.629625,
"word": "llamarte ",
"start": 42.164625
}
],
"content": "Sin problema. ¿Cuándo te viene mejor que te llame? Puedo llamarte ",
"metadata": {
"response_id": 10
}
},
{
"role": "user",
"words": [
{
"end": 43.432002,
"word": "No, ",
"start": 43.032000000000004
},
{
"end": 43.672,
"word": "ahora, ",
"start": 43.432002
},
{
"end": 43.832,
"word": "ahora, ",
"start": 43.672
},
{
"end": 43.992,
"word": "ya ",
"start": 43.832
}
],
"content": "No, ahora, ahora, ya "
},
{
"role": "agent",
"words": [
{
"end": 43.186625,
"word": "hoy ",
"start": 42.629625
},
{
"end": 43.349625,
"word": "a ",
"start": 43.186625
},
{
"end": 43.511625,
"word": "las ",
"start": 43.349625
},
{
"end": 43.801625,
"word": "siete ",
"start": 43.511625
},
{
"end": 43.883625,
"word": "de ",
"start": 43.801625
},
{
"end": 44.010625,
"word": "la ",
"start": 43.883625
}
],
"content": "hoy a las siete de la ",
"metadata": {
"response_id": 10
}
},
{
"role": "user",
"words": [
{
"end": 44.072,
"word": "le ",
"start": 43.992
},
{
"end": 44.392,
"word": "oigo, ",
"start": 44.072
},
{
"end": 44.472003,
"word": "que ",
"start": 44.392
},
{
"end": 44.552,
"word": "he ",
"start": 44.472003
},
{
"end": 44.872,
"word": "salido, ",
"start": 44.552
},
{
"end": 44.952002,
"word": "es ",
"start": 44.872
},
{
"end": 45.032000000000004,
"word": "que ",
"start": 44.952002
},
{
"end": 45.272002,
"word": "estamos ",
"start": 45.032000000000004
},
{
"end": 45.592,
"word": "trabajando ",
"start": 45.272002
},
{
"end": 45.672,
"word": "en ",
"start": 45.592
},
{
"end": 45.832,
"word": "unos ",
"start": 45.672
},
{
"end": 46.392,
"word": "traseros, ",
"start": 45.832
},
{
"end": 46.712,
"word": "dígame.",
"start": 46.392
}
],
"content": "le oigo, que he salido, es que estamos trabajando en unos traseros, dígame."
},
{
"role": "agent",
"words": [
{
"end": 50.094,
"word": "Perfecto.",
"start": 49.281
},
{
"end": 50.279791748046875,
"word": " Te ",
"start": 50.11679174804687
},
{
"end": 50.54679174804688,
"word": "llamo ",
"start": 50.279791748046875
},
{
"end": 50.743791748046874,
"word": "para ",
"start": 50.54679174804688
},
{
"end": 51.09179174804687,
"word": "agendar ",
"start": 50.743791748046874
},
{
"end": 51.231791748046874,
"word": "una ",
"start": 51.09179174804687
},
{
"end": 51.544791748046876,
"word": "visita ",
"start": 51.231791748046874
},
{
"end": 51.660791748046876,
"word": "al ",
"start": 51.544791748046876
},
{
"end": 51.98579174804688,
"word": "piso ",
"start": 51.660791748046876
},
{
"end": 52.102791748046876,
"word": "en ",
"start": 51.98579174804688
},
{
"end": 52.450791748046875,
"word": "Avenida ",
"start": 52.102791748046876
},
{
"end": 52.566791748046874,
"word": "del ",
"start": 52.450791748046875
},
{
"end": 53.297791748046876,
"word": "Manzanares, ",
"start": 52.566791748046874
},
{
"end": 53.99479174804687,
"word": "20. ",
"start": 53.297791748046876
},
{
"end": 54.19175,
"word": "¿Qué ",
"start": 54.04075
},
{
"end": 54.34275,
"word": "día ",
"start": 54.19175
},
{
"end": 54.44775,
"word": "te ",
"start": 54.34275
},
{
"end": 54.67975,
"word": "viene ",
"start": 54.44775
},
{
"end": 55.15575,
"word": "bien?",
"start": 54.67975
}
],
"content": "Perfecto. Te llamo para agendar una visita al piso en Avenida del Manzanares, 20. ¿Qué día te viene bien?",
"metadata": {
"response_id": 11
}
},
{
"role": "user",
"words": [
{
"end": 56.781997,
"word": "Pues ",
"start": 56.542
},
{
"end": 57.022,
"word": "por ",
"start": 56.781997
},
{
"end": 57.101996,
"word": "las ",
"start": 57.022
},
{
"end": 57.422,
"word": "tardes, ",
"start": 57.101996
},
{
"end": 57.501998,
"word": "de ",
"start": 57.422
},
{
"end": 57.742,
"word": "seis ",
"start": 57.501998
},
{
"end": 57.902,
"word": "a ",
"start": 57.742
},
{
"end": 58.222,
"word": "ocho, ",
"start": 57.902
},
{
"end": 58.382,
"word": "¿es ",
"start": 58.222
},
{
"end": 58.941996,
"word": "particular ",
"start": 58.382
},
{
"end": 59.182,
"word": "o ",
"start": 58.941996
},
{
"end": 59.501998,
"word": "agencia?",
"start": 59.182
}
],
"content": "Pues por las tardes, de seis a ocho, ¿es particular o agencia?"
},
{
"role": "agent",
"words": [
{
"end": 61.317,
"word": "Es ",
"start": 61.166
},
{
"end": 61.967,
"word": "particular.",
"start": 61.317
},
{
"end": 62.175791748046876,
"word": " ¿Te ",
"start": 62.01279174804687
},
{
"end": 62.407791748046876,
"word": "viene ",
"start": 62.175791748046876
},
{
"end": 62.605791748046876,
"word": "bien ",
"start": 62.407791748046876
},
{
"end": 62.67479174804687,
"word": "el ",
"start": 62.605791748046876
},
{
"end": 62.96479174804688,
"word": "jueves ",
"start": 62.67479174804687
},
{
"end": 63.185791748046874,
"word": "9 ",
"start": 62.96479174804688
},
{
"end": 63.26679174804688,
"word": "de ",
"start": 63.185791748046874
},
{
"end": 63.71979174804687,
"word": "octubre ",
"start": 63.26679174804688
},
{
"end": 63.81279174804688,
"word": "a ",
"start": 63.71979174804687
},
{
"end": 64.23079174804687,
"word": "partir ",
"start": 63.81279174804688
},
{
"end": 64.33479174804687,
"word": "de ",
"start": 64.23079174804687
},
{
"end": 64.49779174804688,
"word": "las ",
"start": 64.33479174804687
},
{
"end": 64.83479174804687,
"word": "siete ",
"start": 64.49779174804688
},
{
"end": 64.91579174804687,
"word": "de ",
"start": 64.83479174804687
},
{
"end": 65.04379174804687,
"word": "la ",
"start": 64.91579174804687
},
{
"end": 65.58879174804687,
"word": "tarde?",
"start": 65.04379174804687
}
],
"content": "Es particular. ¿Te viene bien el jueves 9 de octubre a partir de las siete de la tarde?",
"metadata": {
"response_id": 12
}
},
{
"role": "user",
"words": [
{
"end": 67.262,
"word": "Perfecto.",
"start": 66.782004
}
],
"content": "Perfecto."
},
{
"role": "agent",
"words": [
{
"end": 69.627,
"word": "Perfecto, ",
"start": 69.186
},
{
"end": 69.848,
"word": "queda ",
"start": 69.627
},
{
"end": 69.999,
"word": "para ",
"start": 69.848
},
{
"end": 70.127,
"word": "el ",
"start": 69.999
},
{
"end": 70.637,
"word": "jueves ",
"start": 70.127
},
{
"end": 70.87,
"word": "9 ",
"start": 70.637
},
{
"end": 70.951,
"word": "de ",
"start": 70.87
},
{
"end": 71.311,
"word": "octubre ",
"start": 70.951
},
{
"end": 71.369,
"word": "a ",
"start": 71.311
},
{
"end": 71.496,
"word": "las ",
"start": 71.369
},
{
"end": 71.74,
"word": "siete ",
"start": 71.496
},
{
"end": 71.822,
"word": "de ",
"start": 71.74
},
{
"end": 71.926,
"word": "la ",
"start": 71.822
},
{
"end": 72.46,
"word": "tarde.",
"start": 71.926
},
{
"end": 72.669125,
"word": "\n¿La ",
"start": 72.495125
},
{
"end": 73.029125,
"word": "dirección ",
"start": 72.669125
},
{
"end": 73.342125,
"word": "exacta ",
"start": 73.029125
},
{
"end": 73.493125,
"word": "del ",
"start": 73.342125
}
],
"content": "Perfecto, queda para el jueves 9 de octubre a las siete de la tarde.\n¿La dirección exacta del ",
"metadata": {
"response_id": 13
}
},
{
"role": "user",
"words": [
{
"end": 73.912,
"word": "Perfecto.",
"start": 73.512
}
],
"content": "Perfecto."
},
{
"role": "agent",
"words": [
{
"end": 74.039125,
"word": "piso?",
"start": 73.493125
}
],
"content": "piso?",
"metadata": {
"response_id": 13
}
},
{
"role": "user",
"words": [
{
"end": 75.872,
"word": "Sí, ",
"start": 75.552
},
{
"end": 76.19200000000001,
"word": "ahí ",
"start": 75.872
},
{
"end": 76.271995,
"word": "en ",
"start": 76.19200000000001
},
{
"end": 76.432,
"word": "el ",
"start": 76.271995
},
{
"end": 76.591994,
"word": "veinte.",
"start": 76.432
}
],
"content": "Sí, ahí en el veinte."
},
{
"role": "agent",
"words": [
{
"end": 76.594,
"word": "Perfecto, ",
"start": 76.106
}
],
"content": "Perfecto, ",
"metadata": {
"response_id": 14
}
},
{
"role": "user",
"words": [
{
"end": 79.201995,
"word": "El ",
"start": 79.042
},
{
"end": 79.521995,
"word": "portal.",
"start": 79.201995
}
],
"content": "El portal."
},
{
"role": "agent",
"words": [
{
"end": 79.674,
"word": "Perfecto, ",
"start": 79.221
},
{
"end": 79.883,
"word": "queda ",
"start": 79.674
}
],
"content": "Perfecto, queda ",
"metadata": {
"response_id": 15
}
},
{
"role": "agent",
"words": [
{
"end": 81.886,
"word": "Perfecto, ",
"start": 81.398
},
{
"end": 82.222,
"word": "quedamos ",
"start": 81.886
},
{
"end": 82.431,
"word": "así ",
"start": 82.222
},
{
"end": 82.733,
"word": "muchas ",
"start": 82.431
},
{
"end": 83.453,
"word": "gracias. ",
"start": 82.733
},
{
"end": 83.778125,
"word": "hasta ",
"start": 83.499125
},
{
"end": 84.382125,
"word": "luego",
"start": 83.778125
}
],
"content": "Perfecto, quedamos así muchas gracias. hasta luego",
"metadata": {
"response_id": 16
}
}
],
"data_storage_setting": "everything",
"disconnection_reason": "agent_hangup",
"telephony_identifier": {
"twilio_call_sid": "CA6cd82de6747f0f0c58005f88f49622e0"
},
"transcript_with_tool_calls": [
{
"role": "user",
"words": [
{
"end": 1.8519999,
"word": "¿Te ",
"start": 1.6119999
},
{
"end": 2.092,
"word": "vas?",
"start": 1.8519999
}
],
"content": "¿Te vas?"
},
{
"role": "user",
"words": [
{
"end": 4.052,
"word": "¿Qué ",
"start": 3.6519999
},
{
"end": 4.7919997,
"word": "¿Le ",
"start": 4.4719999999999995
},
{
"end": 5.031999999999999,
"word": "va?",
"start": 4.7919997
}
],
"content": "¿Qué ¿Le va?"
},
{
"role": "agent",
"words": [
{
"end": 5.044,
"word": "No, ",
"start": 4.8
}
],
"content": "No, ",
"metadata": {
"response_id": 1
}
},
{
"role": "user",
"words": [
{
"end": 7.342,
"word": "Le ",
"start": 7.021999999999999
},
{
"end": 7.5020001999999995,
"word": "va.",
"start": 7.342
}
],
"content": "Le va."
},
{
"role": "agent",
"words": [
{
"end": 7.276,
"word": "Buenas, ",
"start": 6.893
},
{
"end": 7.427,
"word": "soy ",
"start": 7.276
},
{
"end": 7.613,
"word": "Juan ",
"start": 7.427
}
],
"content": "Buenas, soy Juan ",
"metadata": {
"response_id": 3
}
},
{
"role": "user",
"words": [
{
"end": 10.962,
"word": "Dígame.",
"start": 10.481999
}
],
"content": "Dígame."
},
{
"role": "agent",
"words": [
{
"end": 11.934,
"word": "Gracias.",
"start": 11.04
},
{
"end": 12.155125,
"word": " Te ",
"start": 11.980125
},
{
"end": 12.456125,
"word": "llamo ",
"start": 12.155125
},
{
"end": 12.677125,
"word": "para ",
"start": 12.456125
},
{
"end": 13.072125,
"word": "agendar ",
"start": 12.677125
},
{
"end": 13.223125,
"word": "una ",
"start": 13.072125
},
{
"end": 13.617125,
"word": "visita ",
"start": 13.223125
},
{
"end": 13.780125,
"word": "al ",
"start": 13.617125
},
{
"end": 14.093125,
"word": "piso ",
"start": 13.780125
},
{
"end": 14.198125,
"word": "en ",
"start": 14.093125
},
{
"end": 14.558125,
"word": "Avenida ",
"start": 14.198125
},
{
"end": 14.720125,
"word": "del ",
"start": 14.558125
},
{
"end": 15.301125,
"word": "Manzanares, ",
"start": 14.720125
},
{
"end": 15.730125,
"word": "20.\n",
"start": 15.301125
},
{
"end": 16.125125,
"word": "¿Puedes ",
"start": 15.730125
},
{
"end": 16.392125,
"word": "hablar ",
"start": 16.125125
},
{
"end": 16.903125,
"word": "ahora?",
"start": 16.392125
}
],
"content": "Gracias. Te llamo para agendar una visita al piso en Avenida del Manzanares, 20.\n¿Puedes hablar ahora?",
"metadata": {
"response_id": 5
}
},
{
"role": "user",
"words": [
{
"end": 18.412,
"word": "Hola, ",
"start": 17.772000000000002
},
{
"end": 18.572,
"word": "¿diga?",
"start": 18.572
}
],
"content": "Hola, ¿diga?"
},
{
"role": "user",
"words": [
{
"end": 20.881999,
"word": "¿Me ",
"start": 20.402
},
{
"end": 21.121999,
"word": "oye?",
"start": 20.881999
}
],
"content": "¿Me oye?"
},
{
"role": "agent",
"words": [
{
"end": 22.895,
"word": "Sí, ",
"start": 22.675
},
{
"end": 23.035,
"word": "te ",
"start": 22.895
},
{
"end": 23.569,
"word": "oigo.",
"start": 23.035
},
{
"end": 23.754666748046876,
"word": " Te ",
"start": 23.591666748046876
},
{
"end": 24.137666748046875,
"word": "llamo ",
"start": 23.754666748046876
},
{
"end": 24.346666748046875,
"word": "para ",
"start": 24.137666748046875
},
{
"end": 24.717666748046874,
"word": "agendar ",
"start": 24.346666748046875
},
{
"end": 24.868666748046873,
"word": "una ",
"start": 24.717666748046874
}
],
"content": "Sí, te oigo. Te llamo para agendar una ",
"metadata": {
"response_id": 7
}
},
{
"role": "user",
"words": [
{
"end": 22.942,
"word": "Oyes? ",
"start": 22.622
},
{
"end": 25.102,
"word": "Ahora.",
"start": 24.702
}
],
"content": "Oyes? Ahora."
},
{
"role": "agent",
"words": [
{
"end": 25.205666748046873,
"word": "visita ",
"start": 24.868666748046873
},
{
"end": 25.321666748046876,
"word": "al ",
"start": 25.205666748046873
},
{
"end": 25.623666748046876,
"word": "piso ",
"start": 25.321666748046876
}
],
"content": "visita al piso ",
"metadata": {
"response_id": 7
}
},
{
"role": "agent",
"words": [
{
"end": 30.62,
"word": "Sí, ",
"start": 30.272
},
{
"end": 30.76,
"word": "te ",
"start": 30.62
},
{
"end": 31.317,
"word": "oigo.",
"start": 30.76
}
],
"content": "Sí, te oigo.",
"metadata": {
"response_id": 8
}
},
{
"role": "user",
"words": [
{
"end": 32.502,
"word": "Se, ",
"start": 32.102000000000004
},
{
"end": 32.662,
"word": "es ",
"start": 32.502
},
{
"end": 32.742,
"word": "que ",
"start": 32.662
},
{
"end": 32.902,
"word": "se ",
"start": 32.742
},
{
"end": 33.222,
"word": "corta, ",
"start": 32.902
}
],
"content": "Se, es que se corta, "
},
{
"role": "agent",
"words": [
{
"end": 32.229,
"word": " Te ",
"start": 32.055
},
{
"end": 32.496,
"word": "llamo ",
"start": 32.229
},
{
"end": 32.717,
"word": "para ",
"start": 32.496
},
{
"end": 33.112,
"word": "agendar ",
"start": 32.717
},
{
"end": 33.274,
"word": "una ",
"start": 33.112
}
],
"content": " Te llamo para agendar una ",
"metadata": {
"response_id": 8
}
},
{
"role": "user",
"words": [
{
"end": 33.462,
"word": "estoy ",
"start": 33.222
},
{
"end": 33.622,
"word": "yo ",
"start": 33.462
},
{
"end": 33.942,
"word": "metido ",
"start": 33.622
},
{
"end": 34.102000000000004,
"word": "en ",
"start": 33.942
},
{
"end": 34.342,
"word": "un ",
"start": 34.102000000000004
},
{
"end": 34.582,
"word": "en ",
"start": 34.342
},
{
"end": 34.662,
"word": "un ",
"start": 34.582
},
{
"end": 35.062,
"word": "sótano ",
"start": 34.662
},
{
"end": 35.462,
"word": "trabajando.",
"start": 35.062
}
],
"content": "estoy yo metido en un en un sótano trabajando."
},
{
"role": "user",
"words": [
{
"end": 36.642,
"word": "Espera, ",
"start": 36.162
},
{
"end": 36.802,
"word": "espera ",
"start": 36.642
},
{
"end": 36.962,
"word": "un ",
"start": 36.802
},
{
"end": 37.362,
"word": "segundo, ",
"start": 36.962
},
{
"end": 37.602000000000004,
"word": "espere.",
"start": 37.362
}
],
"content": "Espera, espera un segundo, espere."
},
{
"role": "agent",
"words": [
{
"end": 39.623,
"word": "Sin ",
"start": 39.402
},
{
"end": 40.273,
"word": "problema.",
"start": 39.623
},
{
"end": 40.64466674804687,
"word": " ¿Cuándo ",
"start": 40.31866674804687
},
{
"end": 40.725666748046876,
"word": "te ",
"start": 40.64466674804687
},
{
"end": 40.87666674804687,
"word": "viene ",
"start": 40.725666748046876
},
{
"end": 41.12066674804687,
"word": "mejor ",
"start": 40.87666674804687
},
{
"end": 41.23666674804687,
"word": "que ",
"start": 41.12066674804687
},
{
"end": 41.329666748046876,
"word": "te ",
"start": 41.23666674804687
},
{
"end": 41.851666748046874,
"word": "llame?",
"start": 41.329666748046876
},
{
"end": 42.164625,
"word": " Puedo ",
"start": 41.863625
},
{
"end": 42.629625,
"word": "llamarte ",
"start": 42.164625
}
],
"content": "Sin problema. ¿Cuándo te viene mejor que te llame? Puedo llamarte ",
"metadata": {
"response_id": 10
}
},
{
"role": "user",
"words": [
{
"end": 43.432002,
"word": "No, ",
"start": 43.032000000000004
},
{
"end": 43.672,
"word": "ahora, ",
"start": 43.432002
},
{
"end": 43.832,
"word": "ahora, ",
"start": 43.672
},
{
"end": 43.992,
"word": "ya ",
"start": 43.832
}
],
"content": "No, ahora, ahora, ya "
},
{
"role": "agent",
"words": [
{
"end": 43.186625,
"word": "hoy ",
"start": 42.629625
},
{
"end": 43.349625,
"word": "a ",
"start": 43.186625
},
{
"end": 43.511625,
"word": "las ",
"start": 43.349625
},
{
"end": 43.801625,
"word": "siete ",
"start": 43.511625
},
{
"end": 43.883625,
"word": "de ",
"start": 43.801625
},
{
"end": 44.010625,
"word": "la ",
"start": 43.883625
}
],
"content": "hoy a las siete de la ",
"metadata": {
"response_id": 10
}
},
{
"role": "user",
"words": [
{
"end": 44.072,
"word": "le ",
"start": 43.992
},
{
"end": 44.392,
"word": "oigo, ",
"start": 44.072
},
{
"end": 44.472003,
"word": "que ",
"start": 44.392
},
{
"end": 44.552,
"word": "he ",
"start": 44.472003
},
{
"end": 44.872,
"word": "salido, ",
"start": 44.552
},
{
"end": 44.952002,
"word": "es ",
"start": 44.872
},
{
"end": 45.032000000000004,
"word": "que ",
"start": 44.952002
},
{
"end": 45.272002,
"word": "estamos ",
"start": 45.032000000000004
},
{
"end": 45.592,
"word": "trabajando ",
"start": 45.272002
},
{
"end": 45.672,
"word": "en ",
"start": 45.592
},
{
"end": 45.832,
"word": "unos ",
"start": 45.672
},
{
"end": 46.392,
"word": "traseros, ",
"start": 45.832
},
{
"end": 46.712,
"word": "dígame.",
"start": 46.392
}
],
"content": "le oigo, que he salido, es que estamos trabajando en unos traseros, dígame."
},
{
"role": "agent",
"words": [
{
"end": 50.094,
"word": "Perfecto.",
"start": 49.281
},
{
"end": 50.279791748046875,
"word": " Te ",
"start": 50.11679174804687
},
{
"end": 50.54679174804688,
"word": "llamo ",
"start": 50.279791748046875
},
{
"end": 50.743791748046874,
"word": "para ",
"start": 50.54679174804688
},
{
"end": 51.09179174804687,
"word": "agendar ",
"start": 50.743791748046874
},
{
"end": 51.231791748046874,
"word": "una ",
"start": 51.09179174804687
},
{
"end": 51.544791748046876,
"word": "visita ",
"start": 51.231791748046874
},
{
"end": 51.660791748046876,
"word": "al ",
"start": 51.544791748046876
},
{
"end": 51.98579174804688,
"word": "piso ",
"start": 51.660791748046876
},
{
"end": 52.102791748046876,
"word": "en ",
"start": 51.98579174804688
},
{
"end": 52.450791748046875,
"word": "Avenida ",
"start": 52.102791748046876
},
{
"end": 52.566791748046874,
"word": "del ",
"start": 52.450791748046875
},
{
"end": 53.297791748046876,
"word": "Manzanares, ",
"start": 52.566791748046874
},
{
"end": 53.99479174804687,
"word": "20. ",
"start": 53.297791748046876
},
{
"end": 54.19175,
"word": "¿Qué ",
"start": 54.04075
},
{
"end": 54.34275,
"word": "día ",
"start": 54.19175
},
{
"end": 54.44775,
"word": "te ",
"start": 54.34275
},
{
"end": 54.67975,
"word": "viene ",
"start": 54.44775
},
{
"end": 55.15575,
"word": "bien?",
"start": 54.67975
}
],
"content": "Perfecto. Te llamo para agendar una visita al piso en Avenida del Manzanares, 20. ¿Qué día te viene bien?",
"metadata": {
"response_id": 11
}
},
{
"role": "user",
"words": [
{
"end": 56.781997,
"word": "Pues ",
"start": 56.542
},
{
"end": 57.022,
"word": "por ",
"start": 56.781997
},
{
"end": 57.101996,
"word": "las ",
"start": 57.022
},
{
"end": 57.422,
"word": "tardes, ",
"start": 57.101996
},
{
"end": 57.501998,
"word": "de ",
"start": 57.422
},
{
"end": 57.742,
"word": "seis ",
"start": 57.501998
},
{
"end": 57.902,
"word": "a ",
"start": 57.742
},
{
"end": 58.222,
"word": "ocho, ",
"start": 57.902
},
{
"end": 58.382,
"word": "¿es ",
"start": 58.222
},
{
"end": 58.941996,
"word": "particular ",
"start": 58.382
},
{
"end": 59.182,
"word": "o ",
"start": 58.941996
},
{
"end": 59.501998,
"word": "agencia?",
"start": 59.182
}
],
"content": "Pues por las tardes, de seis a ocho, ¿es particular o agencia?"
},
{
"role": "agent",
"words": [
{
"end": 61.317,
"word": "Es ",
"start": 61.166
},
{
"end": 61.967,
"word": "particular.",
"start": 61.317
},
{
"end": 62.175791748046876,
"word": " ¿Te ",
"start": 62.01279174804687
},
{
"end": 62.407791748046876,
"word": "viene ",
"start": 62.175791748046876
},
{
"end": 62.605791748046876,
"word": "bien ",
"start": 62.407791748046876
},
{
"end": 62.67479174804687,
"word": "el ",
"start": 62.605791748046876
},
{
"end": 62.96479174804688,
"word": "jueves ",
"start": 62.67479174804687
},
{
"end": 63.185791748046874,
"word": "9 ",
"start": 62.96479174804688
},
{
"end": 63.26679174804688,
"word": "de ",
"start": 63.185791748046874
},
{
"end": 63.71979174804687,
"word": "octubre ",
"start": 63.26679174804688
},
{
"end": 63.81279174804688,
"word": "a ",
"start": 63.71979174804687
},
{
"end": 64.23079174804687,
"word": "partir ",
"start": 63.81279174804688
},
{
"end": 64.33479174804687,
"word": "de ",
"start": 64.23079174804687
},
{
"end": 64.49779174804688,
"word": "las ",
"start": 64.33479174804687
},
{
"end": 64.83479174804687,
"word": "siete ",
"start": 64.49779174804688
},
{
"end": 64.91579174804687,
"word": "de ",
"start": 64.83479174804687
},
{
"end": 65.04379174804687,
"word": "la ",
"start": 64.91579174804687
},
{
"end": 65.58879174804687,
"word": "tarde?",
"start": 65.04379174804687
}
],
"content": "Es particular. ¿Te viene bien el jueves 9 de octubre a partir de las siete de la tarde?",
"metadata": {
"response_id": 12
}
},
{
"role": "user",
"words": [
{
"end": 67.262,
"word": "Perfecto.",
"start": 66.782004
}
],
"content": "Perfecto."
},
{
"role": "agent",
"words": [
{
"end": 69.627,
"word": "Perfecto, ",
"start": 69.186
},
{
"end": 69.848,
"word": "queda ",
"start": 69.627
},
{
"end": 69.999,
"word": "para ",
"start": 69.848
},
{
"end": 70.127,
"word": "el ",
"start": 69.999
},
{
"end": 70.637,
"word": "jueves ",
"start": 70.127
},
{
"end": 70.87,
"word": "9 ",
"start": 70.637
},
{
"end": 70.951,
"word": "de ",
"start": 70.87
},
{
"end": 71.311,
"word": "octubre ",
"start": 70.951
},
{
"end": 71.369,
"word": "a ",
"start": 71.311
},
{
"end": 71.496,
"word": "las ",
"start": 71.369
},
{
"end": 71.74,
"word": "siete ",
"start": 71.496
},
{
"end": 71.822,
"word": "de ",
"start": 71.74
},
{
"end": 71.926,
"word": "la ",
"start": 71.822
},
{
"end": 72.46,
"word": "tarde.",
"start": 71.926
},
{
"end": 72.669125,
"word": "\n¿La ",
"start": 72.495125
},
{
"end": 73.029125,
"word": "dirección ",
"start": 72.669125
},
{
"end": 73.342125,
"word": "exacta ",
"start": 73.029125
},
{
"end": 73.493125,
"word": "del ",
"start": 73.342125
}
],
"content": "Perfecto, queda para el jueves 9 de octubre a las siete de la tarde.\n¿La dirección exacta del ",
"metadata": {
"response_id": 13
}
},
{
"role": "user",
"words": [
{
"end": 73.912,
"word": "Perfecto.",
"start": 73.512
}
],
"content": "Perfecto."
},
{
"role": "agent",
"words": [
{
"end": 74.039125,
"word": "piso?",
"start": 73.493125
}
],
"content": "piso?",
"metadata": {
"response_id": 13
}
},
{
"role": "user",
"words": [
{
"end": 75.872,
"word": "Sí, ",
"start": 75.552
},
{
"end": 76.19200000000001,
"word": "ahí ",
"start": 75.872
},
{
"end": 76.271995,
"word": "en ",
"start": 76.19200000000001
},
{
"end": 76.432,
"word": "el ",
"start": 76.271995
},
{
"end": 76.591994,
"word": "veinte.",
"start": 76.432
}
],
"content": "Sí, ahí en el veinte."
},
{
"role": "agent",
"words": [
{
"end": 76.594,
"word": "Perfecto, ",
"start": 76.106
}
],
"content": "Perfecto, ",
"metadata": {
"response_id": 14
}
},
{
"role": "user",
"words": [
{
"end": 79.201995,
"word": "El ",
"start": 79.042
},
{
"end": 79.521995,
"word": "portal.",
"start": 79.201995
}
],
"content": "El portal."
},
{
"role": "agent",
"words": [
{
"end": 79.674,
"word": "Perfecto, ",
"start": 79.221
},
{
"end": 79.883,
"word": "queda ",
"start": 79.674
}
],
"content": "Perfecto, queda ",
"metadata": {
"response_id": 15
}
},
{
"role": "agent",
"words": [
{
"end": 81.886,
"word": "Perfecto, ",
"start": 81.398
},
{
"end": 82.222,
"word": "quedamos ",
"start": 81.886
},
{
"end": 82.431,
"word": "así ",
"start": 82.222
},
{
"end": 82.733,
"word": "muchas ",
"start": 82.431
},
{
"end": 83.453,
"word": "gracias. ",
"start": 82.733
},
{
"end": 83.778125,
"word": "hasta ",
"start": 83.499125
},
{
"end": 84.382125,
"word": "luego",
"start": 83.778125
}
],
"content": "Perfecto, quedamos así muchas gracias. hasta luego",
"metadata": {
"response_id": 16
}
},
{
"name": "end_call",
"role": "tool_call_invocation",
"type": "end_call",
"time_sec": 84.382,
"arguments": "{\"execution_message\":\"Perfecto, quedamos así muchas gracias. hasta luego\"}",
"tool_call_id": "483288aac56f0ec8"
}
],
"recording_multi_channel_url": "https://dxc03zgurdly9.cloudfront.net/3348e2dfc49d2bb52dc090412bc3687d0233a2e8a6c54f0047831702f5975a4c/recording_multichannel.wav",
"retell_llm_dynamic_variables": {
"direccion": "Avenida del Manzanares, 20",
"slots_disponibles": "Tengo disponibilidad para la visita: mañana, jueves 9 de octubre, a partir de las 7 de la tarde; el viernes 10 de octubre, a partir de las 4 de la tarde; y el fin de semana, a cualquier hora a partir de las 11 de la mañana."
},
"opt_out_sensitive_data_storage": false
},
"event": "call_ended"
},
"query": {},
"params": {},
"headers": {
"host": "n8n.img2html.com",
"accept": "application/json, text/plain, */*",
"cf-ray": "98b4bfe51c85302c-PDX",
"cdn-loop": "cloudflare; loops=1",
"x-real-ip": "104.23.160.65",
"cf-visitor": "{\"scheme\":\"https\"}",
"user-agent": "axios/1.11.0",
"cf-ipcountry": "US",
"content-type": "application/json",
"content-length": "30337",
"accept-encoding": "gzip, br",
"x-forwarded-for": "104.23.160.65",
"cf-connecting-ip": "100.20.5.228",
"x-forwarded-host": "n8n.img2html.com",
"x-forwarded-port": "443",
"x-forwarded-proto": "https",
"x-forwarded-server": "b8f473d76b4e",
"x-retell-signature": "v=1759917189905,d=3e173c516fc615996a9ee9c9418ddef445029378e82c83302436a6ec3ad9632e"
},
"webhookUrl": "https://n8n.img2html.com/webhook/retell-webhook-agent",
"executionMode": "production"
}
],
"Telegram Trigger": [
{
"message": {
"chat": {
"id": 245284777,
"type": "private",
"username": "Mutonby",
"first_name": "Juan Carlos 🦴"
},
"date": 1760454862,
"from": {
"id": 245284777,
"is_bot": false,
"username": "Mutonby",
"first_name": "Juan Carlos 🦴",
"language_code": "es"
},
"text": "919 01 49 71 Piso en venta en calle Antonio Lopez, 67 470.000 € ver a partir del jueves",
"message_id": 269
},
"update_id": 189771673
}
]
},
"connections": {
"Filter": {
"main": [
[
{
"node": "AI Agent Parse Call",
"type": "main",
"index": 0
}
]
]
},
"Switch": {
"main": [
[
{
"node": "AI Agent: Property Viewings",
"type": "main",
"index": 0
}
],
[
{
"node": "AI Agent Reserva Restaurantes",
"type": "main",
"index": 0
}
]
]
},
"Retell Webhook": {
"main": [
[
{
"node": "Filter",
"type": "main",
"index": 0
}
]
]
},
"9782dbb6-bae4-4888-8c90-232d1e64c3de": {
"ai_languageModel": [
[
{
"node": "AI Agent: Property Viewings",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Telegram Trigger": {
"main": [
[
{
"node": "ee853319-7d74-44c2-bde1-6d9be7ce3d33",
"type": "main",
"index": 0
}
]
]
},
"be55dfc4-a7b5-483c-8701-9c8163ffb13f": {
"ai_languageModel": [
[
{
"node": "AI Agent Reserva Restaurantes",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"e7d4003b-97dc-4839-9886-021ff1f0f3e5": {
"ai_languageModel": [
[
{
"node": "AI Agent Parse Call",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"AI Agent Parse Call": {
"main": [
[
{
"node": "07d76d6b-97e0-44c3-aa6e-1de1b6be8a76",
"type": "main",
"index": 0
}
]
]
},
"ee853319-7d74-44c2-bde1-6d9be7ce3d33": {
"main": [
[
{
"node": "Switch",
"type": "main",
"index": 0
}
]
]
},
"Google Gemini Chat Model": {
"ai_languageModel": [
[
{
"node": "Structured Output Parser",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "AI Agent: Property Viewings",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Google Gemini Chat Model1": {
"ai_languageModel": [
[
{
"node": "Structured Output Parser1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Structured Output Parser1": {
"ai_outputParser": [
[
{
"node": "AI Agent Reserva Restaurantes",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"AI Agent: Property Viewings": {
"main": [
[
{
"node": "996cc320-5576-4751-a5e0-bd8c0f562f4f",
"type": "main",
"index": 0
}
]
]
},
"AI Agent Reserva Restaurantes": {
"main": [
[
{
"node": "8d309cbf-b0b6-4598-a28b-024c5ff7154d",
"type": "main",
"index": 0
}
]
]
},
"Get an event in Google Calendar": {
"ai_tool": [
[
{
"node": "AI Agent: Property Viewings",
"type": "ai_tool",
"index": 0
}
]
]
},
"Get an event in Google Calendar1": {
"ai_tool": [
[
{
"node": "AI Agent Reserva Restaurantes",
"type": "ai_tool",
"index": 0
}
]
]
},
"Create an event in Google Calendar": {
"ai_tool": [
[
{
"node": "AI Agent Parse Call",
"type": "ai_tool",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
上級 - 個人の生産性, AIチャットボット
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
Gemini、音声・画像生成を使ってマルチモーダルTelegram AIアシスタントを構築
Gemini、音声・画像生成を使ってマルチモーダルTelegramAIアシスタントを構築
If
Set
Code
+
If
Set
Code
95 ノードIniyavan JC
個人の生産性
TG-Bot-AI-カレンダー-v1-データベース-エージェント
TelegramでGemini AIアシスタントを使用してGoogleカレンダーイベントを管理する
If
Set
Switch
+
If
Set
Switch
16 ノードAndrew
個人の生産性
ペットビューティー公開と予約の自動化
AI、Facebook、Telegram ボットを使ったペットコーディネーションの掲載と予約の自動化
If
Set
Switch
+
If
Set
Switch
36 ノードChristian Moises
AIチャットボット
Telegramフォーラムペルス:コミュニティモニタリングのためのGeminiとGroq AIモデル
Telegramフォーラムペルス:GeminiとGroq AIモデルを使ったコミュニティ監視
If
Set
Code
+
If
Set
Code
59 ノードNguyen Thieu Toan
その他
AIメール分诊与GPT-4警报系统及Telegram通知
AIメール分诊与GPT-4警报系统及Telegram通知
If
Set
Gmail
+
If
Set
Gmail
104 ノードPeter Joslyn
サポート
高度なマルチエージェントAIパーソナルアシスタント(250+タスク対応、WhatsApp + GPT)
高度なマルチエージェントAIパーソナルアシスタント(250以上のタスク対応、WhatsApp + GPT)
Set
Switch
Whats App
+
Set
Switch
Whats App
213 ノードElectrabot
個人の生産性
ワークフロー情報
難易度
上級
ノード数28
カテゴリー2
ノードタイプ11
作成者
Juan Carlos Cavero Gracia
@carlosgraciaFollow me in linkedin: https://www.linkedin.com/in/juan-carlos-cavero-gracia/
外部リンク
n8n.ioで表示 →
このワークフローを共有