Telegram bot
Your games in the group where your team already talks. The bot posts each game, keeps the list of who plays up to date, and lets people answer with one tap.
The group bot is not live in production yet. It runs on the development stack while the feature is finished, so the handles and links on this page only resolve once the production bot exists.
What it is for
An organiser’s Amator games are posted into a Telegram group, and the players answer in the group. Nobody retypes a list, nobody counts replies, and the post itself is the answer to "who is coming".
The bot does three things:
- posts each new game of the organisers connected to the group;
- keeps every post up to date — who plays, who is on the reserve, how many seats are free;
- takes answers from the three buttons under the post and writes them straight into the game.
Everything it does is inside the group and the bot’s own private chat. It never writes anywhere else.
For an organiser
Add the bot to the group
Add the Amator bot to the Telegram group as you would any member. The bot says nothing when it joins — that is deliberate, so it does not interrupt a conversation.
Give it permission to pin messages if you want the current game pinned; without that right it simply never pins.
Send /bind
Send /bind in the group. Only a group admin can connect a group — the bot asks Telegram for your status at that moment rather than trusting the message.
If your Telegram is linked to one Amator account and you organise alone, the reply is:
✅ Done! Your Amator games will be posted in this group.
A Telegram group in which the bot answers /bind with one line: “✅ Done! Your Amator games will be posted in this group.”
If you also captain a club, the bot asks first — Whose games should be posted here? — with a button per option, My games and Club {name}. Only the person who sent /bind can press. The question is then rewritten into the answer, so the group is left with one message rather than three.
Two replies mean there is something to fix first:
| reply | what to do |
|---|---|
| First link your Telegram to Amator… | Open the bot’s private chat and follow the link from the app: Profile → Settings → Connected accounts → Telegram. |
| You are posting as an anonymous admin… | Turn anonymity off for a minute, or use the link from the app instead. |
The games start arriving
From then on, every new game of that organiser is posted here within seconds of being created. A game that is already cancelled or finished is never announced.
The post, line by line
⚽ Mokotów · 7×7
🗓 Saturday, 24 October · gathering 14:45 · game 15:00–17:00
📍 Orlik Cieszyńska · Mokotów, Warszawa
💰 15 zł per person
📶 Beginner – Advanced
👤 Organiser: Vlad
Playing (4/12) · minimum 8
1. Vlad K.
2. Igor D.
3. Player
4. Guest (bench)
Reserve (2)
1. Andrii F.
2. Tážū
When a seat frees up, the first in the reserve moves into the line-up
Thinking (2)
I’m out (1)
⚠️ 4 more to the minimum · free: 8
To sign up, open the bot and tap StartA game post in a Telegram group: the title and format, the date with the gathering and playing times, the venue, the price, the level, the organiser, then the numbered line-up, the reserve and the state line
| line | what it is |
|---|---|
| title | the game’s name and its format. Struck through when the game is cancelled. |
| 🗓 | the day, the gathering time and the game’s own start and end. |
| 📍 | venue, district and city. Left out when the place is not public yet. |
| 💰 | the price per person. Left out when there is none. |
| 📶 | the level, or the range when the game accepts several. |
| 👤 | the organiser’s first name. |
| Playing (approved/maximum) | who is in, numbered. · minimum N is appended when the game has a minimum — and left out when there is none, or when the minimum equals the maximum, because then it says nothing. A player marked (bench) is a guest seat. |
| Reserve (N) | the queue, when the organiser approves players automatically. The italic line under it explains that the first in the queue takes the next free seat. When approval is manual the block reads Requests (N) instead. |
| Thinking / I’m out | the two answer lists. Names are always folded into an expandable quote, even a single one, so the post stays short. The second list is headed with the ❌ button’s own words. |
| state line | ⚠️ N more to the minimum below the minimum, ✅ The game is on at or above it, or Recruiting players when there is no minimum — followed by free: N. A full, closed, cancelled or finished game replaces the whole line with its own: No seats left · reserve open, 🔒 Registration closed., ❌ Game cancelled, The game took place · players: N. |
| sign-up line | To sign up, open the bot and tap Start, where the middle words are the link. Only while the game still takes answers and a profile may be made from Telegram — see joining without the app. |
Long lists fold: more than eight names collapse into an expandable quote, and past forty the tail becomes … and N more. If a post would still be too long for Telegram, the bot shortens the lists — reserve, thinking and not-playing first, the playing list last.
The buttons
| button | what it does |
|---|---|
| ✅ I’m in | answers yes. Shown while the game is open or full. |
| ❌ I’m out | answers no. |
| ⏳ Later | marks you as thinking, so the organiser knows you saw it. |
| 📋 Open | opens the game — in the Mini App when one is configured, otherwise the game’s page on the site. Always there. |
| 📅 All games | the group’s upcoming games. Only when a Mini App is configured. |
The three answer buttons under a post — “✅ I’m in”, “❌ I’m out”, “⏳ Later” — with “📋 Open” on the row below
Pressing a button never writes a message in the group. The post is edited instead, so one game stays one message however many people answer.
How the post updates
Every answer, every change to the game and every reminder refreshes the post. The bot groups changes together — about five seconds after the last one, and never later than twenty seconds after the first — so twelve people answering at once produce one edit, not twelve. If nothing in the text actually changed, it makes no call at all.
A few things arrive as a reply under the post rather than an edit: a changed time, a changed place, the reminder a day before, and — at most once a day — a players needed alert with a single ✅ I’m in button.
Telegram limits how fast a bot may write in one chat, so the bot keeps to one operation every three seconds per group. Under a burst, edits queue rather than fail.
House rules
If the organiser attached rules to the game, a player pressing ✅ I’m in gets them in the bot’s private chat: the game line, The organiser asks you to accept the game rules:, and the rules themselves in an expandable quote. The last message carries ✅ I accept and sign up and Not now. Nothing is saved until they accept; if the rules change in between, the bot shows the new version rather than accepting the old one.
Unbinding
/unbind in the group stops the posts:
Done. Games will no longer be posted in this group.
Only a group admin, or the person who connected the games, can disconnect them. Posts that are already there stay where they are — the bot simply stops editing them.
Removing the bot from the group has the same effect, and again it says nothing on the way out.
For a player
You do not need to install anything to answer. Tap ✅ I’m in, ❌ I’m out or ⏳ Later under the post and the list in the post updates.
Changing your mind is the same gesture: tap a different button. The post is edited, and nothing is announced in the group.
Joining without the app
If your Telegram is not connected to Amator, the bot opens its private chat and offers to make a profile from your Telegram account — no password. The card shows the game, a greeting, and one line of consent:
By continuing, you agree to the Terms of Use and the Privacy Policy and confirm that you are 16 or older.
There are no checkboxes. The three buttons are the answer:
| button | what happens |
|---|---|
| ✅ I agree — sign me up | the profile is created and your answer is applied. The bot records which language the card was shown in and the exact text you agreed to. |
| I already have an Amator account | nothing is created. The bot explains how to link Telegram in the app — Profile → Settings → Connected accounts → Telegram — and keeps your answer for 24 hours, so it counts as soon as you link. |
| I’m not 16 yet | nothing is created. Amator is available from age 16. Come back when you turn 16. |
The bot’s private chat showing the sign-up card: the game’s line, a greeting, the consent sentence with its two links, and the three buttons under it
The phone step
Some games need a verified phone number. When that is the only thing missing, the bot finishes it in its private chat: it asks once and shows a Share phone number button.
The number has to come from that button — Telegram sends it as a contact, and it has to be your own. The bot does not accept a typed number. Once it is verified, the answer you gave in the group is applied in the same step, and the keyboard disappears.
The bot’s private chat asking for a phone number, with Telegram’s own “Share phone number” button on the reply keyboard
If you would rather not share it, do nothing: nothing is stored and you are simply not signed up. The next time you tap ✅ I’m in, the bot asks again.
Every command
All six commands work in a group only. The bot has no private-chat command menu, and a command typed in its private chat gets no answer — the private chat is for the sign-up card, the rules and the phone step, which the bot starts itself.
| command | who may use it | what it answers |
|---|---|---|
/games | anyone in a connected group | the next games here, up to ten, each line linking to its own post. |
/next | anyone in a connected group | jumps to the next game’s post. If that game has no post here yet, the post itself is sent. |
/help | anyone — the only command that answers in a group that is not connected yet | what the bot does, with links to the apps and the site. |
/settings | group admins | the posting settings for this group, one button per connected organiser. Without a Mini App it answers with where to find them in the app. A non-admin gets no reply at all. |
/bind | group admins | connects an organiser or a club to this group. |
/unbind | group admins, or whoever connected the games | disconnects them. |
The bot’s answer to /games: a short list of this group’s next games, each line linking to its own post
The bot answers at most once every thirty seconds per group, and deletes its own answer after ten minutes, so /games in a busy group does not become a second conversation.
Questions
What can the bot see in the group?
In a group the bot looks at one field of a message — its text — and only to see whether it begins with one of the six commands. Anything else falls through and is never read again, stored or sent anywhere. No message content leaves Telegram.
What it does send to Amator is narrow: the group’s id, type and title, the id and admin status of the person who ran a command, and, when somebody presses a button, their Telegram id with the game and the choice. Player names in posts come from Amator already filtered for privacy, and the bot only escapes them for Telegram.
What if the bot is removed from the group?
Posts that are already in the group stay, and the bot stops editing them. Nothing is deleted and nothing is announced. Adding it back and sending /bind starts it again.
Which languages does it answer in?
Eight: English, Polish, Ukrainian, Russian, Czech, German, Spanish and French. A reply follows, in order, the language of the sign-up session, then your Amator profile’s language, then your Telegram language when it is one of the eight, then the group’s language — and English if none of those applies.
A group post is always written in the language chosen for that connection, not in each reader’s own. The command menu is installed per language, so each person sees it in theirs.