S21 Hackaton Bot

Описание

Telegram-бот для бронирования комнат для переговоров в Новосибирском кампусе школы 21, созданный с использованием JavaScript, Node.js и MySQL. Проект сделан в рамках хакатона от School21_NSK (29.03.24 - 31.03.24)

Логотип

Возможности

  1. Регистрация пользователей
  2. Бронирование комнат для переговоров на период не более часа
  3. Просмотр своих бронирований
  4. Отмена своего бронирования
  5. Уведомления о начале бронирования и близком завершении бронирования
  6. Функционал для администратора: возможность блокировать комнаты для бронирования участниками

Установка

1) Клонируйте репозиторий:

git clone git@github.com:RasAleksander/s21_hackaton_bot.git

2) Инициализируйте проект и установите зависимости:

npm init npm install

3) Настройте бота:

Создайте себе токен бота через https://t.me/BotFather. Переименуйте файл .env.example в .env и обновите необходимые переменные окружения.

4) Запустите бота:

npm run start

Использование бота на примере тестового

1) Добавьте бота в Telegram:

Найдите бота @s21_unemployed_bot.

2) Пройдите регистрацию:

Зарегистрируйтесь в боте, указав свой ник на платформе edu.

3) Используйте команды бота:

/signup - забронировать комнату для переговоров

/bookings - посмотреть свои бронирования

/admin - вызов администраторского меню

/info - правила пользования переговорками

Используемые инструменты

  1. telegraf: Библиотека для создания Telegram-ботов на языке JavaScript.
  2. sequelize: Объектно-реляционное отображение (ORM) для Node.js, предназначенное для работы с базами данных.
  3. moment: Библиотека для работы с датами и временем в JavaScript, позволяющая легко парсить, валидировать, манипулировать и форматировать даты.
  4. telegram-inline-calendar: Библиотека для создания интерактивных календарей в сообщениях Telegram. GitHub Репозиторий
  5. canvas: Элемент, использующийся для отрисовки графика свободных слотов на день
  6. express: Фреймворк веб-приложений для node js
  7. nodemailer: Модуль для отправки email
  8. crypto: Библиотека криптостандартов

Разработчики

anemon-a
beluash
ebonicra
Il1aIvanov
RasAleksander

Лицензия

The MIT License (MIT)

Copyright © 2024