https://github.com/plastinin-igor/notification-bot
Telegram bot - Notifications about important events
https://github.com/plastinin-igor/notification-bot
bot docker java lombok maven spring spring-boot telegram telegrambot
Last synced: 3 months ago
JSON representation
Telegram bot - Notifications about important events
- Host: GitHub
- URL: https://github.com/plastinin-igor/notification-bot
- Owner: Plastinin-Igor
- Created: 2025-09-24T08:51:34.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-09-30T15:18:35.000Z (9 months ago)
- Last Synced: 2025-09-30T15:31:24.630Z (9 months ago)
- Topics: bot, docker, java, lombok, maven, spring, spring-boot, telegram, telegrambot
- Language: Java
- Homepage:
- Size: 25.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Телеграм бот "Помню всё" ⏳💬
Уведомления о важных датах и событиях, будь то дни рождения близких или еженедельные занятия спортом.
---
## 📖 Описание
### Бот умеет:
✅ Рассылать напоминание двух типов:
- По расписанию: выберите конкретные дни недели и точное время, когда хотите получать уведомление.
- Ежегодные события: установите напоминание на определённую дату каждый год, которое придёт ровно в 10 часов
утра.
## Команды
- Начало работы 🚀 /start
- Справка 🔍 /help
- Список всех уведомлений 📝 /list
- Список напоминаний 🔔 /event
- Список дней рождений 🗓 /day
## 🚀 Установка и запуск
1. Клонировать репозиторий:
```
git clone git@github.com:Plastinin-Igor/notification-bot.git
cd notification-bot
```
2. Настроить application.properties:
```
bot.token= # токен вашего телеграм-бота
bot.username= # имя пользователя - владельца телеграм бота
```
3. Создать список пользователей src/main/resources/userlist.json
```
[
{
"userId": 12345, //chatId
"userName": "UserLogin",
"fullName": "Иванов Иван"
}
]
```
4. Создать список событий по расписанию src/main/resources/events.json
```
[
{
"timeNotify": "17:00:00",
"dayOfWeekNotify": "TUESDAY",
"nameNotify": "Английский язык",
"textNotify": "Через 15 минут начнется урок английского языка.",
"users": [
12345 //chatId
]
},
{
"dateNotify": "2025-10-16",
"timeNotify": "20:15:00",
"dayOfWeekNotify": "FRIDAY",
"nameNotify": "Тренировка",
"textNotify": "Через 15 минут пора начинать тренировку.",
"users": [
12345 //chatId
]
}
]
```
5. Создать список ежегодных событий src/main/resources/birthdays.json
```
[
{
"dateNotify": "0001-01-01",
"timeNotify": "10:00:00",
"nameNotify": "С Новым Годом",
"textNotify": "С Новым годом🎄✨🎁",
"users": [
12345
]
},
{
"dateNotify": "1985-01-03",
"timeNotify": "10:00:00",
"nameNotify": "День рождения у Насти",
"textNotify": "Сегодня день рождения у Насти 🍰🎉. Не забудь поздравить 🥂✨",
"users": [
12345
]
}
]
```
6. Собрать проект:
```
mvn clean install -DskipTests
```
7. Создать образ на основе файла Dockerfile:
```
docker build -t notification-image .
```
8. Создать и запустить контейнер в фоновом режиме:
```
docker run -d --restart=always --name notification-bot notification-image
```