Skip to content

w1z2z/secret-santa-tg

Repository files navigation

Тайный Дед-Мороз

Этот проект представляет собой бота "Тайный Дед-Мороз" для анонимного обмена подарками.

Установка

Для установки необходимых зависимостей, выполните следующую команду:

npm install

Mongo

Запустите docker-compose.yaml для развертки mongoDB локально в докере

docker-compose up

Получение API токена телеграм бота

  1. Откройте Telegram и найдите BotFather.
  2. Напишите ему /newbot.
  3. Выберите имя и уникальное имя пользователя для вашего бота.
  4. BotFather предоставит вам API-токен для вашего бота.
  5. Сохраните полученный API-токен в файле .env в вашем проекте:

Переменные среды

Для корректной работы проекта создайте файл .env в корневой директории и добавьте в него следующие переменные:

TG_TOKEN=ВАШ_ТОКЕН_БОТА
MONGO_URI=mongodb://localhost:27017

Запуск

Для запуска проекта используйте следующие команды:

# Режим разработки с использованием nodemon
npm run dev

# Запуск в обычном режиме
npm start

Инструкция по использованию бота

1. Начало диалога:

1.1. Начните разговор с ботом командой /start.
1.2. Бот предложит вам выбрать опции: "Создать", "Присоединиться" или "Инструкция к боту".

2. Создание новой группы:

2.1. Выберите "Создать".
2.2. Бот попросит вас ввести имя новой группы.
2.3. Затем введите имена участников группы по очереди (минимум 3 человека).
2.4. После ввода всех участников бот попросит подтвердить данные кнопкой "Готово".
2.5. Выберите максимальную стоимость подарка из предложенных вариантов.

3. Присоединение к существующей группе:

3.1. Выберите "Присоединиться".
3.2. Введите секретный код для присоединения к группе.
3.3. Выберите свое имя из списка участников, после чего получите имя человека, которому нужно подготовить подарок.
3.4. Учтите, что бот анонимно назначает получателей подарков.

4. Инструкция к боту:

4.1. Выберите "Инструкция к боту", чтобы ознакомиться с подробной инструкцией по использованию бота.

5. Дополнительная информация:

5.1. При создании новой группы бот выдаст вам код доступа к группе и ссылку для приглашения других участников.
5.2. Также будет сгенерирован QR-код для удобного доступа к боту.