Skip to content

Repository files navigation

TaskTrackifyBot v1.1.1

TaskTrackifyBot - это телеграм-бот, предназначенный для планирования задач и повышения продуктивности. Он обеспечивает удобный способ записи, просмотра и удаления задач, помогая вам организовать свою работу.

Оглавление

Архитектура проекта

project_architecture.png

назад

Инструкция по установке

назад

Требования

  • Git
  • Docker
  • JDK 11
  • Apache Maven

назад

Установка

  1. Склонируйте проект с помощью команды:
git clone https://github.com/BucketOnHead/java-task-tracker-telegram-bot
  1. Заполните файл .env.example и переименуйте его в .env:
TELEGRAM_BOT_USERNAME=YourBotUsernameTELEGRAM_BOT_TOKEN=YourBotToken# and others
  1. Перейдите в директорию проекта:
cd java-task-tracker-telegram-bot
  1. Соберите проект с помощью Apache Maven:
mvn clean install

назад

Запуск

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

docker-compose up -d

назад

Лицензия

Этот проект лицензирован в соответствии с лицензией MIT.

Пожалуйста, ознакомьтесь с полным текстом лицензии, прежде чем использовать данный проект.

назад

Описание переменных окружения

Important

Указанная информация может устареть со временем.

Переменная окруженияОписание
TELEGRAM_BOT_USERNAMEИмя вашего бота в Telegram
TELEGRAM_BOT_TOKENТокен вашего бота в Telegram
RABBITMQ_DEFAULT_USERИмя пользователя для RabbitMQ
RABBITMQ_DEFAULT_PASSПароль пользователя для RabbitMQ
COMMON_DB_NAMEИмя общей базы данных
COMMON_DB_USERИмя пользователя для общей базы данных
COMMON_DB_PASSWORDПароль пользователя для общей базы данных

назад

Функционал

Important

Указанная информация может устареть со временем.

КомандаФункция
/startЗапуск бота
/deleteУдаление аккаунта
/helpПолучение списка доступных команд
/profileПолучить информацию о профиле
/taskmodeПереход в режим управления задачами
/mainПереход в главный режим
/taskСоздание задачи
/tasksПолучение списка задач
/donetaskУдаление задачи из списка

назад

Хеширование

назад

Добавление хеширования

Important

Указанная информация может устареть со временем.

Если вам необходимо добавить хеширование для вашей сущности и вы хотите использовать библиотеку Caffeine, вы можете воспользоваться классом AbstractCaffeineAppCache из модуля node, который уже содержит базовые методы. Вы можете помещать сущность в хеш без явного указания ключа, если переопределите метод K getKey(V value). В противном случае будет сгенерировано исключение RuntimeException с сообщением: "Saving entity only by value is not provided or not implemented".

назад

Настройка хеширования

Important

Указанная информация может устареть со временем.

Настройка хеширования выполняется в модуле node в классе конфигурации AppCacheConfig с использованием библиотеки Caffeine. Пример настройки представлен ниже:

packagecom.github.bucketonhead.config;
@ConfigurationpublicclassAppCacheConfig {
@BeanpublicCache<Long, AppUser> appUserCaffeine() {
returnCaffeine.newBuilder()
.expireAfterAccess(10, TimeUnit.MINUTES)
.maximumSize(100)
.build();
}
}

По умолчанию, пользователь будет удален из кеша через 10 минут после последнего обращения. Максимальное количество мест в кеше составляет 100.

назад

Releases

Packages

Used by

Contributors

Languages