Telegram、GPT-4、Google Sheetsを使ったNGO支援リクエスト管理の自動化
中級
これはTicket Management, AI Chatbot分野の自動化ワークフローで、12個のノードを含みます。主にSet, Switch, Telegram, GoogleSheets, Agentなどのノードを使用。 Telegram、GPT-4、Google Sheetsを使ってNGOの支援リクエスト管理を自動化
前提条件
- •Telegram Bot Token
- •Google Sheets API認証情報
- •OpenAI API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "PvcEnJDre7QTh3Xy",
"meta": {
"instanceId": "9eff06f9794a5c6da9f8bedd7572cd2897d884c2b43f32b8368bd92e03c34228",
"templateCredsSetupCompleted": true
},
"name": "Automate NGO Aid Request Management with Telegram, GPT-4, and Google Sheets",
"tags": [],
"nodes": [
{
"id": "e93ae817-3f4b-49dc-8fe8-821170633c69",
"name": "Telegram トリガー",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
80,
-80
],
"webhookId": "e344c7c7-dd4b-48e7-86fa-f0e00fd12c96",
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "eQGhTntXIBs9WNlc",
"name": "Telegram DigiSteps1_bot message"
}
},
"typeVersion": 1.2
},
{
"id": "56283c02-e027-47c0-94ab-02745a082f80",
"name": "Route Message Type",
"type": "n8n-nodes-base.switch",
"position": [
240,
-80
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "Text",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "dc5471a7-7a28-43e7-8666-1842cba51c95",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.message.text }}",
"rightValue": ""
}
]
},
"renameOutput": true
},
{
"outputKey": "Audio",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "4a94e9ac-99ac-4187-b7d3-6de1a71506dc",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.message.voice.file_id }}",
"rightValue": ""
}
]
},
"renameOutput": true
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "10c260a8-4987-42ec-bca2-b3192147b702",
"name": "Fetch Audio File",
"type": "n8n-nodes-base.telegram",
"position": [
380,
60
],
"webhookId": "51579376-9e38-4c43-b726-59b60458cb4d",
"parameters": {
"fileId": "={{ $json.message.voice.file_id }}",
"resource": "file"
},
"credentials": {
"telegramApi": {
"id": "eQGhTntXIBs9WNlc",
"name": "Telegram DigiSteps1_bot message"
}
},
"typeVersion": 1.2
},
{
"id": "950d8c4e-1f99-40cc-8434-f54693806d0f",
"name": "Transcribe Voice Message",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
540,
60
],
"parameters": {
"options": {},
"resource": "audio",
"operation": "transcribe"
},
"credentials": {
"openAiApi": {
"id": "I2N5Mx7hiecxYcpu",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "38ebb5b9-d13f-4587-8717-42f324ef74e2",
"name": "Extract Text Message",
"type": "n8n-nodes-base.set",
"position": [
460,
-180
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "d7c9be19-c1c4-4287-ac0e-7a2be9732a51",
"name": "text",
"type": "string",
"value": "={{ $json.message.text }}"
}
]
}
},
"typeVersion": 3.4,
"alwaysOutputData": false
},
{
"id": "59a1eb8b-38f3-478f-8a71-3990cf2df204",
"name": "AI エージェント",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
840,
-100
],
"parameters": {
"text": "= here is request from beneficiary: {{ $json.text }}",
"options": {
"systemMessage": "You are the NGO TPM team leader. The user has requested help. Categorize the request, and please suggest an action for the TPM team to take\nاكتب دائماً باللغة العربية\nThe output should be like\n{\n \"category\": \"مشكلة في توزيع المساعدات\",\n \"action\": \"التواصل مع فرق التوزيع للتحقق من سبب عدم وصول المساعدات إلى القرية والتأكد من الإجراءات اللازمة لحل المشكلة.\"\n}\n\n\n"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.9
},
{
"id": "3c9aaed8-6956-4bd4-89a0-610e7e4e2982",
"name": "OpenAI チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
840,
120
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "I2N5Mx7hiecxYcpu",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "c66af39a-150f-4a37-92dc-601e5b3879a5",
"name": "Send Confirmation Message",
"type": "n8n-nodes-base.telegram",
"position": [
1640,
-80
],
"webhookId": "0b6bd34e-c586-4cef-a6b0-da7a55a5b7ca",
"parameters": {
"text": "=تم استقبال طلبك انه هنالك {{ $('AI Agent').item.json.output.category }}",
"chatId": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
"additionalFields": {
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"id": "eQGhTntXIBs9WNlc",
"name": "Telegram DigiSteps1_bot message"
}
},
"typeVersion": 1.2
},
{
"id": "625e6f44-7bbe-416b-9912-9b8fc3545f89",
"name": "Save Audio Request to Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1440,
-200
],
"parameters": {
"columns": {
"value": {
"ID": "={{ $('Telegram Trigger').item.json.message.message_id }}",
"action": "={{ $json.output.action }}",
"category": "={{ $json.output.category }}\n",
"last name": "={{ $('Telegram Trigger').item.json.message.chat.last_name }}",
"First name": "={{ $('Telegram Trigger').item.json.message.chat.first_name }}",
"Transcription": "={{ $('Transcribe Voice Message').item.json.text }}",
"Telegram User Name": "={{ $('Telegram Trigger').item.json.message.chat.username }}"
},
"schema": [
{
"id": "ID",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ID",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Text",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Text",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Transcription",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Transcription",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "category",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "category",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "action",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "action",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "First name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "First name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "last name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "last name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Telegram User Name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Telegram User Name",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"ID"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1JKCLCjfm3xIFg5YH0EH9qK4W69jjeX673dFxaHfVRzo/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "https://docs.google.com/spreadsheets/d/1JKCLCjfm3xIFg5YH0EH9qK4W69jjeX673dFxaHfVRzo/edit?usp=sharing"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "KtYF0aYlnYbm8XkV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "7d7b8310-c0cf-433c-932f-97219f37bec3",
"name": "構造化出力パーサー",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
1020,
120
],
"parameters": {
"jsonSchemaExample": "{\n \"category\": \"مشكلة في توزيع المساعدات\",\n \"action\": \"التواصل مع فرق التوزيع للتحقق من سبب عدم وصول المساعدات إلى القرية والتأكد من الإجراءات اللازمة لحل المشكلة.\"\n}\n"
},
"typeVersion": 1.2
},
{
"id": "ab338a5f-51ac-4ebc-a668-59ddec459d9b",
"name": "Route to Appropriate Sheet",
"type": "n8n-nodes-base.switch",
"position": [
1200,
-100
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "Audio",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "5b7518a8-578a-4fd6-8240-0b72f073ca76",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $('Telegram Trigger').item.json.message.voice.file_id }}",
"rightValue": ""
}
]
},
"renameOutput": true
},
{
"outputKey": "Text",
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "def32c5a-8ffc-46a1-9e2f-68d161eb5436",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $('Telegram Trigger').item.json.message.text }}",
"rightValue": ""
}
]
},
"renameOutput": true
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "06ef0f7b-63a3-4427-a2a5-1d059a54ebc4",
"name": "Save Text Request to Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1440,
-20
],
"parameters": {
"columns": {
"value": {
"ID": "={{ $('Telegram Trigger').item.json.message.message_id }}",
"Text": "={{ $('Telegram Trigger').item.json.message.text }}",
"action": "={{ $json.output.action }}",
"category": "={{ $json.output.category }}\n",
"last name": "={{ $('Telegram Trigger').item.json.message.chat.last_name }}",
"First name": "={{ $('Telegram Trigger').item.json.message.chat.first_name }}",
"Telegram User Name": "={{ $('Telegram Trigger').item.json.message.chat.username }}"
},
"schema": [
{
"id": "ID",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ID",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Text",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Text",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Transcription",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Transcription",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "category",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "category",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "action",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "action",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "First name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "First name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "last name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "last name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Telegram User Name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Telegram User Name",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"ID"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1JKCLCjfm3xIFg5YH0EH9qK4W69jjeX673dFxaHfVRzo/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "https://docs.google.com/spreadsheets/d/1JKCLCjfm3xIFg5YH0EH9qK4W69jjeX673dFxaHfVRzo/edit?usp=sharing"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "KtYF0aYlnYbm8XkV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "b3d1915c-e70f-491a-b9d9-736820d48adf",
"connections": {
"AI Agent": {
"main": [
[
{
"node": "ab338a5f-51ac-4ebc-a668-59ddec459d9b",
"type": "main",
"index": 0
}
]
]
},
"10c260a8-4987-42ec-bca2-b3192147b702": {
"main": [
[
{
"node": "950d8c4e-1f99-40cc-8434-f54693806d0f",
"type": "main",
"index": 0
}
]
]
},
"Telegram Trigger": {
"main": [
[
{
"node": "56283c02-e027-47c0-94ab-02745a082f80",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"56283c02-e027-47c0-94ab-02745a082f80": {
"main": [
[
{
"node": "38ebb5b9-d13f-4587-8717-42f324ef74e2",
"type": "main",
"index": 0
}
],
[
{
"node": "10c260a8-4987-42ec-bca2-b3192147b702",
"type": "main",
"index": 0
}
]
]
},
"38ebb5b9-d13f-4587-8717-42f324ef74e2": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "AI Agent",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"950d8c4e-1f99-40cc-8434-f54693806d0f": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"ab338a5f-51ac-4ebc-a668-59ddec459d9b": {
"main": [
[
{
"node": "625e6f44-7bbe-416b-9912-9b8fc3545f89",
"type": "main",
"index": 0
}
],
[
{
"node": "06ef0f7b-63a3-4427-a2a5-1d059a54ebc4",
"type": "main",
"index": 0
}
]
]
},
"06ef0f7b-63a3-4427-a2a5-1d059a54ebc4": {
"main": [
[
{
"node": "c66af39a-150f-4a37-92dc-601e5b3879a5",
"type": "main",
"index": 0
}
]
]
},
"625e6f44-7bbe-416b-9912-9b8fc3545f89": {
"main": [
[
{
"node": "c66af39a-150f-4a37-92dc-601e5b3879a5",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - チケット管理, AIチャットボット
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
ペットビューティー公開と予約の自動化
AI、Facebook、Telegram ボットを使ったペットコーディネーションの掲載と予約の自動化
If
Set
Switch
+
If
Set
Switch
36 ノードChristian Moises
AIチャットボット
GPT、LangChain、およびインテリジェントルーティングに基づくAI駆動カスタマーサービス自動化
AI駆動カスタマーサービス自動化、GPT、LangChain、およびインテリジェントルーティングに基づく
Set
Gmail
Merge
+
Set
Gmail
Merge
46 ノードPaul
サポート
音楽生成ワーキングフロー
Suno API、Flux、Runway、Creatomate を使って AI ソングとミュージックビデオを生成
Set
Wait
Merge
+
Set
Wait
Merge
60 ノードJoseph
その他
レストラン予約
AIを活用したレストラン予約システムで、Telegram、カレンダー、メール通知を統合
Set
Gmail
Switch
+
Set
Gmail
Switch
21 ノードAziz B
AIチャットボット
AI を活用した WhatsApp カスタマーサービス(GPT-4、スマートルーティング、ナレッジベース)
AI ベースの WhatsApp カスタマー サービス (GPT-4、インテリジェント ルーティング、ナレッジ ベース)
Set
Gmail
Merge
+
Set
Gmail
Merge
45 ノードPaul
AIチャットボット
🎧 IT音声サポート自動化ロボット – Telegram音声メッセージをJIRAチケットに変換(OpenAI Whisperを使用)
Telegramの音声メッセージをWhisperとGPT-4.1 Miniを使用してJIRAチケットへの自動変換
If
Set
Code
+
If
Set
Code
25 ノードTrung Tran
チケット管理