Notes audio vers Google Docs
Ceci est unAI Summarization, Multimodal AIworkflow d'automatisation du domainecontenant 9 nœuds.Utilise principalement des nœuds comme If, Set, Function, Telegram, GoogleDocs. Utiliser Whisper et les étiquettes GPT-4o pour convertir les messages vocaux Telegram en documents Google
- •Token Bot Telegram
- •Clé API OpenAI
Nœuds utilisés (9)
Catégorie
{
"id": "14MB25tL8q23UC6z",
"meta": {
"instanceId": "cb56cb3bab7bf366e48fdb39bc0ee15c984e2e754ddee75e0cfbe82dc0be35ed",
"templateCredsSetupCompleted": true
},
"name": "Audio-Notizen zu Google Docs",
"tags": [],
"nodes": [
{
"id": "6dd948b1-2474-4a42-a9d1-e00a89db12a0",
"name": "Telegram Réception message vocal",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-480,
-192
],
"webhookId": "244db411-67b3-49cd-8b8c-15e949741fcb",
"parameters": {
"updates": [
"message"
],
"additionalFields": {
"download": true
}
},
"credentials": {
"telegramApi": {
"id": "WYfCmRaDNXKfdL0W",
"name": "Telegram account"
}
},
"typeVersion": 1.2
},
{
"id": "87c4f0ee-ab1e-4514-8b0c-f311a405baf0",
"name": "OpenAI Transcription Whisper",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
192,
-288
],
"parameters": {
"options": {
"language": "de"
},
"resource": "audio",
"operation": "transcribe"
},
"credentials": {
"openAiApi": {
"id": "m7EOz07pBI5LxjWf",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "37f19a94-f24b-41fb-a0cd-2f82e2e488e5",
"name": "Formatter le texte",
"type": "n8n-nodes-base.function",
"position": [
768,
-192
],
"parameters": {
"functionCode": "// Intelligente Erkennung: Audio oder Text?\nconst keywords = $input.first().json.message.content; // Von \"Message a model\"\nconst messageDate = new Date($('Telegram Sprachnachricht Empfang').first().json.message.date * 1000);\nconst userName = $('Telegram Sprachnachricht Empfang').first().json.message.from.first_name;\nconst originalMessage = $('Telegram Sprachnachricht Empfang').first().json.message;\n\n// Prüfe ob es eine Sprachnachricht war\nconst isVoiceMessage = originalMessage.voice !== undefined;\n\nlet originalText;\nlet messageType;\n\nif (isVoiceMessage) {\n // Sprachnachricht: Text von Whisper holen\n originalText = $('OpenAI Whisper Transkription').first().json.text;\n messageType = \"🎤 Sprachnachricht\";\n} else {\n // Textnachricht: Text direkt aus der Telegram-Nachricht\n originalText = originalMessage.text;\n messageType = \"💬 Textnachricht\";\n}\n\n// Deutsche Formatierung mit Schweizer Zeitzone\nconst formattedDate = messageDate.toLocaleString('de-CH', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n timeZone: 'Europe/Zurich'\n});\n\n// Format: Datum, Typ, Schlagworte, Text\nconst formattedText = `\\n\\n📅 ${formattedDate} (${messageType})\\n🏷️ Schlagworte: ${keywords}\\n📝 Inhalt: ${originalText}`;\n\nreturn [{\n json: {\n formattedText: formattedText,\n originalText: originalText,\n keywords: keywords,\n timestamp: formattedDate,\n userName: userName,\n messageType: isVoiceMessage ? 'voice' : 'text'\n }\n}];"
},
"typeVersion": 1
},
{
"id": "bddc9bec-8574-4835-b45e-ed2a5a3f82c3",
"name": "Enregistrer dans doc Google",
"type": "n8n-nodes-base.googleDocs",
"position": [
992,
-192
],
"parameters": {
"actionsUi": {
"actionFields": [
{
"text": "={{ $json.formattedText }}",
"action": "insert"
}
]
},
"operation": "update",
"documentURL": "https://docs.google.com/document/d/1XYhGMHOPCMdZJgOyhIa77_LpUmVceyp-HjpyEj6fv48/edit?tab=t.0"
},
"credentials": {
"googleDocsOAuth2Api": {
"id": "uXZO5vC2yqTXbjnQ",
"name": "Google Docs account"
}
},
"typeVersion": 2
},
{
"id": "2778d7b4-6a14-4344-bb3e-f05f57cbef14",
"name": "Envoyer confirmation",
"type": "n8n-nodes-base.telegram",
"position": [
1216,
-192
],
"webhookId": "f8f31748-0cd7-486c-991e-c7e3ac2c427e",
"parameters": {
"text": "=✅ Nachricht erfolgreich gespeichert!\n\n📝 Text:\n\n{{ $('Text formatieren').first().json.originalText }} ",
"chatId": "={{ $('Telegram Sprachnachricht Empfang').item.json.message.chat.id }}",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "WYfCmRaDNXKfdL0W",
"name": "Telegram account"
}
},
"typeVersion": 1.2
},
{
"id": "3d479616-eba7-4395-b8f7-16dc13601e96",
"name": "Obtenir un fichier",
"type": "n8n-nodes-base.telegram",
"position": [
-32,
-288
],
"webhookId": "1389312d-14f5-4755-ae07-feafa7163c78",
"parameters": {
"fileId": "={{ $json.message.voice.file_id }}",
"resource": "file",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "WYfCmRaDNXKfdL0W",
"name": "Telegram account"
}
},
"typeVersion": 1.2
},
{
"id": "0bdf1854-ee89-4dd6-b70e-cd1f7495243f",
"name": "Message à un modèle",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
416,
-192
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "chatgpt-4o-latest",
"cachedResultName": "CHATGPT-4O-LATEST"
},
"options": {},
"messages": {
"values": [
{
"content": "=Du erhältst den Text einer Nachricht von Julian Reich. Deine Aufgabe ist es, den Text mit maximal drei Schlagworten zusammenzufassen. Beispiele für Schlagworte sind: Arbeit, Idee, Privat, Sport, Ernährung, Schlaf, KI, Projekt, Effizienz, Problem.\nMache zudem falls nötig minimale Anpassungen am Text, insbesondere wenn der Begriff \"Claude\" nicht erkannt wird. Dieser wird oft mit Cloth, Klot oder anderen falschen Begriffen transkribiert. Halte dich aber grundsätzlich mit Eingriffen zurück. \n\\n\\nHier der Text: {{ $json.text }} "
}
]
}
},
"credentials": {
"openAiApi": {
"id": "m7EOz07pBI5LxjWf",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "fa17de4c-7303-4e85-9385-3e0439e88c8f",
"name": "Vérifier si fichier audio",
"type": "n8n-nodes-base.if",
"position": [
-256,
-192
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "2b538077-d3d3-4713-b973-68748313ff97",
"operator": {
"type": "object",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $json.message.voice }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "f49d300a-68a8-418d-80c0-78032ee65ee4",
"name": "Définir champ",
"type": "n8n-nodes-base.set",
"position": [
192,
-96
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "eb912219-2436-4f04-8ffc-c1c20eb07344",
"name": "text",
"type": "string",
"value": "={{ $json.message.text }}"
}
]
}
},
"typeVersion": 3.4
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "9368fc5a-9ac9-4736-9990-f50a54f714fb",
"connections": {
"f49d300a-68a8-418d-80c0-78032ee65ee4": {
"main": [
[
{
"node": "0bdf1854-ee89-4dd6-b70e-cd1f7495243f",
"type": "main",
"index": 0
}
]
]
},
"3d479616-eba7-4395-b8f7-16dc13601e96": {
"main": [
[
{
"node": "87c4f0ee-ab1e-4514-8b0c-f311a405baf0",
"type": "main",
"index": 0
}
]
]
},
"0bdf1854-ee89-4dd6-b70e-cd1f7495243f": {
"main": [
[
{
"node": "37f19a94-f24b-41fb-a0cd-2f82e2e488e5",
"type": "main",
"index": 0
}
]
]
},
"37f19a94-f24b-41fb-a0cd-2f82e2e488e5": {
"main": [
[
{
"node": "bddc9bec-8574-4835-b45e-ed2a5a3f82c3",
"type": "main",
"index": 0
}
]
]
},
"fa17de4c-7303-4e85-9385-3e0439e88c8f": {
"main": [
[
{
"node": "3d479616-eba7-4395-b8f7-16dc13601e96",
"type": "main",
"index": 0
}
],
[
{
"node": "f49d300a-68a8-418d-80c0-78032ee65ee4",
"type": "main",
"index": 0
}
]
]
},
"bddc9bec-8574-4835-b45e-ed2a5a3f82c3": {
"main": [
[
{
"node": "2778d7b4-6a14-4344-bb3e-f05f57cbef14",
"type": "main",
"index": 0
}
]
]
},
"87c4f0ee-ab1e-4514-8b0c-f311a405baf0": {
"main": [
[
{
"node": "0bdf1854-ee89-4dd6-b70e-cd1f7495243f",
"type": "main",
"index": 0
}
]
]
},
"6dd948b1-2474-4a42-a9d1-e00a89db12a0": {
"main": [
[
{
"node": "fa17de4c-7303-4e85-9385-3e0439e88c8f",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Résumé IA, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Julian Reich
@julianreichPartager ce workflow