Automate Daily Meeting Alerts with Google Calendar and Telegram

Discover how to automatically send your daily meetings from Google Calendar to Telegram every morning. This workflow saves time managing schedules and ensures you never miss important meetings with timely Telegram notifications.
googleCalendar
scheduleTrigger
set
+3
Workflow Identifier: 1795
NODES in Use: Google Calendar, Schedule Trigger, Set, Function, Telegram, Sticky Note

Press CTRL+F5 if the workflow didn't load.

Learn how to Build this Workflow with AI:

Visit through Desktop for Best experience

1. Opening Problem Statement

Meet Sahar, a busy project manager juggling multiple meetings every day across various teams. Each morning, she wastes up to 30 minutes just checking her Google Calendar and cross-referencing meeting details with her messaging apps. Important meetings sometimes get overlooked, or she scrambles to find attendee information last minute. This scattered routine often leads to missed discussions or delayed preparations, costing her productivity and professional reputation.

This specific challenge of keeping up-to-date with daily meetings and having them conveniently accessible on a preferred communication platform is what our workflow directly solves. By automating the daily meeting summary from Google Calendar and sending it to Telegram, Sahar regains lost time and stays organized effortlessly.

2. What This Automation Does

This workflow runs automatically every day at 6 AM and performs the following tasks:

  • Fetches all meetings scheduled for the current day directly from your Google Calendar, including details like meeting names, start times, and guests.
  • Formats the meeting data into a user-friendly summary message customized with meeting times localized for Iran’s timezone.
  • Generates a detailed text message listing each meeting, its time, and attendees, adding a note if no guests are invited.
  • Sends this compiled summary message to your Telegram account using a Telegram bot, delivering it as a neat notification first thing in the morning.
  • Reduces manual calendar checks and messaging app toggling, saving you about 30 minutes each morning.
  • Makes managing meetings more reliable and less stressful by automating reminders exactly when needed.

3. Prerequisites ⚙️

  • Google Calendar account connected via n8n Google Calendar OAuth2 credentials 📅🔑
  • Telegram bot created using Telegram’s @BotFather and API token configured in n8n 🤖📧
  • Your personal Telegram User ID for message delivery
  • An active n8n account, either cloud-hosted or self-hosted (for self-hosting, explore options like Hostinger).

4. Step-by-Step Guide

Step 1: Create Schedule Trigger Node for 6 AM

In the n8n workflow editor, drag the Schedule Trigger node onto the canvas. Set the trigger time to 6 AM every morning by navigating: Schedule Trigger → Parameters → Rule → Add interval → Set “triggerAtHour” to 6. This node ensures the workflow runs at your preferred time daily.

After saving, you should see a clock icon next to the node confirming its scheduled trigger. If the time zone is set incorrectly, adjust in workflow settings to Asia/Tehran for accurate timing.

Step 2: Connect Google Calendar Node to Fetch Today’s Meetings

Add the Google Calendar node. Choose the “Get All” operation and configure the parameters:

  • Set timeMin to today’s date with: {{$today}}
  • Set timeMax to tomorrow’s date `{{$today.plus({ days: 1 })}}` for a 24-hour range
  • Select your calendar email (e.g., [email protected])
  • Enable singleEvents to true to expand recurring events

This node pulls all your meetings for the day in detail. Verify your Google OAuth2 credentials are connected to n8n under credentials settings.

Step 3: Use Set Node to Extract Specific Meeting Fields

Insert a Set node next to Google Calendar. Structurally map each meeting’s key attributes to simpler field names:

  • Name from summary
  • Time from start
  • Guests from attendees

Use: Name = {{$json.summary}}, Time = {{$json.start}}, Guests = {{$json.attendees}}

This streamlines the JSON data for easier use downstream.

Step 4: Format Message Text Using Function Node

Add a Function node for JavaScript customization. Paste this code snippet:

let message = "*Your meetings today are:* n";

for (item of items) {
  const time = new Date(item.json.Time.dateTime);
  const formattedTime = new Intl.DateTimeFormat('fa-IR', {
    hour: 'numeric',
    minute: 'numeric',
    timeZone: item.json.Time.timeZone
  }).format(time);

  message += `* ${item.json.Name} | ${formattedTime}n`;

  if (item.json.Guests && item.json.Guests.length > 0) {
    message += '*Â - ';
    item.json.Guests.forEach((guest, index) => {
      message += `${guest.email}${index < item.json.Guests.length - 1 ? ', ' : ''}`;
    });
    message += 'n';
  } else {
    message += '*Â - No guestsn';
  }
}

return [{ json: { message } }];

This script loops through all meetings, formats times for Iran timezone, and assembles emails of all guests or notes when none are invited. The result is a neatly formatted Markdown Telegram message.

Step 5: Send the Formatted Message via Telegram Node

Finally, add the Telegram node. Use your bot credentials and set the message field to the generated message expression: {{$json["message"]}}.

This will deliver the daily meeting summary to your personal Telegram chat.

Test the workflow manually or wait until 6 AM the next day to see your meeting list pop right into Telegram.

5. Customizations ✏️

  • Change Timezone: In the Function node, modify 'fa-IR' to your preferred locale code to format time properly for your region.
  • Add Meeting Location: Extend the Set node to include location, then update the Function node to append meeting venues for richer details.
  • Include Meeting Description: Retrieve and display the description field for each meeting by adding it to the Set node and formatting message output accordingly.
  • Schedule Multiple Notifications: Duplicate the Schedule Trigger node to run multiple reminders at different times like noon or evening.
  • Send to Group Chats: Modify the Telegram node's chat ID to broadcast the meeting list to a team or group channel instead of just a personal chat.

6. Troubleshooting 🔧

Problem: "Google Calendar node returns empty data or no events found."
Cause: Incorrect calendar ID or date range filters.
Solution: Double-check the calendar email in the Google Calendar node, ensure timeMin and timeMax parameters correctly define the current day, and verify you have upcoming meetings scheduled.

Problem: "Telegram messages are not sent or fail with 401 Unauthorized."
Cause: Invalid or expired bot token, or incorrect chat ID.
Solution: Confirm your Telegram bot token and chat ID are correctly input in n8n credentials and Telegram node parameters. Test the bot by sending sample messages using Telegram API before workflow use.

Problem: "Timing issues where message arrives late or not at 6 AM."
Cause: Workflow timezone mismatch.
Solution: Set your workflow timezone explicitly to Asia/Tehran or your local timezone under workflow settings to ensure schedule trigger fires correctly.

7. Pre-Production Checklist ✅

  • Confirm Google Calendar OAuth2 credentials are connected and active in n8n.
  • Verify the Telegram bot credentials and personal user ID are correctly set.
  • Test the Schedule Trigger node timing matches your desired daily run time.
  • Run the workflow manually to verify it fetches meetings and sends Telegram messages with correct formatting.
  • Backup your workflow JSON and credentials before going live.

8. Deployment Guide

Once tested, toggle the workflow to active in n8n. The Schedule Trigger node will auto-execute every morning at 6 AM (or your customized time).

Monitor initial runs via execution logs to catch any unforeseen errors. Adjust configurations if meeting data or timezone appears incorrect.

Use n8n's inbuilt workflow history to audit successfully sent Telegram messages. If you self-host n8n, consider automated backups and uptime monitoring.

10. Conclusion

By following this guide, you've equipped yourself with an automated n8n workflow that pulls your daily meetings from Google Calendar and delivers them to Telegram every morning. This empowers you to stay ahead, saves approximately 30 minutes daily, and eliminates manual calendar checks.

Next steps to expand this automation could include integrating meeting location details, adding Slack notifications, or sending reminders before meeting start times. With this solid foundation, your productivity just got a boost!

Promoted by BULDRR AI

Related Workflows

Automate Viral UGC Video Creation Using n8n + Degaus (Beginner-Friendly Guide)

Learn how to automate viral UGC video creation using n8n, AI prompts, and Degaus. This beginner-friendly guide shows how to import, configure, and run the workflow without technical complexity.
Form Trigger
Google Sheets
Gmail
+37
Free

AI SEO Blog Writer Automation in n8n (Beginner Guide)

A complete beginner guide to building an AI-powered SEO blog writer automation using n8n.
AI Agent
Google Sheets
httpRequest
+5
Free

Automate CrowdStrike Alerts with VirusTotal, Jira & Slack

This workflow automates processing of CrowdStrike detections by enriching threat data via VirusTotal, creating Jira tickets for incident tracking, and notifying teams on Slack for quick response. Save hours daily by transforming complex threat data into actionable alerts effortlessly.
scheduleTrigger
httpRequest
jira
+5
Free

Automate Telegram Invoices to Notion with AI Summaries & Reports

Save hours on financial tracking by automating invoice extraction from Telegram photos to Notion using Google Gemini AI. This workflow extracts data, records transactions, and generates detailed spending reports with charts sent on schedule via Telegram.
lmChatGoogleGemini
telegramTrigger
notion
+9
Free

Automate Email Replies with n8n and AI-Powered Summarization

Save hours managing your inbox with this n8n workflow that uses IMAP email triggers, AI summarization, and vector search to draft concise replies requiring minimal review. Automate business email processing efficiently with AI guidance and Gmail integration.
emailReadImap
vectorStoreQdrant
emailSend
+12
Free

Automate Email Campaigns Using n8n with Gmail & Google Sheets

This n8n workflow automates personalized email outreach campaigns by integrating Gmail and Google Sheets, saving hours of manual follow-up work and reducing errors in email sequences. It ensures timely follow-ups based on previous email interactions, optimizing communication efficiency.
googleSheets
gmail
code
+5
Free