OnTogetherPomoNotify
Telegram notifications from the in-game Pomodoro timer: focus and break changes, a warning before the end, and a summary. Set it up in game, no config file needed.
About this mod Author’s original text
On-Together: PomoNotify
Your Pomodoro timer, on your phone.
The game's focus timer keeps running while you are tabbed out, at a meeting, or making coffee — and
the bell only rings on the machine you left behind. This mod sends the same moments to Telegram.
▶️ Focus started — 25 min
⏳ 5 minutes left of focus
🍅 Focus done — block 3 of 4. Break: 5 min
☕ Break over — focus for 25 min
🍅 Focus done. Long break: 15 min
📊 4 focus blocks, 100 min focused
Setting it up
It takes about two minutes and needs nothing outside the game.
- Make a bot. In Telegram, message @BotFather, send /newbot, and
answer the two questions. It replies with a token that looks like
8123456789:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw.
- Say hello to your bot. Open the chat BotFather links to and send it anything at all. A bot
cannot start a conversation with you, so this step is what makes the next one possible.
- In the game, press F1. Paste the token, press Find next to Chat id, and it fills itself
in. Press Send a test message; the message should arrive in the same chat.
That's it. The window remembers everything.
What it sends, and when
| | |
| --- | --- |
| Focus and break changes | One message per change. A focus block ending and a break beginning are the same moment, so you get one message, not two. |
| A warning | At the minutes-remaining marks you choose — 5, 1 by default. |
| Start, stop, pause, resume | With the time left, so a pause message is still useful an hour later. |
| A summary | Focus blocks and minutes, appended to the long-break and stopped messages. |
Each of the four can be switched off on its own in the window.
If you sync your timer with another player, the clock can jump. A warning whose mark was skipped
over is not sent — "five minutes left" arriving with forty seconds left is worse than nothing.
About the token
Treat the bot token like a password. Anyone who has it can read everything your bot receives
and post as it.
- The window shows it masked. Press Show only if you need to check it.
- It is never written to the log — not on success, not in an error, not with verbose logging on.
Anything that comes back from the network has the token stripped out of it before it is logged.
- It is stored in BepInEx/config/com.sleepeydev.ontogether.pomonotify.cfg, in plain text, because
BepInEx has nowhere else to put it. Do not paste that file, or a screenshot of it, into a bug
report or a chat. If it does get out, /revoke in BotFather makes it useless.
The mod talks to api.telegram.org and to nothing else. It sends only the messages above — never
your name, your lobby, who you are playing with, or anything else about your session.
What it does to the game
Nothing. There is no Harmony patch anywhere in this mod: the timer is read once a second and never
written. Other players cannot tell you are running it, and the timer they see is unaffected.
While the settings window is open, the game stops reading the keyboard — otherwise typing a token
would walk your character across the island. This uses the game's own "you are typing" flag, the one
the chat box sets, so the camera holds still and push-to-talk is released, exactly as when you type
in chat.
Configuration
Everything is in the F1 window. The config file has a few extras:
| Key | Default | What it does |
| --- | --- | --- |
| Telegram / Prefix | (empty) | Put in front of every message, if one chat receives several sources |
| Notify / WarningMinutes | 5, 1 | Minutes-remaining marks, 1 to 180 |
| UI / MenuKey | F1 | Opens the window |
| UI / UiScale | 0 | 0 picks a size from your screen height; set it if the window is the wrong size |
| Diagnostics / VerboseLogging | false | Log every decision and send. The token is redacted regardless. |
F1 is free in the usual mod set: F2 is Pomodoro Sound, F3 Local Playlist, F4–F6 and
F10–F11 Day and Night, F7–F9 FrameCare and BlueSage.
Compatibility
Built against On-Together v1.1.7, BepInEx 5.4.23.5. If the game updates and the timer m
Install & use Install: follow the bundled instructions
- Unzip the archive from playbuff and read the bundled readme / instructions first.
- Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
- For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
- Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.
Install locations vary a lot between mods — the bundled readme is the most reliable guide.
Install these first, or the mod will not work: