Telegram Web Message Scheduler

Schedule Telegram messages using native scheduling feature

Bu betiği kurabilmeniz için Tampermonkey, Greasemonkey ya da Violentmonkey gibi bir kullanıcı betiği eklentisini kurmanız gerekmektedir.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

Bu betiği kurabilmeniz için Tampermonkey ya da Violentmonkey gibi bir kullanıcı betiği eklentisini kurmanız gerekmektedir.

Bu betiği kurabilmeniz için Tampermonkey ya da Userscripts gibi bir kullanıcı betiği eklentisini kurmanız gerekmektedir.

Bu betiği indirebilmeniz için ayrıca Tampermonkey gibi bir eklenti kurmanız gerekmektedir.

Bu betiği yüklemek için bir betik yöneticisi eklentisi yüklemeniz gerekecektir.

(Zaten bir betik yöneticim var, hadi yükleyelim!)

Bu stili yüklemek için Stylus gibi bir uzantı yüklemeniz gerekir.

Bu stili yüklemek için Stylus gibi bir uzantı kurmanız gerekir.

Bu stili yükleyebilmek için Stylus gibi bir uzantı yüklemeniz gerekir.

Bu stili yüklemek için bir kullanıcı stili yöneticisi uzantısı yüklemeniz gerekir.

Bu stili yüklemek için bir kullanıcı stili yöneticisi uzantısı kurmanız gerekir.

Bu stili yükleyebilmek için bir kullanıcı stili yöneticisi uzantısı yüklemeniz gerekir.

(Zateb bir user-style yöneticim var, yükleyeyim!)

Yazar
Raffi Ihza Zuhairnawan
Günlük kurulumlar
0
Toplam kurulumlar
9
Değerlendirmeler
0 0 0
Versiyon
1.0
Oluşturulma
24.01.2026
Güncellenme
24.01.2026
Boyut
31 KB
Lisans
MIT
Geçerli

Telegram Web Message Scheduler

A Tampermonkey userscript that allows you to schedule Telegram messages using Telegram Web's native scheduling feature. Instead of client-side timers, this script automates the actual UI interactions to use Telegram's built-in scheduling system.

✨ Features

  • 📅 Native Scheduling: Uses Telegram's actual scheduling feature, not browser-based timers
  • 🎯 Works across days, months, and years: Full calendar navigation support
  • 🎨 Beautiful UI: Modern dark-themed modal with gradient accents
  • 📝 Dual Input Modes: Use either a simple form or raw JSON input
  • 📦 Batch Scheduling: Schedule multiple messages at once using JSON arrays
  • 📋 Copy Example Button: Quickly copy the JSON example to your clipboard
  • Fully Automated: Script handles all clicking and typing automatically

📦 Installation

Prerequisites

  1. Install Tampermonkey browser extension:

Install the Script

  1. Click on the Tampermonkey icon in your browser
  2. Select "Create a new script..."
  3. Delete all existing content
  4. Copy and paste the entire contents of telegram-scheduler.user.js
  5. Press Ctrl+S (or Cmd+S on Mac) to save
  6. Refresh Telegram Web

🚀 Usage

Step 1: Open Telegram Web

Navigate to web.telegram.org and log in to your account.

Step 2: Select a Chat

Open any chat where you want to schedule a message.

Step 3: Click the Floating Button

Look for the purple floating button (⏰) in the bottom-right corner of the screen.

Step 4: Configure Your Scheduled Message

Option A: Using the Form (Single Message)

  1. Click on the "Form" tab
  2. Enter your message in the text area
  3. Select the date using the date picker
  4. Set the time using the time picker
  5. Click "Schedule"

Option B: Using JSON (Single or Multiple Messages)

  1. Click on the "JSON" tab
  2. Enter a JSON object or array of objects with the following structure:

Single message:

{
  "date": "2026-05-20",
  "time": "14:30",
  "message": "Hello! This is a scheduled message."
}

Multiple messages (batch scheduling):

[
  {
    "date": "2026-01-25",
    "time": "09:00",
    "message": "Good morning! ☀️"
  },
  {
    "date": "2026-01-25",
    "time": "12:00",
    "message": "Lunch time reminder! 🍕"
  },
  {
    "date": "2026-01-25",
    "time": "18:00",
    "message": "End of day! 🌙"
  }
]
  1. Click "Schedule" (or "Schedule All" for multiple messages)

💡 Tip: Use the 📋 Copy button in the example section to quickly copy the multi-message JSON template to your clipboard!

Step 5: Watch the Magic ✨

The script will automatically:

  1. ✏️ Type your message into the input field
  2. 🖱️ Right-click the send button to open the context menu
  3. 📅 Click "Schedule Message"
  4. 🗓️ Navigate to the correct month/year
  5. 📆 Select the correct day
  6. ⏰ Set the correct time
  7. ✅ Confirm the scheduled message
  8. 🔁 Repeat for each message (when batch scheduling)

📋 JSON Format Reference

Field Type Format Description
date string YYYY-MM-DD The date to schedule the message (e.g., 2026-12-25)
time string HH:MM The time in 24-hour format (e.g., 14:30 for 2:30 PM)
message string Any text The message content to send

Examples

Schedule for tomorrow at 9 AM:

{
  "date": "2026-01-25",
  "time": "09:00",
  "message": "Good morning! ☀️"
}

Schedule for a specific date and time:

{
  "date": "2026-02-14",
  "time": "08:00",
  "message": "Happy Valentine's Day! ❤️"
}

Schedule multiple reminders throughout the day:

[
  {
    "date": "2026-01-25",
    "time": "08:00",
    "message": "🌅 Wake up and start the day!"
  },
  {
    "date": "2026-01-25",
    "time": "10:00",
    "message": "☕ Coffee break time"
  },
  {
    "date": "2026-01-25",
    "time": "12:30",
    "message": "🍽️ Lunch time!"
  },
  {
    "date": "2026-01-25",
    "time": "15:00",
    "message": "📊 Afternoon meeting reminder"
  },
  {
    "date": "2026-01-25",
    "time": "18:00",
    "message": "🏠 Time to head home!"
  }
]

Schedule messages across different dates:

[
  {
    "date": "2026-01-25",
    "time": "09:00",
    "message": "Day 1: Starting the project! 🚀"
  },
  {
    "date": "2026-01-26",
    "time": "09:00",
    "message": "Day 2: Continue building! 🔨"
  },
  {
    "date": "2026-01-27",
    "time": "09:00",
    "message": "Day 3: Almost there! 💪"
  }
]

⚠️ Important Notes

  1. Stay on the page: Don't switch tabs while the script is running
  2. Current chat: The message will be scheduled in the currently open chat
  3. Valid dates: You cannot schedule messages in the past
  4. Time zone: Uses your local system time
  5. Internet connection: Required for Telegram's scheduling to work
  6. Batch scheduling: Messages are scheduled one by one with a 1.5 second delay between each

🔧 Troubleshooting

The floating button doesn't appear

  • Make sure Tampermonkey is enabled
  • Refresh the page
  • Check if the script is enabled in Tampermonkey dashboard

"Element not found" error

  • Try refreshing the page
  • Make sure you're on Telegram Web K (web.telegram.org/k/)
  • Ensure a chat is currently open

Navigation takes too long

  • The script needs to click through months one by one
  • For dates far in the future, this may take a few seconds

Wrong date selected (e.g., shows "today" instead of target date)

  • This was fixed in v1.1 - make sure you have the latest version
  • The calendar shows days from adjacent months that are disabled; the script now correctly skips them

Typing appears in Telegram chat instead of modal

  • This was fixed in v1.2 - make sure you have the latest version
  • The modal now properly captures keyboard events

🎨 Customization

The script includes a beautiful dark theme by default. You can customize colors by modifying the CSS in the styles constant near the top of the script.

📄 Changelog

v1.2

  • Multiple message support: Schedule many messages at once using JSON arrays
  • 📋 Copy button: Added a copy button to quickly copy the JSON example
  • 🔧 Input focus fix: Modal inputs no longer leak keystrokes to Telegram's chat input

v1.1

  • 🐛 Calendar fix: Fixed issue where days 29, 30, 31 would incorrectly select dates from the previous month

v1.0

  • 🎉 Initial release with form and JSON input modes

📄 License

MIT License - Feel free to modify and distribute!


Made with ❤️ for Telegram users who love automation