Тиждень 1 - QuarantineGameTeam/team_5_game GitHub Wiki
Те, що має працювати до кінця першого тижня (01-02.06.2020)
Стисла програма-мінімум
- Реєстрація гравця (після вибору "/start")
- додається в БД
- БД для старту простого типу (ключ-значення)
- Автоматично зараховується до клану
- отримує повідомлення «Ви зараховані до клану {NAME}»
- Відкривається запрошення розпочати битву (кнопка бот-меню).
- Сам бій "відбувається" в фоні
- Гравець отримує повідомлення про завершення бою з результатом і запрошення на наступний бій.
Розгорнутий план від Сергія
С точки зрения пользователя:
- Найти телеграмм бота игры
- Нажать кнопку “Старт”
- Видит описание игры
- Видит список кланов 3 шт (кнопки с названиями кланов)
- Нажать кнопку одного из предложенных кланов
- Видит сообщение “Вы присоединились к клану Х”
- Видит кнопку “Начать бой”
- Нажать кнопку “Начать бой”
- Видит сообщение “Вы победили в битве и всего сыграно битв Х”
- Видит кнопку “Начать бой”
- Повторяется с предыдущего шага
С точки зрения разработки
- Добавить бота
- Найти как добавить бота
- Добавить бота
- Добавить картинку (логотип)
- Добавить описание
- Изучить возможность отключить возможность ввода текста и использования только присланных кнопок
- Добавить каркас приложения
- Изучить возможные варианты размещения приложения
- Создать каркас приложения на Го
- Разместить приложение
- Залить на гит
- Обсудить стратегию работы с Гит
- Добавить возможность получить список тех кто добавился (единоразово при старте)
- Изучить API Телеграмма
- Добавить работу с запросами HTTP
- Отправить запрос на получение пользователей (или общий запрос)
- Добавить структуру для пользователя (класс: ИД, Имя ...)
- Обработать ответ от API
- Положить ответ в сущность пользователя
- Сохранить пользователей
- Изучить возможные БД
- Разместить БД
- Реализовать подключение к БД
- Добавить механизм сохранения и чтения из БД
- Сохранить пользователя
- Получать новых пользователей по мере добавления и сохранять их
- Изучить возможность получения данных из Телеграмм по мере их поступления
- Реализовать механизм получения данных от Телеграмм (нужно разбить детальнее)
- Сохранить результат
- Отправить сообщение с описанием игры новому пользователю
- Изучить возможности отправки сообщений
- Приготовить каркас сообщения
- Отправить сообщение в Телеграмм
- Отправить сообщение с кнопками для выбора клана
- Изучить возможности отправки кнопок
- Приготовить каркас сообщения с кнопками
- Отправить сообщение в Телеграмм
- Обработать нажатие на кнопку выбора клана
- Получить от Телеграм информацию о нажатой пользователем кнопке
- Преобразовать ответ в сущность программы
- Получить пользователя из базы
- Обновить информацию у пользователя и сохранить его
- Отправить сообщение пользователю о успешной операции
- Отправить сообщение с кнопкой начать бой
- Отправить сообщение
- Обработать нажатие на кнопку начать бой
- Обработать нажатие
- Вычитать информацию пользователя
- Обновить информацию (увеличить количество битв)
- Сохранить обновление
- Отправить пользователю сообщение с текстом
- Отправить сообщение с кнопкой