An open API service indexing awesome lists of open source software.

https://github.com/w1z2z/secret-santa-tg

Telegram bot is implementing a secret santa
https://github.com/w1z2z/secret-santa-tg

mongodb mongoose node-js secret-santa telegraf-js telegram-bot tgbot

Last synced: 8 months ago
JSON representation

Telegram bot is implementing a secret santa

Awesome Lists containing this project

README

          

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

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

## Установка

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

```bash
npm install
```

## Mongo

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

```bash
docker-compose up
```

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

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

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

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

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

## Запуск

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

```bash
# Режим разработки с использованием 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-код для удобного доступа к боту.