NeonaFM
Как и обещала, рассказываю, как устроена архитектура моих ботов и программ. 😉
В основе большинства моих ботов — обычный сайт на WordPress и мой собственный плагин.
🤖 Сам бот — это плагин.
В нём находится вся логика: команды, настройки, обработка сообщений, подключение нужных сервисов и всё остальное, что должен уметь конкретный бот.
Почему именно плагин WordPress?
Потому что вместе с ним я сразу получаю удобную визуальную админку. Мне не нужно каждый раз лезть в код, если я хочу что-то поменять: добавить команду, отключить функцию, изменить настройки или подкрутить поведение бота. Всё нужное можно вынести в интерфейс и управлять этим прямо на сайте.
🤑Плюс сайт сразу становится местом, где доступ к этому боту можно продавать.
Например, на сайте стоит плагин самого бота и отдельно подключена система оплаты. Человек покупает доступ на сайте — после оплаты получает доступ к боту.
👩💻 То есть WordPress у меня одновременно и админка, и место, где живёт логика бота, и система управления пользователями и оплатой.
А теперь worker. 😺
Он нужен мне в тех случаях, когда бот работает, например, с OpenAI API.
Мои сайты находятся на российском хостинге, а отправлять запросы в OpenAI с российского IP нельзя. Поэтому между ботом и OpenAI нужен маленький посредник с иностранным IP.
Вот этим и занимается worker:
👉 бот → worker → OpenAI → ответ обратно боту.
Никакой логики самого бота в worker нет. Его задача — просто передать запрос туда и вернуть ответ обратно.
Раньше worker был обычной программой на моём ноутбуке. Поскольку у меня практически всегда включён VPN, программа принимала запрос от бота, отправляла его через мой VPN в OpenAI и возвращала ответ.
Минус был очевидный: выключился ноутбук или отвалился VPN — бот остался без доступа к OpenAI. 😜
Поэтому недавно мы с Лёшей перенесли эту часть в Deno.
Теперь код worker хранится у меня на GitHub, а через Deno он деплоится и постоянно работает уже на внешнем сервере с иностранным IP.
Причём у Deno есть бесплатный тариф, и для моих задач его хватает с огромным запасом — там миллион запросов в месяц.
Поэтому теперь ноутбук из этой схемы вообще исключён.
Если же сайт изначально находится на зарубежном сервере и может напрямую обращаться к OpenAI, никакой worker для этого не нужен. Бот просто отправляет запрос непосредственно в API.
То же самое с другими сервисами: если доступ к ним не требует иностранного IP — работаем напрямую. Если требует — отправляем запрос через worker.
Вот и вся архитектура. 🥹
▪️WordPress даёт мне визуальное управление ботом, пользователей и возможность прикрутить оплату.
▪️Плагин — это сам бот и вся его логика.
▪️Deno — маленький мост к сервисам, которым не нравится российский IP.
▪️GitHub — место, где теперь хранится код этого моста.
А ноутбук наконец снова стал ноутбуком, а не обязательным органом жизнеобеспечения всей моей цифровой деревни. 😄
#WordPress #OpenAI #Deno #GitHub #NeonaFM Если у вас установлено приложение,
вы можете сразу перейти в канал