Skip to main content

Send a voice note on Telegram to generate a professional email with ChatGPT

Workflow preview

Workflow preview
100%
Send a voice note on Telegram to generate a professional email with ChatGPT preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Telegram Voice Message → Automatic Email Imagine: What if you could turn a simple Telegram voice message into a professional email—without...

Best for

  • Personal Productivity automation workflows
  • Multimodal AI automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

n8n-nodes-base.wait, n8n-nodes-base.telegram, @n8n/n8n-nodes-langchain.openai, @n8n/n8n-nodes-langchain.agent, @n8n/n8n-nodes-langchain.lmchatopenai, @n8n/n8n-nodes-langchain.outputparserstructured, n8n-nodes-base.gmail, n8n-nodes-base.stickynote

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Baptiste Fort.

Original n8n.io source

1.1 Workflow description

Title
Send a voice note on Telegram to generate a professional email with ChatGPT
Workflow name
Send a voice note on Telegram to generate a professional email with ChatGPT

Telegram Voice Message → Automatic Email

Imagine: What if you could turn a simple Telegram voice message into a professional email—without typing, copying, pasting, or even opening Gmail?

This workflow does it all for you: just record a voice note, and it will transcribe, format, and write a clean HTML email, then send it to the right person—all by itself.

Prerequisites

  • Create a Telegram bot (via BotFather) and get the token.
  • Have an OpenAI account (API key for Whisper and GPT-4).
  • Set up a Gmail account with OAuth2.
  • Import the JSON template into your automation platform.

🧩 Detailed Flow Architecture

1. Telegram Trigger

Node: Telegram Trigger
This node listens to all Message events received by the specified bot (e.g., “BOT OFFICIEL BAPTISTE”).
Whenever a user sends a voice message, the trigger fires automatically.

> ⚠️ Only one Telegram trigger per bot is possible (API limitation).

Key parameter:

  • Trigger On: Message

2. Wait

Node: Wait
Used to buffer or smooth out calls to avoid collisions if you receive several voice messages in a row.

3. Retrieve the Audio File

Node: Get a file

  • Type: Telegram (resource: file)
  • Parameter:
    • fileId = {{$json["message"]["voice"]["file_id"]}}
      This node fetches the voice file from Telegram received in step 1

4. Automatic Transcription (Whisper)

Node: Transcribe a recording

  • Resource: audio
  • Operation: transcribe
  • API Key: Your OpenAI account
    The audio file is sent to OpenAI Whisper: the output is clean, accurate text ready to be processed.

5. Optional Wait (Wait1)

Node: Wait1
Same purpose as step 2: useful if you want to buffer or add a delay to absorb processing time.

6. Structured Email Generation (GPT-4 + Output Parser)

Node: AI Agent
This is the core of the flow:

  • The transcribed text is sent to GPT-4 (or GPT-4.1-mini here, via OpenAI Chat Model)

  • Prompt used:

    You are an assistant specialized in writing professional emails.
    
    Based on the text below, you must: {{ $json.text }}
    
    1. Detect if there is a recipient's email address in the text (or something similar like "send to fort.baptiste.pro")
       - If it’s not a complete address, complete it by assuming it ends with `@gmail.com`.
    2. Understand the user's intent (resignation, refusal, application, excuse, request, etc.)
    3. Generate a relevant and concise email subject, faithful to the content
    4. Write a professional message, structured in HTML:
       - With a polite tone, adapted to the situation
       - Formatted with HTML tags (`<p>`, `<br>`, etc.)
       - No spelling mistakes in French
       - My first name is jeremy and if the text says he is not happy, specify the wish to resign
    

⚠️ You must always return your answer in the following strict JSON format, with no extra text: ```

```json
{
  "email": "[email protected]",
  "subject": "Objet de l’email",
  "body": "<p>Contenu HTML de l’email</p>"
}
```

Everything is strictly validated and formatted with the Structured Output Parser node.

7. Automatic Email Sending (Gmail)

Node: Send a message

  • To: {{$json.output.email}}
  • Subject: {{$json.output.subject}}
  • HTML Body: {{$json.output.body}}
    This node takes the JSON structure returned by the AI and sends the email via Gmail, to the right recipient, with the correct subject and full HTML formatting.

If you want to automate manual tasks, visit our French Agence automatisation 0vni.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Buffer Delay (Pre-Processing)

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 2 - Download Telegram Voice File

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 3 - Transcribe Audio to Text (OpenAI Whisper)

Type / Role
@n8n/n8n-nodes-langchain.openAi - openAi
Config choices
Version 1.8

Block 4 - Buffer Delay (Pre-AI Processing)

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 5 - Generate Email Content AI AGENT

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 2.1

Block 6 - GPT-4 Email Generator Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatOpenAi - lmChatOpenAi
Config choices
Version 1.2

Block 7 - Enforce Email JSON Schema

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.3

Block 8 - Send Email

Type / Role
n8n-nodes-base.gmail - gmail
Config choices
Version 2.1

Block 9 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 11 - Voice note

Type / Role
n8n-nodes-base.telegramTrigger - telegramTrigger
Config choices
Version 1.2

Block 12 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 13 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow Send a voice note on Telegram to generate a professional email with ChatGPT
Complexity intermediate
Nodes 13
Categories Personal Productivity, Multimodal AI
Author Baptiste Fort
Published 06 Aug 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/7041/7041.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Send a voice note on Telegram to generate a professional email with ChatGPT do?

Telegram Voice Message → Automatic Email Imagine: What if you could turn a simple Telegram voice message into a professional email—without...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Personal Productivity, Multimodal AI use case.