Commit Graph

334 Commits

Author SHA1 Message Date
Mark Struchkov
57ac698715 Архитектурные изменения 2019-02-21 21:27:38 +03:00
Mark Struchkov
dd8c3e977a GitIgnore 2019-02-11 00:50:56 +03:00
Mark Struchkov
6a009b5eae Странный комит 2019-02-11 00:06:04 +03:00
Mark Struchkov
25cde5aeb6 Исправил проблему с longpoll сервером
Ключ становился недействительным спустя несколько часов, необходимо было запрашивать новый ключ, чтобы получать события от вк
2019-02-09 02:43:18 +03:00
Mark Struchkov
b325a2e924 Отваливался LongPoll сервер при долгом простое 2019-02-08 16:36:11 +03:00
Mark Struchkov
f68e6b57d7 Release 0.4
CodeStyle
2019-02-07 18:11:44 +03:00
Mark Struchkov
3873aa35c3 Переосмыслен юнит сохранения
Теперь это самостоятельный юнит, который ничего не отправляет пользователю, а только сохраняет пришедшие данные
2019-02-07 17:56:26 +03:00
Mark Struchkov
809d17715e Абстрактный класс для автоответчика
Чтобы можно было реализовать автоответчики для комментариев и прочего
2019-02-07 02:26:39 +03:00
Mark Struchkov
85a9849c0a Начал работу над обработкой комментариев 2019-02-07 00:05:10 +03:00
Mark Struchkov
3b29921d2e Архитектурные изменения автоответчика 2019-02-06 17:24:22 +03:00
Mark Struchkov
f4d5946d77 Новый сортировщик для бесед 2019-02-06 01:44:22 +03:00
Mark Struchkov
f6e69a374c Архитектурные изменения 2019-02-05 21:52:26 +03:00
Mark Struchkov
ccdc44d689 Новый тип юнитов - таймеры
Таймер срабатывает не сразу а через какое-то время, заставляет сработать любой другой тип юнита
2019-02-03 20:33:54 +03:00
Mark Struchkov
3027f7d5cf Локальные переменные для доступа к данным вк
* Что это значит? Теперь разработчику не нужно самому лесть в vk api. для того, чтобы допустим получить имя пользователя и вставить его в сообщение. Достаточно в теле сообщения указать %firstname%
* Новый юнит, который позволяет получить какие-то данные за пользователя. Например это позволяет пользователю не ввыодить город, а запрашивать его у вк и уточнять у пользователя актуальность.
2019-01-31 15:06:54 +03:00
Mark Struchkov
a92d71ef3e Переход на Gson вместо непонятной Json библиотеки 2019-01-31 08:50:39 +03:00
Mark Struchkov
c50ce8cd40 Большие архитектурные изменения
* Добавлен новый класс, для хранения терминальных команд от администратора бота
* Некоторые интерфесы переписаны под дженерики
* Архитектура стала более логичной и продуманной
* Рефакторинг
2019-01-31 00:59:00 +03:00
Mark Struchkov
ac50183423 * Изменена логика KeyBoardService. Теперь все методы статичные
* Добавлен новый класс для вставки слов из List в строку
* Изменена стругтура Unit. Теперь они не хранят MailSend, они хранят BoxAnswer, который может быть преобразован в MailSend (возможно стоит вернуть MailSend)
* Добавленны методы, которые позваляют преобразовать BoxAnswer в MailSend
* Добавлен функциональный интерфейс
2019-01-30 12:35:54 +03:00
Mark Struchkov
d727e37bd8 Autoresponder: Изменил архитектуру юнитов
Теперь юниты хранять только MailSend, а не поля в разнабой, которые необходимо отправить пользователю
2019-01-27 17:15:23 +03:00
Mark Struchkov
04a7e180b1 Core: Изменение отправки сообщений в вк
* Исправил баг с сообщениями, которые приходили позже проверки (костыль)
2019-01-27 16:16:10 +03:00
Mark Struchkov
b66e1902eb Release-0.3
* Теперь вся библиотека разбита на модули, нет необходимости использовать ненужные модули
* Автоответчик теперь может присылать простые текстовые ответы или сохранять ответы пользователей (бета версия)
* Множество мелких архитектурных решений
2019-01-26 15:19:31 +03:00
Mark Struchkov
e0befdf62a * Изменилась логика возвращения клавиатуры
* Добавил родителбскую реализацию юнита с клавиатурой, от нее будут наследоваться все остальные
* Добавил простую реализацию юнита для тестовых ответов
* Добавил новую реализацию юнита для сохранения ответов пользователя
* Добавил дефолтную реализацию Saver
* Переписал action, теперь для активации юнита еще отправляется Mail (нужно было для юнита, который сохраняет ответы пользователя)
2019-01-26 15:11:47 +03:00
Mark Struchkov
04062ba8b1 Размышления над архитектурой
* Продолжаю настроивать взаимодействие с юнитами
* Главный класс автоответчика разбил на методы
2019-01-25 15:24:30 +03:00
Mark Struchkov
b5a8680f09 Разбиение на модули 2019-01-24 22:20:26 +03:00
Mark Struchkov
c0a58e61e1 Очистка от лишних файлов 2019-01-09 18:39:51 +03:00
Mark Struchkov
00a964a9fd Архитектурное разбиение на независимые проекты 2019-01-09 17:18:20 +03:00
Mark Struchkov
92c2c4fd7b Refactoring: Code Style and Optimize import 2019-01-09 11:09:00 +03:00
Mark Struchkov
d42ae014e0 Небольшие доработки обработки сообщений 2019-01-09 11:02:38 +03:00
Mark Struchkov
0090ab9034 Архитектурные решения
* Добавлен новый слой логики приложения. Модуль обращается к этому слою, и только этот слой может обращаться к БД
* Начал связывать таблицы
* Переместил классы
2019-01-08 23:39:00 +03:00
Mark Struchkov
d6b902f2b9 * Добавлен ENUM для определения источника события
* Добавлен кастомный SQL метод возвращающий сообщения из БД новее запрошеной даты
* Добавлен глобальный обработчик сообщений
* Исрпавлены конфигурации spring, которые приводили к ошибкам в создании бинов
* Добавлен статический класс с методами вк апи
2019-01-05 00:45:57 +03:00
Mark Struchkov
1a19f1f88d Работа с базой и перемещение файлов 2018-12-31 12:35:16 +03:00
Mark Struchkov
f022b2df1a Перая версия слушателя событий
Научил программу работать в двух потоках. Первый поток слушает все сообещния от сервера и записывает их в отдельный класс. Другой поток раз в какое-то время обращается к этому классу и что-то делает
2018-12-25 03:13:04 +03:00
Mark Struchkov
d5236a30e4 Создал ORM основу для основного модуля 2018-12-23 03:34:18 +03:00
Mark Struchkov
71ce7af51d Логирование и связь с БД
* Добавли логироание Log4j
* Настроил тестовую взаимосвязь с БД MySQL
2018-12-21 23:14:50 +03:00
Mark Struchkov
bdd925071e Научился принимать сообщения из вк
* Все данные для настройки соединения и взаимодествия с вк в отдельном файле
* Научился отлавливать новые сообщения в сообществе и отправлять ответ
* Добавил паттерн Наблюдатель
2018-12-20 00:45:34 +03:00