Google Driveの音声ファイルから会議のタスクリストを生成してSlackに送信
中級
これは自動化ワークフローで、11個のノードを含みます。主にSlack, DateTime, GoogleDrive, GoogleDriveTrigger, GoogleGeminiなどのノードを使用。 Google Gemini を使って音声から会議のタスクリストを抽出して Slack に送信
前提条件
- •Slack Bot Token または Webhook URL
- •Google Drive API認証情報
カテゴリー
-
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "SrM0PcHuYRxXnVGS",
"meta": {
"instanceId": "15d6057a37b8367f33882dd60593ee5f6cc0c59310ff1dc66b626d726083b48d",
"templateId": "4370",
"templateCredsSetupCompleted": true
},
"name": "Generate meeting to-do lists from audio files in Google Drive and send to Slack",
"tags": [],
"nodes": [
{
"id": "ab3309d9-cb3e-4b13-bb43-a214722c50b4",
"name": "アップロードファイルを検索",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
2016,
368
],
"parameters": {
"event": "fileUpdated",
"options": {
"fileType": "all"
},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "1LfNfyCnJ-XVCevq32rSULZfH0Zi6KgH8",
"cachedResultUrl": "https://drive.google.com/drive/folders/1LfNfyCnJ-XVCevq32rSULZfH0Zi6KgH8",
"cachedResultName": "n8n"
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "vF6uQZiyvmJMiaPb",
"name": "Google Drive account 3"
}
},
"typeVersion": 1
},
{
"id": "6c7bed41-fcb2-46de-b764-f0df6bf15d72",
"name": "ファイルをダウンロード",
"type": "n8n-nodes-base.googleDrive",
"position": [
2240,
368
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "vF6uQZiyvmJMiaPb",
"name": "Google Drive account 3"
}
},
"typeVersion": 3
},
{
"id": "da7cec5f-301d-456b-8ca6-f6b676579e2d",
"name": "日付を取得",
"type": "n8n-nodes-base.dateTime",
"position": [
3088,
368
],
"parameters": {
"options": {},
"outputFieldName": "Date"
},
"typeVersion": 2
},
{
"id": "b51f7dc9-2973-4f03-b160-90dc3ac0c0d2",
"name": "日付をフォーマット",
"type": "n8n-nodes-base.dateTime",
"position": [
3312,
368
],
"parameters": {
"date": "={{ $json.Date }}",
"options": {},
"operation": "formatDate"
},
"typeVersion": 2
},
{
"id": "cf384106-5413-4a92-9bdb-cce26b2452d4",
"name": "付箋ノート",
"type": "n8n-nodes-base.stickyNote",
"position": [
1936,
240
],
"parameters": {
"color": 7,
"width": 500,
"height": 300,
"content": "## Download the file \nThese two nodes are responsible for looking and downloading the uploaded file"
},
"typeVersion": 1
},
{
"id": "895c7888-8bf1-42e9-9f9c-a610c6297433",
"name": "付箋ノート2",
"type": "n8n-nodes-base.stickyNote",
"position": [
2480,
240
],
"parameters": {
"color": 7,
"width": 560,
"height": 300,
"content": "## Generate Summary \nThese two nodes are responsible for looking and downloading the uploaded file"
},
"typeVersion": 1
},
{
"id": "29967247-97f9-4f38-8cca-b5448b7c179d",
"name": "録音を文字起こし1",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
2592,
368
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-pro",
"cachedResultName": "models/gemini-2.5-pro"
},
"options": {},
"resource": "audio",
"inputType": "binary"
},
"credentials": {
"googlePalmApi": {
"id": "p97Z2qH28ePB7flh",
"name": "Google Gemini(PaLM) Api account 4"
}
},
"typeVersion": 1
},
{
"id": "233b4057-9713-4412-a41b-188cb933ea0c",
"name": "ドキュメントを分析",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
2816,
368
],
"parameters": {
"text": "=What's in this document🧠 System Prompt: Action Item Extractor (JSON Output)\n\nYou are a highly specialized AI assistant focused on task extraction. Your sole responsibility is to analyze the provided meeting transcript and extract all actionable tasks (To-Do items).\n\nYour output MUST be a valid JSON array of objects. Each object in the array represents a single action item and must contain the following keys:\n- \"task_description\": A clear and concise description of the task.\n- \"assigned_to\": The name of the person responsible. If not mentioned, use null.\n- \"deadline\": The due date for the task. If not mentioned, use null. Try to format it as YYYY-MM-DD.\n- \"priority\": The priority of the task (\"High\", \"Medium\", \"Low\"). Infer this from the context. If it's unclear, default to \"Medium\".\n\nCRITICAL RULES:\n- Only output the JSON array. Do not include any explanatory text, introductory sentences, or markdown formatting like ```json.\n- If no action items are found in the transcript, output an empty array: 対象議事録なし.\n- Do not include summaries, discussion points, or any information that is not a specific, actionable task.?\n\n{{ $('Transcribe a recording1').item.json.text }}",
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"resource": "document"
},
"credentials": {
"googlePalmApi": {
"id": "p97Z2qH28ePB7flh",
"name": "Google Gemini(PaLM) Api account 4"
}
},
"typeVersion": 1
},
{
"id": "ef304bb1-7724-407d-b813-cf3dcb8fee54",
"name": "メッセージを送信",
"type": "n8n-nodes-base.slack",
"position": [
3536,
368
],
"webhookId": "2955c2e8-d90e-4963-b990-c1df463c958e",
"parameters": {
"text": "={{ $('Analyze document').item.json.content.parts[0].text }}",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "list",
"value": "C09LK8LDW79",
"cachedResultName": "議事録ーtodoリスト"
},
"otherOptions": {},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "Mh79DVLlriDLszt9",
"name": "Slack account 7"
}
},
"typeVersion": 2.3
},
{
"id": "8db74eff-3909-4b07-acfc-f4ad2c165f2b",
"name": "付箋ノート1",
"type": "n8n-nodes-base.stickyNote",
"position": [
3072,
240
],
"parameters": {
"color": 7,
"width": 816,
"height": 304,
"content": "## Format and Send Message\nThese three nodes are responsible for timestamping the result and sending it to your Slack channel.\n- **Get & Format Date:** Gets the current date and time to record when the to-do list was created.\n- **Send a message:** Sends the final to-do list extracted by the AI to your designated Slack channel."
},
"typeVersion": 1
},
{
"id": "9335bba9-88d5-472f-86b0-caf369db834e",
"name": "付箋ノート4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1056,
-160
],
"parameters": {
"color": 3,
"width": 768,
"height": 1120,
"content": "Generate meeting to-do lists from audio files in Google Drive and send to Slack\nThis workflow automates the process of converting audio meeting recordings into a structured to-do list. It listens for new audio files in a Google Drive folder, transcribes them, extracts action items using AI, and sends a formatted list to a designated Slack channel.\n\nWho’s it for\nThis template is perfect for project managers, teams, and anyone who wants to save time on post-meeting administrative tasks. If you record your meetings and use Google Drive for storage and Slack for team communication, this workflow will streamline your follow-up process and ensure no action item is missed.\n\nWhat it does\nThis workflow automates the entire process of turning spoken words from a meeting into actionable tasks for your team.\n\nTrigger on New Audio: The workflow starts automatically when you upload a new audio file (e.g., MP3, M4A, WAV) to a specific folder in your Google Drive.\n\nTranscribe Audio: It takes the audio file and uses Google Gemini to generate a full text transcript of the recording.\n\nExtract To-Do Items: The transcript is then passed to another Google Gemini node with a specialized prompt. This prompt instructs the AI to carefully analyze the text and extract all action items.\n\nFormat Output: The AI formats the extracted tasks into a clean JSON array. Each task includes a description, the assigned person, a deadline, and its priority.\n\nSend to Slack: Finally, the workflow sends the structured to-do list as a message to your specified Slack channel, making it easy for the whole team to see and act upon.\n\nHow to set up\nConfigure Credentials: Ensure you have configured your credentials for Google Drive, Google Gemini, and Slack in n8n.\n\nSet Google Drive Folder: In the \"Looking for uploading file\" node, select the Google Drive folder you want the workflow to monitor.\n\nSet Slack Channel: In the \"Send a message\" node, choose the correct Slack account and select the channel where you want the to-do list to be posted.\n\nActivate Workflow: Save your changes and activate the workflow using the toggle at the top right.\n\nTest It: Upload a meeting recording to the designated Google Drive folder to see the magic happen!\n\nHow to customize the workflow\nChange AI Model: You can easily swap the Google Gemini nodes for other AI models like OpenAI or Anthropic to handle transcription and analysis based on your preference.\n\nModify the AI Prompt: Adjust the prompt in the \"Analyze document\" node to change the output format. For example, you could ask for a meeting summary in addition to the to-do list.\n\nChange Notification Service: Replace the Slack node with another notification service like Discord, Microsoft Teams, or an email node.\n\nArchive Results: Add a node (e.g., Google Sheets, Notion, Airtable) after the \"Analyze document\" node to save a history of all meeting transcripts and their corresponding action items."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "13655ad4-7ca3-487d-919a-305ae30f5589",
"connections": {
"da7cec5f-301d-456b-8ca6-f6b676579e2d": {
"main": [
[
{
"node": "b51f7dc9-2973-4f03-b160-90dc3ac0c0d2",
"type": "main",
"index": 0
}
]
]
},
"b51f7dc9-2973-4f03-b160-90dc3ac0c0d2": {
"main": [
[
{
"node": "ef304bb1-7724-407d-b813-cf3dcb8fee54",
"type": "main",
"index": 0
}
]
]
},
"6c7bed41-fcb2-46de-b764-f0df6bf15d72": {
"main": [
[
{
"node": "29967247-97f9-4f38-8cca-b5448b7c179d",
"type": "main",
"index": 0
}
]
]
},
"ef304bb1-7724-407d-b813-cf3dcb8fee54": {
"main": [
[]
]
},
"233b4057-9713-4412-a41b-188cb933ea0c": {
"main": [
[
{
"node": "da7cec5f-301d-456b-8ca6-f6b676579e2d",
"type": "main",
"index": 0
}
]
]
},
"29967247-97f9-4f38-8cca-b5448b7c179d": {
"main": [
[
{
"node": "233b4057-9713-4412-a41b-188cb933ea0c",
"type": "main",
"index": 0
}
]
]
},
"ab3309d9-cb3e-4b13-bb43-a214722c50b4": {
"main": [
[
{
"node": "6c7bed41-fcb2-46de-b764-f0df6bf15d72",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
スプレッドシートでの赤マーク修正を伴うコードレビュー
AI駆動のコードレビューで、コードチェック、Googleスプレッドシートの赤マーク修正、Slack通知を含む
Set
Slack
Function
+
Set
Slack
Function
16 ノードhigashiyama
エンジニアリング
個人の毎日の朝間報告の自動化
毎日の朝のレポート(Google カレンダー、天気、ニュース)をSlackへ送信
Set
Merge
Slack
+
Set
Merge
Slack
12 ノードhigashiyama
AI駆動型カスタマーサポート:メール、ナレッジベース、リ Humanアップグレードの自動化
AIメールサポートシステム:Gmail、Gemini、GPT-4、Slack、Google Sheetsを統合したワークフロー
Set
Gmail
Slack
+
Set
Gmail
Slack
26 ノードDavid Olusola
チケット管理
スマートレジュメ抽出ツール:Google Driveからスプレッドシート + 採用担当者向けSlack更新
AI駆動のレジュメ抽出ツール:GPT-4がGoogle Driveからスプレッドシートを処理し、採用担当者にSlack通知
Code
Slack
Filter
+
Code
Slack
Filter
19 ノードTrung Tran
人事
AI駆動の文書処理・整理システム、Gemini、VLM Run、Googleスプレッドシートを統合
AI駆動の文書処理・整理システム、Gemini、VLM Run、Googleスプレッドシートを統合
Webhook
Google Drive
Agent
+
Webhook
Google Drive
Agent
14 ノードAtik
コンテンツ作成
自動会議要約ジェネレーター — Google Drive、OpenAI Whisper、GPT-4 をテーブルに統合
自動会議要約ジェネレーター:Google Drive、OpenAI Whisper、GPT-4 をテーブルに統合
Date Time
Google Drive
Google Sheets
+
Date Time
Google Drive
Google Sheets
12 ノードYaron Been
人工知能