https://github.com/sqlzzy/wishlist-telegram-bot
WishList Telegram Bot on NodeJs
https://github.com/sqlzzy/wishlist-telegram-bot
node-telegram-bot-api nodejs telegram telegram-bot telegram-bot-api
Last synced: 26 days ago
JSON representation
WishList Telegram Bot on NodeJs
- Host: GitHub
- URL: https://github.com/sqlzzy/wishlist-telegram-bot
- Owner: sqlzzy
- Created: 2023-11-07T18:39:39.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-11-08T14:40:56.000Z (over 2 years ago)
- Last Synced: 2025-12-31T21:13:57.055Z (5 months ago)
- Topics: node-telegram-bot-api, nodejs, telegram, telegram-bot, telegram-bot-api
- Language: JavaScript
- Homepage:
- Size: 13.7 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# WishList Telegram Bot on NodeJs
## О боте
Telegram Бот для создания списков желаний. Пользоваться ботом может только пользователь с юзернеймом, указанным в файле [constants.js](https://github.com/sqlzzy/wishlist-telegram-bot/blob/master/src/commons/constants.js).
## Возможности бота
1) Сортировка желаний по категориям:
- исполненные,
- неисполненные;
2) Просмотр списков желаний;
3) Управление навигацией списка желаний. Выводится по 10 желаний в одном сообщении. При общем кол-ве желаний больше 10, для просмотра следующих появляется клавиатура;
4) Добавление, удаление или отмечание желания, как исполненное.
## Структура данных
При запуске проекта создается файл src/json/users.json со структурой:
```[{ username: username, wishes: [] }]```,
где:
**username** — юзернейм пользователя;
**wishes** — список желаний.
Структура желания:
```{ text: text, isGranted: "0", id: id }```,
где:
**text** — текст желания,
**isGranted** — статус желания (0 — неисполненное, 1 — исполненное),
**id** — уникальный идентификатор желания.
## Инструкция
1) Склонируйте репозиторий:
- HTTPS: ```git clone https://github.com/sqlzzy/wishlist-telegram-bot.git name_your_folder```
;
- SSH: ```git clone git@github.com:sqlzzy/wishlist-telegram-bot.git name_your_folder```.
2) Создайте токен бота через [@BotFather](https://telegram.me/BotFather);
3) Вставьте [токен бота](https://github.com/sqlzzy/wishlist-telegram-bot/blob/master/src/commons/constants.js#L2) и [свой юзернейм](https://github.com/sqlzzy/wishlist-telegram-bot/blob/master/src/commons/constants.js#L1) в файле [constants.js](https://github.com/sqlzzy/wishlist-telegram-bot/blob/master/src/commons/constants.js);
4) Установите npm-пакеты: ```npm i```;
5) Запуск проекта:
- локально: ```npm run dev``` (запустится утилита nodemon. Она будет отслеживать изменения и автоматически перезапускать процесс);
- на сервере: ``pm2 start src/server.js`` (менеджер процессов pm2 должен быть предварительно установлен на сервере).
## Автор
[Sergey Osipov](https://github.com/sqlzzy)