Skip to content

mess9/baylist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BayList

Описание

BayList - это многофункциональный бот на базе Spring Boot с интеграцией Telegram и AI возможностями.

Технологический стек

  • Java 21
  • Spring Boot 3.4.0
  • Telegram Bot API 7.10.0
  • Spring AI (OpenAI интеграция)
  • Oracle Database
  • Liquibase
  • Spring Data JPA
  • Spring Cache
  • Feign Client

Требования

  • JDK 21
  • Maven
  • Oracle Database
  • Telegram Bot Token
  • OpenAI API ключ

Настройте переменные окружения:

  • TOKEN_TG - токен вашего Telegram бота
  • OPENAI_TOKEN - ключ API OpenAI
  • TNS_ADMIN - путь до сертификатов Oracle
  • ORACLE_DB_PASSWORD - пароль Oracle

Версионирование

Текущая версия: 0.0.7

бот для общения с тудуист с помощью телеграм

https://t.me/buylistFABot

этот бот написан филом, что бы отправлять ему список покупок

основная идея такова. что бы можно было писать боту в телеграме и он бы добавлял задачи в todoist

автоматизация пользовательского опыта, раньше я накидывал в избранное в тг список дел и покупок перед выходом из дома, чтобы ничего не забыть. но это имеет свои минусы, например нельзя отмечать уже сделанное/купленное, дабы оно не мозолило глаз, и приходится распределять задачи по категориям/местам вручную, или придётся видеть перед собой плоский, не структурированный список.

бот умеет принимать в себя список дел/покупок, разбивать их по категориям и отправлять в todoist.

категории и то, что в них попадает, полностью настраивается пользователем.

фронт будет когда-нибудь потом, вместо или как аналог тудуиста на выбор

планы на будущее

  • доработки ux

    • добавить возможность добавлять задачи в todoist

    • добавить возможность добавлять задачи в todoist с разбиением по категориям

    • возможность просматривать словарик категорий и вариантов

    • добавить возможность просматривать список задач

    • возможность добавлять новые категории

    • возможность добавлять новые варианты в категории

    • возможность удалять категории

    • возможность удалять варианты в категориях

    • возможность переименовывать категории

    • добавить меню

    • добавить хелп

    • автоматическое перемещение внекатегорийных задач по категориям при добавлении их в словарик

    • настроить варианты ввода(в столбик, через запятую, и т.п.)

    • пустые категории сдвигать вниз

    • работа бота в чатах

    • работа бота в inline режиме

    • добавить локализацию (русский/английский)

    • редактирование словарика на фронте

    • первоначальная настройка при регистрации юзера

    • дедлайны и нотификации

    • добавить возможность указывать дедлайны задачам (как сделать удобно?)

      • добавить нотификации о дедлайнах
      • добавить возможность настраивать нотификации о том что есть незавершённые задачи без дедлайнов
    • нотификации о взаимодействиях с друзьями

    • нотификации о том что друг добавил задачу

    • нотификации о том что друг выполнил задачу

    • нотификации о том что друг удалил задачу

    • нотификации о том что вас добавили в друзья

    • друзья

      • многопользовательский режим
      • добавление задач друзьям
      • просмотр задач друзей
      • добавление друзей
      • удаление своих друзей
      • удаление себя из друзей
      • просмотр списка друзей
      • доработать очистку списка задач
      • доработать взаимодействие со словариком
    • игры

      • добавить пятнашки
      • добавить крестики-нолики
    • нейронка

      • прикрутить нейронку
      • отложенный вывод ответа(показать что процесс идёт)
      • просмотр нейронкой всех задач пользователя
      • просмотр нейронкой словарика пользователя
      • редактирование нейронкой словарика пользователя
      • помощь в составлении списка дел
      • помощь в составлении списка покупок
      • помощь в составлении задач на день
      • помощь в формулировке задач
      • умные напоминания
      • добавление задач с датой
  • доработки по технике

    • создать бота
    • добавить логирование
    • подключить бота к тудуисту
    • добавить докер
    • развернуть бот в облаке
    • добавить автоматическое развертывание
    • подключить бд к боту
    • перейти на sync api todoist (для уменьшения количества запросов)
    • переписать api клиент на feign
    • уйти от todoist на собственный фронт
    • реализовать отмечалку сделанных на кнопках в тг
    • возможность отлаживаться на тестовом контуре тг
    • уменьшить количество обращений к бд (состояния, словарик)
    • добавить кэширование
    • добавить мониторинг
    • добавить тесты
    • добавить документацию
    • переделать менюшки на редактирование, а не отправку новой копии
    • зарефакторить переход состояний на state machine
  • баги

    • не отображаются пустые категории
    • при добавлении невалидного токена - выводить об этом сообщение
    • если отправлять задачи не имея привязки к тудуист или друзей, нет предупреждения о том, что эта деятельность не имеет смысла
    • исключить возможность добавить один вариант в разные категории
    • исключить возможность добавления одинаковых категорий
    • выравнять кнопки в меню с помощью невидимых пробелов

если кто хочет помочь в разработке

пишите в телеграм https://t.me/mess9

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •