Telegram Notifier
Obsidian Telegram Notifier
A simple and useful plugin for Obsidian that sends notifications to your Telegram bot based on deadlines in your notes. Supports recurring reminders, inline tasks, and scheduled working hours.
Features
- Single Reminders: Set a date and time in the note's properties (
review_date). - Recurring Presets: Configure notification cycles (e.g., for payments: 7 days before, on the due date, and 1 day after).
- Inline Tasks: Track deadlines for specific tasks using
[check:: YYYY-MM-DD HH:mm]. - Smart Logic: If a date is removed or a checkbox is checked, notifications for that item will stop.
- Snippet Generator: A built-in tool to generate YAML code for your notes without memorizing the syntax.
- Context Menu: Right-click anywhere in a note to insert a reminder template instantly.
- Timezone & Schedule: Set your timezone and "working hours" (e.g., 9:00 - 21:00) to avoid nighttime alerts.
Installation
Via BRAT (Recommended)
- Install BRAT from the Community Plugins list in Obsidian.
- In BRAT's settings, add a "beta plugin" with this repository's URL.
- BRAT will handle the installation and future updates.
Manual Installation
- Download
main.js,manifest.json, andstyles.cssfrom the Releases page of this repository. - Create a folder named
obsidian-telegram-notifierinside your vault's.obsidian/plugins/directory. - Move the downloaded files into that new folder.
- Go to Obsidian Settings -> Community Plugins, and enable the plugin.
Configuration
Telegram Setup
- Create a bot via @BotFather on Telegram to get your Bot Token.
- Find your Chat ID by sending a message to a bot like @userinfobot.
- Enter these credentials in the plugin settings within Obsidian.
- Click the Send Test Message button to verify the connection.
Field naming and compatibility
This plugin is designed to work together with Dataview and Metadata Menu.
Fields used by the plugin
The plugin relies on the following metadata fields:
- YAML frontmatter:
review_date– single reminder date/time for the whole note.due_date– base date for recurring reminders.reminder_preset– name of the preset to apply.- Custom fields for single reminders (configured in Allowed Fields (Single)).
- Custom fields for presets (configured in Allowed Fields (Preset)).
- Inline field:
check::– used inside tasks for per-line deadlines, e.g.
- [ ] Task name [check:: 2025-12-20 10:00].
All of these use standard YAML and Dataview-style inline syntax and can be safely queried from Dataview or managed via Metadata Menu.
Recommended custom field names
You are free to define any additional fields in the plugin settings, for example:
payment_sumclientproject_linkprioritytype
These fields will be:
- Inserted automatically into generated YAML snippets.
- Available for use in message templates as
{payment_sum},{client}, etc.
Names to avoid
To reduce the risk of edge cases with Dataview, it is recommended not to use the following words as field names in your custom configuration:
wheregrouppositiontagtags
These words are often used in Dataview queries or internal logic and may cause confusing behavior if reused as field keys.
If you follow these guidelines, the plugin should remain compatible with Dataview, Metadata Menu, and other metadata-based workflows in your vault.```
Development
- Clone this repository.
- Run
npm installto install dependencies. - Run
npm run devto start compilation in watch mode.
How to Install
- Download the template file from GitHub
- Move it anywhere in your vault
- Open it in Obsidian — done!
Stats
Stars
3
Forks
1
License
MIT
Last updated 3mo ago