8
n8n 한국어amn8n.com

AI 일정 대리자[n8n 프로페셔널 버전]

고급

이것은Other, Building Blocks, AI분야의자동화 워크플로우로, 19개의 노드를 포함합니다.주로 If, Set, Telegram, Agent, TelegramTrigger 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. GPT-4, Telegram, Google 일정을 통해 음성과 텍스트로 일정 관리

사전 요구사항
  • Telegram Bot Token
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "X5xgTiDwTjqy8RqW",
  "meta": {
    "instanceId": "fc43dbbe2855b618f22a32e0af198c70dc1ce7b2c715dfe283e581dd4cc1c13a",
    "templateCredsSetupCompleted": true
  },
  "name": "Agent AI Calendar [n8n pro]",
  "tags": [],
  "nodes": [
    {
      "id": "01b29a4c-25cf-4c03-ab87-810f070d4be3",
      "name": "이벤트 생성",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        640,
        340
      ],
      "parameters": {
        "end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', `Cand se termina evenimentul`, 'string') }}",
        "start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', `Cand incepe evenimentul`, 'string') }}",
        "calendar": {
          "__rl": true,
          "mode": "id",
          "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}",
          "__regex": "(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
        },
        "additionalFields": {
          "description": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', ``, 'string') }}"
        },
        "useDefaultReminders": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Default_Reminders', `Daca vrei sa folosesti reminderul defaul de la calendar sau vrei unul special`, 'boolean') }}"
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "27JiaYgdKeyU1SZC",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "1758e2e3-e25d-4b1b-b57d-c711ec8553ce",
      "name": "이벤트 가져오기",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        760,
        340
      ],
      "parameters": {
        "options": {},
        "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}",
        "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}",
        "calendar": {
          "__rl": true,
          "mode": "id",
          "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}",
          "__regex": "(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
        },
        "operation": "getAll",
        "returnAll": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}"
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "27JiaYgdKeyU1SZC",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "9092f4dd-1982-4bb7-94f9-7f29e4fec6ef",
      "name": "캘린더 업데이트",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        880,
        340
      ],
      "parameters": {
        "eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}",
        "calendar": {
          "__rl": true,
          "mode": "id",
          "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}",
          "__regex": "(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
        },
        "operation": "update",
        "updateFields": {},
        "useDefaultReminders": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Default_Reminders', ``, 'boolean') }}"
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "27JiaYgdKeyU1SZC",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "738a78e0-6256-4827-aac9-9eaf7c6ae91c",
      "name": "이벤트 삭제",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        1000,
        340
      ],
      "parameters": {
        "eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}",
        "options": {},
        "calendar": {
          "__rl": true,
          "mode": "id",
          "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}",
          "__regex": "(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
        },
        "operation": "delete"
      },
      "credentials": {
        "googleCalendarOAuth2Api": {
          "id": "27JiaYgdKeyU1SZC",
          "name": "Google Calendar account"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "19674d23-67eb-46a1-a975-d64a64b6188a",
      "name": "사용자 입력 수신 (Telegram)",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -360,
        0
      ],
      "webhookId": "19e39057-373f-4ca7-b999-c747d5f71767",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "NYxlz922izZOpLZg",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "0159ed56-542d-4fa1-867f-cba130466061",
      "name": "음성 메시지인가?",
      "type": "n8n-nodes-base.if",
      "position": [
        -80,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "c64b00ea-20f1-4d44-aed6-1528d537fc84",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.message.voice.mime_type }}",
              "rightValue": "audio/ogg"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "008051e4-e006-4f18-a204-f64b322a4da6",
      "name": "음성 파일 다운로드",
      "type": "n8n-nodes-base.telegram",
      "position": [
        140,
        -100
      ],
      "webhookId": "1e904d77-b0a3-41ac-8624-a729103c9a14",
      "parameters": {
        "fileId": "={{ $('Receive User Input (Telegram)\t').item.json.message.voice.file_id }}",
        "resource": "file"
      },
      "credentials": {
        "telegramApi": {
          "id": "NYxlz922izZOpLZg",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "e738c52a-d6b4-4fde-8dd8-2095db8eaf88",
      "name": "음성을 텍스트로 변환",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        320,
        -100
      ],
      "parameters": {
        "options": {
          "language": "en"
        },
        "resource": "audio",
        "operation": "transcribe"
      },
      "credentials": {
        "openAiApi": {
          "id": "XYtY87CqnqwNVBos",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "5563f7c4-a87a-4728-a5ae-6e17ba59ff99",
      "name": "텍스트 메시지 추출",
      "type": "n8n-nodes-base.set",
      "position": [
        140,
        100
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "41b525e6-a59f-47c7-b6ee-2b88eaa386fe",
              "name": "Text",
              "type": "string",
              "value": "={{ $json.message.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "7ee11667-7834-464d-92e8-07be97f7f18a",
      "name": "AI 캘린더 어시스턴트 (LangChain)",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        520,
        100
      ],
      "parameters": {
        "text": "=You're my personal digital assistant. Your purpose is to help me manage my personal calendar efficiently, taking into account priorities, work-life balance, and recurring events.\n\nToday is {{ $now }}\n\nInstructions:\n{{ $json.text }}\n{{ $json.Text }}",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 1.9
    },
    {
      "id": "8651b116-a5eb-4e21-b03f-5375efb0d8ed",
      "name": "GPT-4 언어 모델",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        360,
        340
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "gpt-4.1"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "XYtY87CqnqwNVBos",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "d014339d-7cb6-4bfe-bfbe-3f319a4fdf2c",
      "name": "Telegram로 응답 전송",
      "type": "n8n-nodes-base.telegram",
      "position": [
        940,
        100
      ],
      "webhookId": "b85c201f-13bd-4990-83e9-62c5e38fa8a4",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Receive User Input (Telegram)\t').item.json.message.chat.id }}",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "NYxlz922izZOpLZg",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "6c74e5a0-56dc-4fbf-8826-fb1b16d96504",
      "name": "스티키 노트3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -420,
        -740
      ],
      "parameters": {
        "width": 1600,
        "height": 140,
        "content": "## Global Workflow Description\n  \n**\"AI-Powered Calendar Assistant: Voice & Text Input → GPT-4 → Google Calendar\"**  \n\n*Explains:* Built using Telegram, OpenAI (Whisper + GPT-4), and Google Calendar to help users manage events through natural language input."
      },
      "typeVersion": 1
    },
    {
      "id": "5728ff55-e8c3-4b3f-9c85-0b111c1e18ec",
      "name": "스티키 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -420,
        -480
      ],
      "parameters": {
        "height": 320,
        "content": "## Start / Input\n\n**\"Start: Listen for Telegram input (text or voice message)\"**  \n \n*Explains:* This node triggers the workflow when a user sends a message via Telegram."
      },
      "typeVersion": 1
    },
    {
      "id": "a2d2cdbf-ad34-4931-a4c9-ba79c89e09ac",
      "name": "스티키 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -140,
        -480
      ],
      "parameters": {
        "width": 200,
        "height": 320,
        "content": "## Decision: Voice or Text\n \n**\"Check if the incoming message is a voice note (.ogg)\"**  \n\n*Explains:* If the message is a voice file, the workflow follows the transcription path. Otherwise, it processes the text directly."
      },
      "typeVersion": 1
    },
    {
      "id": "92b826ed-4189-4d0e-911a-48ae3b44c45e",
      "name": "스티키 노트2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        120,
        -480
      ],
      "parameters": {
        "width": 300,
        "height": 320,
        "content": "## Voice Transcription\n \n**\"Download the voice file and transcribe it to text \"**  \n\n\n*Explains:* Uses OpenAI Whisper to convert voice messages to plain text."
      },
      "typeVersion": 1
    },
    {
      "id": "fbdcd510-14b6-4d50-8fd7-352b421ac8a4",
      "name": "스티키 노트4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        80,
        300
      ],
      "parameters": {
        "height": 240,
        "content": "## Text Extraction\n\n**\"Extract plain text from user’s message (if no voice)\"**  \n\n*Explains:* Gets the written message text for further processing."
      },
      "typeVersion": 1
    },
    {
      "id": "76874498-00dc-499f-9930-8f02e143ad8d",
      "name": "스티키 노트5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        440,
        500
      ],
      "parameters": {
        "width": 640,
        "height": 360,
        "content": "## AI Interpretation\n\n**\"Analyze user intent using GPT-4 and decide next calendar action\"**  \n\n*Explains:* AI determines whether the user wants to create, update, fetch, or delete a calendar event.\n\n## Google Calendar Actions\n\n**\"Perform the selected Google Calendar action (Create / Update / Fetch / Delete)\"**  \n\n*Explains:* Executes the action chosen by the AI assistant using dynamic values."
      },
      "typeVersion": 1
    },
    {
      "id": "7d55eed3-9715-4759-a806-e6d56e38f892",
      "name": "스티키 노트6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820,
        -220
      ],
      "parameters": {
        "width": 340,
        "height": 240,
        "content": "## Send Response\n\n**\"Send a confirmation or result message back to the user\"**  \n\n*Explains:* Closes the loop by replying with the output from the assistant."
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "bca5c9d1-8464-47a8-aa76-0b864ef17a3f",
  "connections": {
    "1758e2e3-e25d-4b1b-b57d-c711ec8553ce": {
      "ai_tool": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "01b29a4c-25cf-4c03-ab87-810f070d4be3": {
      "ai_tool": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "738a78e0-6256-4827-aac9-9eaf7c6ae91c": {
      "ai_tool": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9092f4dd-1982-4bb7-94f9-7f29e4fec6ef": {
      "ai_tool": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "0159ed56-542d-4fa1-867f-cba130466061": {
      "main": [
        [
          {
            "node": "008051e4-e006-4f18-a204-f64b322a4da6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5563f7c4-a87a-4728-a5ae-6e17ba59ff99",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "008051e4-e006-4f18-a204-f64b322a4da6": {
      "main": [
        [
          {
            "node": "e738c52a-d6b4-4fde-8dd8-2095db8eaf88",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5563f7c4-a87a-4728-a5ae-6e17ba59ff99": {
      "main": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8651b116-a5eb-4e21-b03f-5375efb0d8ed": {
      "ai_languageModel": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "e738c52a-d6b4-4fde-8dd8-2095db8eaf88": {
      "main": [
        [
          {
            "node": "7ee11667-7834-464d-92e8-07be97f7f18a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d014339d-7cb6-4bfe-bfbe-3f319a4fdf2c": {
      "main": [
        []
      ]
    },
    "19674d23-67eb-46a1-a975-d64a64b6188a": {
      "main": [
        [
          {
            "node": "0159ed56-542d-4fa1-867f-cba130466061",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7ee11667-7834-464d-92e8-07be97f7f18a": {
      "main": [
        [
          {
            "node": "d014339d-7cb6-4bfe-bfbe-3f319a4fdf2c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

고급 - 기타, 빌딩 블록, 인공지능

유료인가요?

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

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

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

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34