С появлением Max многие разработчики, возможно, задумались о создании ботов для этой платформы. Я тоже начал работу с официальным клиентом, но столкнулся с непредвиденными проблемами — отсутствием конкретных функций и неожиданными ошибками. К примеру, при редактировании сообщений исчезали инлайн-кнопки. После тщательного изучения документации и множества дебагов я решил, что лучше создать своего клиента с аналогичной OpenAPI-схемой.
Идея заключалась в том, чтобы сделать клиент простым и удобным. Я установил четыре основных правила: отсутствие зависимостей, обработка ошибок, обязательное использование context.Context в методах и легкость в тестировании. В результате появился легкий и функциональный клиент, позволяющий отправлять сообщения, медиафайлы и обрабатывать нажатия кнопок с поддержкой различных типов запросов.
Таким образом, я разработал клиент, который не только решает проблемы с исчезающими клавиатурами, но и обеспечивает гибкость в реализации. Теперь я собираюсь перейти к созданию фреймворка с поддержкой роутов и middleware для полноценной работы с Max.