bzvyagintsev / tg-scrum-daily

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Описание

Бот для напоминания о Scrum Daily.

Запуск

Для запуска на локальной машине надо использовать команду "npm run start".

Архитектура

Для разработки использован фреймворк node-telegram-bot-api. В качестве планировщика использован node-schedule-tz, в котором можно настраивать часовые пояса.

БД

БД бота находится в Firestore. Продовая база должна находится в таблице chats, а тестовая в "test_chats".

CI/CD

Деплой бота настроен на App Engine в GCP, туториал: https://medium.com/google-cloud/automatically-deploy-to-google-app-engine-with-gitlab-ci-d1c7237cbe11

Ещё один туториал: https://medium.com/monplan/nodejs-on-app-engine-standard-c4092efc7eab

Бот разворачивается в GCP в App Engine. Среда выбрана стандартная, чтобы контролировать количество инстансов, потому что, если инстансов больше одного, то бот начинает дублировать сообщения.

Чтобы при развёртке заменять текущую версию, в команду деплоя добавлен параметр --version=VERSION.

Todo:

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

Готово

  • Build: при развёртке новых версий, не удаляются старые.# tg-scrum-daily

About


Languages

Language:JavaScript 100.0%