Первого бота переписал
Первым выбрал Европейскую Гимназию. Это виртуальный сотрудник, который берёт на себя организацию трёхсторонних встреч. Администрации остаётся актуализировать смену преподов, дисциплин и привязанных к ним классов.
Вспомнил молодость, где «надо завтра». Нельзя удариться в универсальный и сложный код. Старый код (2021го) не запускается и сложен к дебагу в новой инфраструктуре. А, главное, переход на Laravel перспективнее, потому что открывается масштабирование через Event и Job. Последние — очереди, нужны были и при разработке, но обвязывать самстоятельно было тяжеловато.
Перетащил классы на новые места, убрав неиспользуемый код. Пофиксил неймспейсы, реализовал эндпоинты для хуков и прочего, добавил интеграционные тесты. За исключением текстов сообщений, кажется, переписал каждую строчку. Крон со старого хоста утерян, так что воспользовался шедулером.
Через некоторое время, я внедрил протнее Event, чтобы слушатели событий сами реагировали и можно было масштабировать функционал за счёт слушателей. Увёл ответственности в сервис-провайдеры. Получились хорошие слои.
Миссия выполнена.
Зачем? Во-первых, смена хоста и апдейт версии языка сломал обратную совместимость. Во-вторых тренировка на кошках открыла возможность делать ботов любой сложности с любой нагрузкой.