Skip to content

viktor-235/sched-alert-bot

Repository files navigation

sched-alert-bot

Description

The sched-alert-bot project is designed to parse event schedules from various websites and send notifications via Telegram.
It was originally developed to parse the streaming schedule from stopgame.ru, but it's implemented in a flexible way to support additional sources.

Technologies

  • Java
  • Spring Boot
  • MongoDB
  • jsoup for parsing web pages
  • JaVers for detecting changes
  • FreeMarker for generating messages from templates
  • TelegramBots for notifying users

Configuration

Application settings are located in the resources/application.properties file and the .env file.
Make sure you have configured the MongoDB connection and Telegram API credentials.

Development

The entry point is a scheduler class, e.g., SgScheduler.

TODO

  • Add automatic Docker image build
  • Set up MongoDB audit
  • Format date (currently just in MSK timezone)
  • Request user timezone via the bot and use it when displaying dates. This requires generating messages individually for each user
  • Escape values when formatting messages
  • Send critical exceptions to admins
  • Move configuration to the database, with default values in properties
  • Rewrite using XPath if it allows attribute extraction
  • Subscribe to calendar via link
  • Add Twitch/YouTube links during live streams
  • Prevent sending past events
  • Add stream cover image
  • Telegram command /status
  • Telegram command to trigger check manually (without waiting for cron)

About

Telegram bot that parses schedules from websites and notifies users

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages