Hey, guys! Неделю назад я начал затянувшуюся эпопею с настройкой собственного небольшого сервера и вступил в неравный бой с Линуксом, вебом и TLS-сертификатами. Обо всём этом будет подробнее рассказано когда-нибудь позже, а сегодня я хочу представить тестовый проект, который специально пилился в течение последних дней с целью задеплоить его на этом сервере, чтобы проверить его в боевых условиях.
Вообще, идея такого тестового полигона началась с того, что меня достал вечно отваливающийся @FailsBot, который я очень любил использовать для пожимания плечами ¯\_(ツ)_/¯. Но чем дальше, тем хуже и реже он работал, постоянно заставляя меня идти в закладки и копировать смайлик оттуда. Не дело! В конце концов, всё-таки это мне надоело, и, как и в случае с ботом-рандомайзером, пришлось сесть и запилить собственный вариант, допилив под личные нужды. Ох уж эти боты от программистов-одиночек, хостящиеся непонятно где, не выдерживающие нагрузок и постоянно падающие.
В общем, так и появился @textUtilsBot! На данный момент он запущен в тестовом режиме на потенциально ненадёжном серваке, проходящем практические испытания, так что никаких гарантий доступности дать не могу (я же тоже программист-одиночка, в конце концов). Функционал ещё будет допиливаться (пишите свои предложения!), языковая поддержка расширяться (пока не стоит показывать бота своим иностранным друзьям, но к полноценному релизу и официальной презентации подвезу английскую локализацию).
Отличительным моментом от остальных моих ботов является и то, что этот написан на новом стеке технологии. На смену библиотеке pyTelegramBotAPI пришла aiotg (возможно, эта тема тоже заслуживает комментария и отдельного поста), на смену полноценному самостоятельному веб-серверу и самозаверенным сертификатам — проксирование с nginx'а и помощь Cloudflare. Так как новый проект никоим образом не зависит от старого, то появилась возможность его вынести в отдельный репозиторий на GitHub'е, куда вы сможете отправлять свои issues и pull request'ы!
Подведём итоги сегодняшнего, по сути, небольшого (по меркам статей на сайте), но полноценного (по меркам здешних анонсов) поста:
▪️ #бот на #Python @textUtilsBot, работающий в экспериментально-тестовом режиме;
▪️ Исходный код: https://github.com/kozalosev/textUtilsBot