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

· обновлено · организатору · telegram · состав

Где именно всё ломается

«Кто идёт в субботу на футбол?» Под закрепом идут «+1», «я в деле», «я и друг», «не смогу». Пока ответов мало, состав держится в голове. Потом приходится листать вверх и сверять: кто отказался, кто записался позже, кого добавили за друга. Сама запись занимает секунду. Работой становится поддержание списка между этими сообщениями.

Запись на игру в чате: столбик плюсов под закрепом, из которого уже не сосчитать, сколько человек идёт

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

Четыре способа вести список руками

Закреп, переписка, опрос и таблица могут работать. Важно понимать, кто обновляет запись и как команда узнаёт об изменениях.

Закреп, который организатор правит руками. Один нумерованный список, и его актуальность держится на тебе. Самый читаемый вариант и самый дорогой: каждый «+1» и каждый отказ требуют правки, а прилетают они, пока ты на работе. Пропустил две, и закреп тихо разошёлся с реальностью. Это хуже, чем никакого списка, потому что закрепу верят.

Тред из плюсов и минусов. Писать ничего не стоит, вся цена переехала на чтение. Ответить «сколько нас?» нельзя, не пролистав весь тред и не сложив в уме. На практике это делает один человек, а остальные спрашивают у него.

Опрос. Удобен для быстрого «да/нет» от участников чата. Но для гостя, очереди на свободное место и уточнения «я плюс друг» обычно нужен дополнительный список. Если используете и опрос, и переписку, заранее решите, где лежит итоговый состав.

Таблица. Подходит для общего списка и истории сезона. Нужно договориться, кто переносит туда изменения из чата или как игроки редактируют свою запись сами. Иначе «не смогу» в переписке и строка в таблице начинают означать разные вещи.

Ломается не «плюс», а пересчёт

Сам по себе «+» работает нормально: это простой способ сказать «я в деле». Не масштабируется то, что вокруг него.

  • У гостя должно быть имя. «+2, я с другом» рано или поздно упирается в вопрос, кто этот друг. Без имени никто не знает, кто на самом деле придёт. До десяти человек все и так помнят. После десяти уже нет.
  • Отказы прилетают в середину треда. Кто-то написал «+1» во вторник, а в четверг передумал: «пас, не смогу». Тот, кто считает по скроллу, обязан свести эти два сообщения по порядку и не потерять второе.
  • Люди перестают считать и начинают спрашивать. Когда тред уже не прочитать целиком, самым частым сообщением в чате становится «какой состав?». И один и тот же вопрос звучит десятком способов: «состав?», «список?», «кто идёт?», «какой состав участников?», «дай состав на игру». Просто потому, что читать сорок реплик ради ответа уже не вариант.
  • Люди перестают доверять счёту и проверяют в нём себя. Под ручным столбиком это обычное дело: «а я где?», «Алекс, ты меня записал вообще?», «Криса в списке видишь?», «он же минусанулся?». Дело не в чьей-то ошибке. Ручной список нельзя проверить иначе, чем спросив у того, кто его ведёт.

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

Настоящее узкое место: записать за другого

Отдельная задача: записать другого человека. «Я и Макс» означает две регистрации, хотя сообщение написал один участник. Бывает и другой ввод: организатор присылает готовый состав, иногда уже поделённый на команды. Важно сохранить людей из этого списка и не потерять тех, кто записался раньше, но в новой версии отсутствует.

Парсер, который просто ищет «+1» и «-1», ни один из этих случаев не разберёт. Он не может знать, что фраза «запиши ещё Макса, он тоже придёт» означает регистрацию конкретного второго человека, названного по имени где-то в середине предложения. Ассистент TeamUp читает сообщение, а не сверяет его с шаблоном: «+1 за Макса» регистрирует именно Макса, со своей строкой и своим номером. И, что важно для команд с постоянными гостями, перед созданием нового человека он ищет в чате уже существующего Макса, а переспрашивает только тогда, когда действительно не может выбрать. Два человека с одним именем в составе встречаются чаще, чем кажется: в команде на сорок человек два Максима — обычное дело.

Что реально держит состав из десяти с лишним человек

Как вести список на игру в телеграм-чате: на «+1 за Макса» приходит нумерованный состав, у гостя своя строка

Демонстрация: реплику ассистента в настоящем чате сочиняет модель на языке чата, поэтому формат ответа будет другим.

Механика нарочно не эффектная: люди продолжают писать в чат ровно так же, как писали всегда. «+1», «я в деле», «запиши брата», «сними меня». Не меняется ничего. Меняется то, что происходит дальше.

  • У каждого участника своя строка в актуальном составе. Номер помогает уточнить, кого ты имеешь в виду, но может измениться после снятия игрока или замены полного списка. Перед действием по номеру запроси свежий состав и проверь имя.
  • У гостя своя строка, отдельная от того, кто его привёл, вместо безымянного «+2», который потом никто не расшифрует. Если гость записан под условным именем, переименование позже сохраняет и номер, и место в списке.
  • «Какой состав?» отвечается из текущего состояния, а не по чьей-то памяти о треде. Спрашиваешь как у человека, получаешь список таким, какой он сейчас.
  • При заданном лимите лишние записи попадают в ожидание. После снятия подтверждённого участника следующий может автоматически перейти в основной состав; организатор также может менять статус вручную. Проверь, что человек ещё готов прийти: изменение записи не подтверждает его планы.
  • Готовый состав, вставку из прошлой недели или разбитый по названиям команд, можно отдать одним куском вместо записи по одному имени. Он регистрируется как упорядоченный список, номера идут в том порядке, в котором пришли имена. Молча никого не убирает: тех, кто записан, но в присланном списке отсутствует, тебе сначала покажут, и снимут только после подтверждения.

Со стороны чата эффект такой: состав из двадцати человек ведёт себя как состав из шести. Спросил, получил ответ, всё.

Честные ограничения

Скажем прямо, потому что инструмент, который тихо перестаёт работать на краях, хуже того, который про эти края предупреждает.

Для записи нужна игра. Первую создаёт организатор; если в группе уже была игра и активной сейчас нет, новая может открыться при записи с переносом части настроек. Проверь её дату и условия. Автоматическая очередь ожидания требует лимита мест, а деление на команды выполняется отдельно, случайно или вручную.

А если чат команды живёт вообще не в Telegram и не в VK, например в WhatsApp, состав можно вести по публичной ссылке на запись вместо бота в чате. Но по этой ссылке всё равно нужно войти через Telegram, Apple или VK. Формулировка «без установки» здесь честная, а вот «совсем без аккаунта» уже нет.

С чего начать

Договоритесь, где смотреть актуальный состав и как сообщать об отказе. Если используете Рокки, создайте игру, задайте вместимость и проверьте ответы на первые записи, особенно за друзей. Номер берите из свежего списка, а подтверждение участия отличайте от места в ожидании. Инструкция по запуску поможет пройти первую настройку. Когда состав готов, следующим отдельным шагом можно поделить команды.

Поделить команды раньше, чем начнётся спор

← Все посты