♠ Cosa Mafia
Руководство

Как вести клуб через бота

Пошаговая инструкция для администраторов клуба: площадки, создание игр, запись игроков, канал клуба, посещаемость, рассылки и чёрный список. Бот — @cosa_mafia_bot.


01Роли и как стать администратором

В боте три уровня доступа.

РольЧто может
ИгрокЗаписываться на игры, вести профиль, смотреть свои записи.
Админ клубаВсё из этого руководства — но только в своём клубе: свои игры, свои площадки, свой канал, свой чёрный список.
СуперадминТо же во всех клубах + справочники (города, клубы, площадки), назначение админов и глобальные блокировки.

Таблица прокручивается вбок →

Как становятся админом клуба

Два пути:

  • Вы подаёте заявку сами — /profile → 🎪 Открыть свой клуб (или команда /organizer). Укажите город, название клуба и контакт; суперадмин рассмотрит заявку.
  • Суперадмин назначает напрямую — через справочники бота.

В обоих случаях нужно хотя бы один раз написать боту /start — иначе бота не с кем связать. После назначения в главном меню появится кнопка 🛠 Админка.

Границы ваших прав

Админ клуба видит и меняет только свой клуб. Заявки на новые клубы, справочники городов и клубов, назначение других админов и глобальные блокировки бота — всё это в руках суперадмина. Если нужно завести новый город или вернуться к игре старше недели — обращайтесь к нему.

02Админ-панель

Нажмите 🛠 Админка в меню бота или отправьте команду /admin.

Откроется админ-панель с кнопками:

  • 🎲 Мои игры — список ваших игр и управление каждой.
  • ➕ Создать игру — новая игра.
  • 📢 Канал клуба — привязать или отвязать канал клуба.
  • 📍 Площадки — площадки вашего клуба.
  • ⛔ Чёрный список — заблокировать или разблокировать игроку запись в клубе.

Кнопка 🛠 Админка и команда /admin работают только для администраторов — обычный игрок их не увидит. Если вас назначили только что, откройте меню заново командой /admin.

03Площадки клуба

Игры проводятся на площадках — это конкретный адрес со своей таймзоной. Прежде чем создать первую игру, у клуба должна быть хотя бы одна площадка.

Откройте 📍 Площадки. Здесь можно:

  • ➕ Добавить площадку — бот спросит название, адрес и таймзону. Таймзону выбирают кнопкой из списка (например, Asia/Ashgabat, Europe/Berlin) или вводят строкой в формате IANA.
  • Поменять адрес или таймзону существующей площадки.
  • 🟢 Включить / 🔴 Выключить площадку. Выключенная не предлагается при создании новой игры, но уже созданные на ней игры не пропадают.
Таймзона важна

Всё время игр показывается игрокам именно в таймзоне площадки — не в вашей и не по UTC. Если игроки жалуются, что время «не то», первым делом проверьте таймзону площадки.

Вы видите и меняете только площадки своего клуба.

04Создание и ведение игры

Создать игру

Админ-панель → ➕ Создать игру. Бот проведёт по шагам:

  1. Площадка — из площадок вашего клуба.
  2. Название игры — например, «Спортивная мафия».
  3. Дата и время начала — в формате ДД.ММ.ГГГГ ЧЧ:ММ, по времени площадки (например, 20.07.2026 19:00). Дата должна быть в будущем.
  4. Количество мест — число посадочных мест за столом.

После этого игра сразу создаётся открытой для записи, и — если к клубу привязан канал — в канал автоматически публикуется анонс со списком и кнопками записи (см. раздел 9).

Карточка игры

Откройте игру из списка 🎲 Мои игры. В карточке видно название, дату и время, площадку, занятость мест и статус. Кнопки управления:

КнопкаДействие
👥 ИгрокиСписок записавшихся с контактами; снять игрока, добавить по @username или вписать по имени (для тех, кого нет в боте).
✅ ПосещаемостьОтметить, кто пришёл и кто нет, и завершить игру.
🕓 Дата/времяИзменить дату и время. Игроки получат уведомление об изменении.
🪑 МестаИзменить число мест (не меньше уже занятых).
💬 КомментарийДобавить или изменить комментарий к игре.
📍 Сменить площадкуПеренести игру на другую площадку своего клуба.
🚻 ГостиРазрешить или запретить игрокам приводить гостя (+1).
🟢 / 🔴 ЗаписьПриостановить или возобновить запись на игру.
🚫 Отменить игруОтменить игру. Игроки будут уведомлены.
📢 Написать игрокамРазослать сообщение всем записавшимся.
📄 Экспорт CSVВыгрузить список участников файлом.
📢 Опубликовать зановоПереопубликовать или обновить пост в канале клуба.

Таблица прокручивается вбок →

Изменения доходят до игроков

Смена даты и времени, отмена игры и перенос площадки отправляют записавшимся уведомление автоматически — оповещать вручную не нужно.

Гости игроков (+1)

Игрок может привести на игру одного гостя — человека без аккаунта в боте. Гость занимает отдельное место (учитывается в «занято / всего», как обычный участник). Добавляет гостя сам игрок в личном чате с ботом, к своей подтверждённой записи; из канала это сделать нельзя.

  • По умолчанию гости разрешены на каждой игре. Управляется кнопкой 🚻 Гости в карточке игры — состояние меняется сразу по нажатию.
  • Если запретить гостей — новых добавить будет нельзя (у игроков пропадёт кнопка). Уже добавленные до запрета гости остаются: их места уже забронированы.
  • Гость привязан к пригласившему. Если игрок отписывается сам или вы снимаете его через 👥 Игроки, гость снимается вместе с ним — освобождаются оба места, и лист ожидания подтягивается.
  • Где виден гость. В списке игроков, в посте канала и в CSV гость показан отдельной строкой вида «Гость: имя (от ник игрока)» и без телефона — контакт гостя это сам пригласивший.
  • Уведомления (напоминания, перенос, отмена) гость не получает — их получает пригласивший игрок.

05Мои игры и фильтры

Админ-панель → 🎲 Мои игры. Показаны игры вашего клуба: все ближайшие плюс прошедшие за последние 7 дней. Прошедшие помечены значком 🕓.

Над списком есть фильтры по статусу:

  • Все — как по умолчанию.
  • Открытые — идёт запись.
  • Прошедшие — завершённые игры.
  • Отменённые — отменённые игры.

Фильтры полезны, когда игр много: например, чтобы найти завершённую игру для экспорта списка или отметки посещаемости.

Прошедшие и отменённые игры показываются в пределах недели. Если нужно вернуться к более старой игре — обратитесь к суперадмину.

06Работа с игроками

Карточка игры → 👥 Игроки. Вы увидите два блока: Записаны и Лист ожидания. Рядом с каждым игроком его контакты: телефон 📱 (если игрок его указал) и @username.

Приватность

Телефоны видны только администраторам своего клуба, и каждый просмотр списка контактов фиксируется в журнале. В публичном списке участников — том, что видят сами игроки, — телефонов нет.

Здесь же доступно:

  • ❌ снять игрока — кнопка с именем игрока убирает его запись. Освободившееся место сразу занимает первый из листа ожидания, а снятый игрок получает уведомление.
  • ➕ Добавить игрока — записать человека вручную по @username или Telegram ID. Игрок должен был хотя бы раз написать боту, иначе бот его не найдёт. Если по @username найдено несколько человек — укажите Telegram ID.
  • ✍️ Вписать по имени — записать человека, у которого нет телеграма или который никогда не писал боту. Введите только имя — так он и будет виден в составе. Такая запись занимает место наравне с остальными, а если свободных мест нет — встаёт в лист ожидания.

Добавить вручную можно любого, кроме тех, кто в чёрном списке клуба или заблокирован в боте — таким бот откажет.

Вписанные по имени

В списке игроков и в CSV такая строка помечена «вписан админом» и не имеет контактов; в посте канала и в публичном составе она выглядит как обычный игрок — просто имя.

Уведомлений такой человек не получает: если он продвинулся из листа ожидания, бот напишет вам, а вы сообщаете ему сами. Снимается обычной кнопкой ❌ рядом с именем. Двух тёзок вписать можно — это две разные записи.

Гости в списке

Если игрок привёл гостя (+1), гость показан отдельной строкой «Гость: имя (от ник игрока)» — без телефона. Своей кнопки снятия у гостя нет: он занимает место как +1 к игроку и снимается вместе с ним. Подробно — в разделе «Гости игроков (+1)».

07Посещаемость и завершение игры

После игры отметьте, кто пришёл.

Карточка игры → ✅ Посещаемость. По каждому подтверждённому игроку две кнопки:

  • ✅ имя — пришёл;
  • 🚫 имя — не пришёл.

Внизу — 🏁 Завершить игру. Завершение переводит игру в статус «прошедшая»; если к клубу привязан канал, пост открепляется и помечается как завершённый.

Отмечать посещаемость можно и до завершения, и после — чтобы поправить ошибочную отметку.

08Рассылка и экспорт списка

Написать всем записавшимся

Карточка игры → 📢 Написать игрокам. Введите текст — бот разошлёт его всем записавшимся на эту игру, и подтверждённым, и стоящим в листе ожидания. После отправки бот покажет, скольким сообщение ушло и сколько человек не открывали бота: им написать нельзя, пока человек сам не начал диалог с ботом — это ограничение Telegram.

Типичное применение: «Игра переносится на 20:00», «Не забудьте прийти», «Есть свободное место».

Экспорт списка в CSV

Карточка игры → 📄 Экспорт CSV. Бот пришлёт файл со списком участников: имя, @username, телефон, статус, позиция в листе ожидания. Файл открывается в Excel или Google Sheets.

Осторожно с файлом

В файле есть телефоны, поэтому он доступен только администратору своего клуба, и каждый экспорт фиксируется в журнале. Обращайтесь с ним аккуратно — он покидает Telegram.

09Канал клуба

Бот умеет жить в канале или чате клуба: публиковать анонс игры со списком игроков, закреплять его, обновлять по мере записи — и принимать записи прямо из канала.

Как привязать канал

  1. Добавьте бота в свой канал и сделайте его администратором с правами публиковать, редактировать и закреплять сообщения.
  2. В боте: админ-панель → 📢 Канал клуба.
  3. Выберите свой канал из списка — в нём только каналы, где бот уже администратор.
  4. Готово: канал привязан к клубу.

Чтобы это сработало, должны выполняться три условия — и бот их проверяет:

  • вы админ этого клуба в боте;
  • вы админ этого канала — чужой канал привязать нельзя;
  • бот в канале администратор с нужными правами.

Если чего-то не хватает, бот подскажет — например: «Бот не администратор канала. Дайте боту права публиковать, редактировать и закреплять».

🔌 Отвязать в том же разделе отвязывает канал. Уже опубликованные посты останутся, но обновляться перестанут.

Что происходит дальше

  • При создании игры пост с составом автоматически уходит в канал и закрепляется.
  • Пост сам обновляется при каждой записи, отписке, снятии, отметке и так далее.
  • Кнопкой 📢 Опубликовать заново в карточке игры можно переопубликовать пост — если вы привязали канал уже после создания игры или пост случайно удалили.
  • При отмене или завершении игры пост помечается соответствующе и открепляется.

Как игроки записываются из канала

Под постом — кнопки ✅ Записаться и ❌ Отписаться:

  • если игрок уже знаком боту (открывал с ним диалог) — он записывается в один тап, прямо в канале;
  • если нет — или если для игры нужен телефон — кнопка открывает личный диалог с ботом, где запись завершается.

В посте показываются только имена и ники игроков. Телефонов в публичном канале нет.

10Чёрный список клуба

Если игрок систематически опаздывает, не приходит или мешает — его можно заблокировать в клубе: он не сможет записаться на игры вашего клуба, пока вы его не разблокируете.

Админ-панель → ⛔ Чёрный список.

Заблокировать

  1. Если у вас несколько клубов — выберите клуб.
  2. Введите @username или Telegram ID игрока.
  3. Бот покажет найденного игрока — нажмите ⛔ Заблокировать.
  4. Укажите причину (например, «частые опоздания») или отправьте /skip, чтобы пропустить.

Что происходит при блокировке:

  • игрок больше не может записаться на игры этого клуба — ни сам, ни через канал, ни даже ручным добавлением;
  • его предстоящие записи в клубе отменяются, места освобождаются (лист ожидания подтягивается), игрок получает уведомление.

Разблокировать

В том же разделе — список заблокированных с причиной и датой. Кнопка ✅ Разблокировать: имя снимает блокировку; после этого игрок снова может записываться.

Чёрный список — у каждого клуба свой. Заблокированный в одном клубе спокойно играет в другом. Это не то же самое, что глобальная блокировка бота: она отсекает любое взаимодействие со спамерами на уровне всей сети и доступна только суперадмину.

11Частые вопросы

Бот не находит игрока при добавлении или блокировке

Игрок должен был хотя бы раз написать боту /start. Если по @username находится несколько человек — укажите Telegram ID: его можно узнать, например, через @userinfobot.

Игроку не пришло уведомление о переносе, отмене, снятии или рассылке

Бот не может писать тому, кто ни разу не открывал с ним диалог. При рассылке бот прямо сообщает, сколько человек «не открывали бота» — таким игрокам уведомления не доходят. Это ограничение Telegram, а не бота.

Время игры показывается не то

Время всегда указывается и отображается в таймзоне площадки. Проверьте таймзону площадки в разделе 📍 Площадки.

Не могу привязать канал

Убедитесь, что бот добавлен в канал администратором с правами публиковать, редактировать и закреплять, и что вы сами администратор этого канала. Бот подскажет, чего именно не хватает.

Не вижу кнопку «Площадки», «Канал клуба» или «Чёрный список»

Эти разделы есть только у администраторов клуба. Если вас назначили недавно — откройте меню заново командой /admin.

Игрок не может записаться на две игры подряд

По умолчанию между играми должен быть промежуток не меньше 60 минут — на две игры, идущие слишком близко по времени, записаться нельзя.

Могу ли я управлять чужим клубом?

Нет. Админ клуба видит и меняет только свой клуб: свои игры, площадки, канал, чёрный список. Управление всей сетью — у суперадмина.

Как записать человека, у которого нет телеграма?

Карточка игры → 👥 Игроки → ✍️ Вписать по имени. Введите имя — человек займёт место как обычный игрок, а при аншлаге встанет в лист ожидания. Уведомления по этой записи приходят вам, а не ему: связываетесь с человеком вы сами.

Чем «вписать по имени» отличается от гостя (+1)?

Гостя приводит игрок к своей записи: один на игрока, только при свободном месте, в лист ожидания не встаёт. Вписанный по имени — самостоятельная запись от админа: их может быть сколько угодно, и они встают в очередь наравне со всеми.

Как запретить гостей на игре?

В карточке игры нажмите 🚻 Гости: разрешены — состояние переключится на «запрещены» сразу. По умолчанию гости разрешены. Уже добавленные до запрета гости останутся; чтобы убрать такого гостя, снимите пригласившего игрока.

Как снять только гостя, не трогая игрока?

Отдельной кнопки для этого нет: гость — это +1 к записи игрока. Убрать гостя может сам игрок кнопкой ➖ Убрать гостя. Со стороны админа место гостя освободится только при снятии самого игрока — гость уходит вместе с ним.

У гостя не видно телефона в списке и CSV

Так и задумано: у гостя нет аккаунта и контакта в боте. По вопросам к гостю обращайтесь к пригласившему его игроку — он указан в строке «(от ник игрока)».

Сколько это стоит и будет ли реклама?

Для клубов пользоваться ботом можно бесплатно. Чтобы проект оставался таким, мы оставляем за собой право иногда размещать в канале клуба рекламное объявление — не чаще одного раза в неделю. Привязывая канал, вы соглашаетесь с таким форматом.

Готовы вести свой клуб?

Откройте @cosa_mafia_bot, подайте заявку — и проведите ближайшую игру по-новому.