Skip to content

vbandurin7/update-listener-bot

Repository files navigation

Телеграм бот, написанный на Java.
Данный проект полностью написан мной в рамках курса от Тинькофф по бэкенд разработке на Java. В ходе заданий было написано 2 web-сервиса для отслеживания обновления контента по ссылкам: Bot и Scrapper. В сервисе поддерживаются:

  • Вопросы со StackOverflow
  • Репозитории GitHub

Управление подписками (ссылками) происходит через чат с ботом в Telegram. При новых изменениях в чат отправляется уведомление.

Сервисы будут общаться между собой как напрямую (по HTTP), так и асинхронно (очередь сообщений). Для хранения данных будет использоваться СУБД PostgreSQL.

Примитивная схема выглядит следующим образом:

+-------------+                        
|  PostgreSQL |                        
+----------|--+                        
           |                           
           |                           
 +---------|--+                        
 |            |                        
 |  Scrapper  --\                      
 |            |  ---\   +-------------+
 +---------|--+      ---|             |
           |            |   RabbitMQ  |
           |HTTP      --|             |
           |        -/  +-------------+
 +---------|--+   -/                   
 |            | -/                     
 |    Bot     -/                       
 |            |                        
 +------------+  

Взаимодействие с базой данных может происходить по одному из следующих способов: JDBC, JPA, jOOQ.

Взаимодействие с ботом:

Чтобы начать отслеживать ссылку, нужно ввести следующую команду:

/track <your-tracking-url>

image

Чтобы прекратить отслеживать ссылку, нужно ввести следующую команду:

/track <url-to-untrack>

image

Чтобы получить список всех отслеживаемых ссылок, нужно ввести следующую команду:

/list

image

Поддерживаемые на данный момент сообщения об обновлениях:

GitHub

Оповещение об обновлении репозитория выглядит следующим образом: image

StackOverflow

Оповещение о новых ответах на вопрос выглядит следующим образом: image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages