The HyperTension Bot is a Telegram bot that helps the user to keep track of his blood pressure and heart rate.
- The user can send his measures to the bot. The bot will safely store the data in a database.
- When asked, the bot is able to provide statistic information (e.g., mean, maximum, minimum) and display historical the data witt plots.
- The bot also sends reminders to the user to measure his blood pressure and heart rate.
Note: Telegram is required to use the bot.
The bot is available at the following link: HyperTension Bot
- Start the bot by sending the command
/start
to the bot. - The bot will ask you to provide your name and surname. Send your name to the bot.
- The bot will ask you to provide your birthday. Send your birthday to the bot in the format
dd/mm/yyyy
.
- The user can send his measures to the bot by writing them with the following format:
systolic pressure diastolic pressure heart rate
. For example,120 80 60
. In the future the user may be able to use less strict formats. - The user can ask the bot to display his measures (e.g., last measures, all measures, measures in a specific time interval).
- The user can also ask general medical information to the bot (e.g., what is hypertension, how to measure blood pressure).
- If the user does not send his measures for a certain amount of time, the bot will send him a reminder to measure his blood pressure and heart rate.
- The project uses the Gitflow workflow.
- The project uses conventional commits.
- Technical discussions should be done via issues.
The system is composed of three main components (plus the user):
- Telegram bot
- Database
- Large Language Model
The Telegram bot is the main component of the system. It is responsible for interacting with the user and for sending him reminders.
The database is responsible for storing the user's data. It is also responsible for providing the data to the Telegram bot when requested.
It is responsible for interpreting the user's messages and for generating possible answers.
Sequence diagram of the communication between the components.