<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>OneSwitch — блог</title><link>https://oneswitch.ru/blog/</link><description>Сайты, веб-приложения, Telegram-боты и Mini App, интеграции, парсинг, 1С и AI-агенты. Делаю системы, которые работают без присмотра.</description><language>ru</language><item><title>Уведомления в Telegram Mini App: как слать пуши через бота</title><link>https://oneswitch.ru/blog/uvedomleniya-v-telegram-mini-app/</link><guid isPermaLink="true">https://oneswitch.ru/blog/uvedomleniya-v-telegram-mini-app/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>У Mini App нет собственных пушей: уведомления приходят как сообщения бота, а писать пользователю можно только после его запуска бота или запроса разрешения requestWriteAccess. Чтобы открыть нужный экран, используйте кнопку web_app или прямую ссылку с параметром startapp. Пользователей, заблокировавших бота, нужно отмечать и не беспокоить.</description></item><item><title>Telegram-бот на n8n: inline-кнопки, меню и кнопка для открытия Mini App</title><link>https://oneswitch.ru/blog/telegram-bot-n8n-knopki-menu-mini-app/</link><guid isPermaLink="true">https://oneswitch.ru/blog/telegram-bot-n8n-knopki-menu-mini-app/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>В n8n бот строится из Telegram Trigger, ветвления по типу события и узла отправки. Нажатия inline-кнопок приходят как callback_query и требуют ответа. Кнопку, открывающую Mini App, проще отправить через HTTP Request, а у бота может быть только один webhook.</description></item><item><title>Сколько стоит Telegram-бот и Mini App: из чего складывается цена</title><link>https://oneswitch.ru/blog/skolko-stoit-telegram-bot-i-mini-app/</link><guid isPermaLink="true">https://oneswitch.ru/blog/skolko-stoit-telegram-bot-i-mini-app/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Цена бота зависит от сценариев, интеграций и числа ролей, цена Mini App ещё и от интерфейса, API и данных. Простой бот стоит заметно меньше каталога с подписками. Экономия достигается запуском минимальной версии и ясным описанием задачи.</description></item><item><title>Распознавание УПД в 1С из фото и PDF: облако или локальный ИИ</title><link>https://oneswitch.ru/blog/raspoznavanie-upd-v-1s-chem-zagruzit-dokumenty/</link><guid isPermaLink="true">https://oneswitch.ru/blog/raspoznavanie-upd-v-1s-chem-zagruzit-dokumenty/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Если поставщик работает через ЭДО, документ лучше загружать из XML, а не распознавать. Для бумажных и сканированных документов выбирают между облачным OCR и локальной моделью ИИ: локальная нужна, когда цены и ИНН нельзя отправлять наружу. Любой способ нужно проверять на 20–30 ваших реальных документах.</description></item><item><title>Проверка initData в Telegram Mini App на Python: код и ошибки</title><link>https://oneswitch.ru/blog/proverka-initdata-telegram-mini-app-python/</link><guid isPermaLink="true">https://oneswitch.ru/blog/proverka-initdata-telegram-mini-app-python/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>initData из Mini App нужно проверять на сервере: секрет вычисляется как HMAC-SHA256 токена бота с ключом WebAppData, затем сравнивается подпись строки данных. Обязательны сравнение через compare_digest и проверка auth_date, чтобы отсечь подделку и старые данные.</description></item><item><title>Отправка сообщений из 1С в Telegram: код, chat_id и подводные камни</title><link>https://oneswitch.ru/blog/otpravka-soobshchenij-iz-1s-v-telegram/</link><guid isPermaLink="true">https://oneswitch.ru/blog/otpravka-soobshchenij-iz-1s-v-telegram/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Для уведомлений из 1С нужны бот, токен и вызов метода sendMessage через HTTPСоединение. Главная сложность в том, чтобы привязать пользователя 1С к его chat_id, а не в самом коде отправки. Токен нельзя хранить в тексте модуля, а отправку лучше выносить в фоновое задание.</description></item><item><title>Обмен 1С с сайтом: HTTP-сервис или OData, авторизация и частые ошибки</title><link>https://oneswitch.ru/blog/obmen-1s-s-sajtom-http-servis-odata/</link><guid isPermaLink="true">https://oneswitch.ru/blog/obmen-1s-s-sajtom-http-servis-odata/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Для обмена сайта с 1С есть два пути: стандартный интерфейс OData для простого чтения и записи объектов и собственный HTTP-сервис для своей логики. Базу нельзя открывать в интернет напрямую: нужен прокси с ограничениями, отдельный пользователь с узкой ролью и обмен с повторами и защитой от дублей.</description></item><item><title>n8n webhook: как защитить и принимать данные с сайта без дублей</title><link>https://oneswitch.ru/blog/n8n-webhook-zashchita-avtorizaciya/</link><guid isPermaLink="true">https://oneswitch.ru/blog/n8n-webhook-zashchita-avtorizaciya/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Webhook в n8n по умолчанию открыт всем, поэтому его нужно закрыть: Header Auth или Basic Auth в узле, ограничение по IP на прокси и проверка данных. Сайту отвечают сразу, а тяжёлую обработку выполняют после ответа, и каждый запрос несёт уникальный идентификатор для защиты от повторов.</description></item><item><title>Распознавание накладных в 1С без облака: УПД и ТОРГ-12 из фото</title><link>https://oneswitch.ru/blog/lokalnoe-raspoznavanie-dokumentov-v-1s/</link><guid isPermaLink="true">https://oneswitch.ru/blog/lokalnoe-raspoznavanie-dokumentov-v-1s/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Накладную из фото можно превратить в заполненный документ 1С за 30–60 секунд. Локальная модель ИИ работает на компьютере клиента, поэтому цены, ИНН и поставщики не уходят на сторонние серверы.</description></item><item><title>llms.txt: пример файла, формат и чек-лист для сайта</title><link>https://oneswitch.ru/blog/llms-txt-primer-formata/</link><guid isPermaLink="true">https://oneswitch.ru/blog/llms-txt-primer-formata/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>llms.txt — это текстовый файл в корне сайта в формате Markdown: заголовок, краткое описание и списки ссылок на главные страницы с пояснениями. Он помогает языковым моделям быстро понять сайт, но не заменяет sitemap и разметку, и гарантий использования не даёт. Файл удобно генерировать из тех же данных, что и сайт.</description></item><item><title>Каталог в Telegram Mini App: архитектура API, фильтры и подписки</title><link>https://oneswitch.ru/blog/katalog-v-telegram-mini-app-arhitektura/</link><guid isPermaLink="true">https://oneswitch.ru/blog/katalog-v-telegram-mini-app-arhitektura/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Каталог в Mini App строится на трёх частях: API с фильтрами и пагинацией, проверка пользователя по initData и воркер подписок, который сопоставляет новые объекты с сохранёнными критериями и шлёт уведомления через бота. Одна база и один API питают и сайт, и Mini App.</description></item><item><title>Защита от дублей в автопостинге: ключ, ON CONFLICT и очередь</title><link>https://oneswitch.ru/blog/dedup-v-avtoposting-n8n-postgresql/</link><guid isPermaLink="true">https://oneswitch.ru/blog/dedup-v-avtoposting-n8n-postgresql/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Дубли убирают на уровне базы, а не сценария: каждому предложению присваивают уникальный ключ и вставляют его через ON CONFLICT DO NOTHING. Очередь на отправку забирают с FOR UPDATE SKIP LOCKED, а статусы new, sending и sent позволяют безопасно повторять любой шаг.</description></item><item><title>Автопостинг в Telegram на n8n и PostgreSQL: схема конвейера</title><link>https://oneswitch.ru/blog/avtoposting-v-telegram-n8n-postgresql/</link><guid isPermaLink="true">https://oneswitch.ru/blog/avtoposting-v-telegram-n8n-postgresql/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Конвейер автопостинга состоит из пяти шагов: сбор данных, хранение, подготовка, очередь и публикация с проверкой. n8n связывает шаги, PostgreSQL хранит состояние и защищает от дублей.</description></item><item><title>Aviasales API на Python: цены на авиабилеты через Travelpayouts</title><link>https://oneswitch.ru/blog/aviasales-travelpayouts-api-na-python/</link><guid isPermaLink="true">https://oneswitch.ru/blog/aviasales-travelpayouts-api-na-python/</guid><pubDate>Fri, 30 Oct 2026 09:00:00 +0000</pubDate><description>Data API Travelpayouts отдаёт кэшированные цены из поисков Aviasales, а не живой поиск. Для цен по датам и направлению хватает одного GET-запроса с токеном в заголовке. Главные риски: данные могут устареть или отсутствовать для редких маршрутов, поэтому цену нужно показывать как «от» и перепроверять по ссылке.</description></item><item><title>Telegram Mini App или сайт: что выбрать для каталога</title><link>https://oneswitch.ru/blog/telegram-mini-app-ili-sajt/</link><guid isPermaLink="true">https://oneswitch.ru/blog/telegram-mini-app-ili-sajt/</guid><pubDate>Thu, 29 Oct 2026 09:00:00 +0000</pubDate><description>Mini App удобен там, где аудитория уже в Telegram и нужны подписки и уведомления. Сайт нужен для поиска и SEO. Лучше всего работает связка: сайт привлекает, Mini App удерживает.</description></item><item><title>llms.txt и GEO: как подготовить сайт к ответам нейросетей</title><link>https://oneswitch.ru/blog/llms-txt-i-geo-seo-dlya-nejrosetej/</link><guid isPermaLink="true">https://oneswitch.ru/blog/llms-txt-i-geo-seo-dlya-nejrosetej/</guid><pubDate>Wed, 28 Oct 2026 09:00:00 +0000</pubDate><description>GEO — это подготовка сайта к ответам нейросетей. На практике это микроразметка Schema.org, llms.txt, понятная структура статей с кратким ответом в начале и открытый доступ для ИИ-ботов в robots.txt.</description></item><item><title>Сколько стоит сайт и автоматизация: из чего складывается цена</title><link>https://oneswitch.ru/blog/skolko-stoit-sajt-i-avtomatizaciya/</link><guid isPermaLink="true">https://oneswitch.ru/blog/skolko-stoit-sajt-i-avtomatizaciya/</guid><pubDate>Tue, 27 Oct 2026 09:00:00 +0000</pubDate><description>Цена зависит от объёма, числа интеграций, сложности данных и требований к надёжности. Начать выгоднее с минимального рабочего варианта и развивать его по результатам использования.</description></item></channel></rss>
