VibeCoderzVibeCoderz

Конспекты

Смарт-конспекты YouTube-видео — ключевые идеи и инсайты без необходимости смотреть часовые ролики

Все конспекты
📝 Конспект2026/11/02

Open SMS: Как превратить Android-смартфон в бесплатный SMS-шлюз для ваших приложений

Пошаговый гайд по созданию бесплатного SMS-шлюза на Android с помощью Open SMS. Настройка сервера, API-ключей и отправка SMS через cURL.

Содержание (6)+
📝

Смарт-конспект

Open SMS: кратко о главном

🎯 О чём этот конспект: Пошаговое руководство по созданию собственного локального SMS-шлюза на базе Android-смартфона с помощью open-source решения Open SMS. Вы узнаете, как поднять легковесный HTTP API сервер прямо на телефоне, настроить права доступа в Android и отправлять SMS-уведомления и OTP-коды через обычные API-запросы без подписки на платные сервисы уровня Twilio.

👤 Кому будет полезно: Разработчикам, вайбкодерам и создателям пет-проектов/MVP, которым требуется отправка SMS-сообщений или OTP-авторизация без ежемесячных расходов на сторонние провайдеры.

✨ Что получите: Полностью рабочий автономный SMS API сервер на обычном смартфоне с SIM-картой, готовый принимать POST-запросы из вашего бэкенда, n8n-сценариев или скриптов.


1. Обход системных ограничений Android для запуска SMS-шлюза

Контекст: Большинство облачных провайдеров (например, Twilio) взимают заметную плату за каждое отправленное SMS, что невыгодно для пет-проектов или локального тестирования. Приложение Open SMS превращает смартфон с действующей SIM-картой в API-сервер. Однако современные версии Android блокируют установку сторонних APK и выдачу критических разрешений (доступ к отправке SMS) для приложений не из Google Play Store. Чтобы шлюз заработал, необходимо корректно обойти защиту Google Play Protect и активировать доступ к ограниченным настройкам (Restricted Settings).

Тайминг: , ,

Выгода: Экономия 100% бюджета на SMS-провайдерах за счет использования пакета SMS вашего мобильного оператора.

Как применить:

  • Шаг 1: Скачивание APK — GitHub Releases] — Перейдите в репозиторий проекта Open SMS, откройте раздел Releases и загрузите последний релизный файл .apk на Android-устройство.
  • Шаг 2: Временное отключение Google Play Protect — Google Play Store] — Откройте Play Store, нажмите на иконку профиля в правом верхнем углу, перейдите в Play Protect -> иконка шестерёнки (Настройки) -> отключите ползунок Сканирование приложений с помощью Play Защиты (Turn off) и подтвердите действие отпечатком пальца.
  • Шаг 3: Установка и базовые разрешения — Файловый менеджер] — Запустите установку скачанного APK-файла. При первом запуске выдайте разрешение на показ уведомлений — это критично, так как сервер должен работать в режиме Foreground Service и не закрываться системой.
  • Шаг 4: Разблокировка ограниченных настроек (Restricted Settings) — Настройки Android] — Зажмите иконку приложения Open SMS на рабочем столе и выберите О приложении (App Info) (или перейдите в Настройки -> Приложения -> Open SMS). Нажмите на три вертикальные точки в правом верхнем углу и выберите Разрешить ограниченные настройки (Allow restricted settings), подтвердив действие биометрией.
  • Шаг 5: Выдача прав на отправку SMS — Настройки Android] — В меню О приложении перейдите в пункт Разрешения (Permissions) -> SMS и переключите статус на Разрешить (Allow).

Результат: Приложение Open SMS установлено и имеет все системные привилегии для фоновой работы и прямой отправки текстовых сообщений через SIM-карту.


2. Конфигурация, генерация токена и запуск локального API-сервера

Контекст: После получения системных прав приложение готово к работе в качестве HTTP-сервера. Для защиты вашего шлюза от несанкционированного доступа снаружи предусмотрена авторизация по Bearer-токену (API-ключу). Сервер настраивается буквально в пару кликов: можно изменить дефолтный порт, включить автозапуск службы при старте приложения и в реальном времени отслеживать входящие HTTP-запросы через встроенный журнал логов.

Тайминг: , ,

Выгода: Безопасный доступ к отправке SMS по API с защитой авторизационным токеном и встроенной диагностикой ошибок без необходимости подключать телефон к компьютеру через ADB.

Как применить:

  • Шаг 1: Настройка порта и автозапуска — Open SMS] — В интерфейсе приложения перейдите в меню настроек. При необходимости измените стандартный порт HTTP-сервера (по умолчанию используется стандартный свободный порт). При необходимости активируйте опцию Auto start API server when it is launched для автоматического старта службы при каждом запуске программы.
  • Шаг 2: Генерация API-ключа — Open SMS] — Нажмите кнопку Start Server на главном экране (или перейдите в раздел генерации ключа в настройках). При первом запуске приложение предложит сгенерировать мастер-ключ. Нажмите Generate — сгенерированный токен автоматически скопируется в буфер обмена.
  • Шаг 3: Сохранение ключа — Мессенджер / Заметки] — Сохраните полученный Bearer-токен в надежное место (например, отправьте в сохраненные сообщения или файл .env вашего бэкенд-проекта).
  • Шаг 4: Запуск сервера и проверка логов — Open SMS] — Нажмите Start Server. Откройте боковое меню (гамбургер-меню слева вверху) и выберите раздел Logs. Здесь будут фиксироваться все сетевые события: IP-адрес клиента, попытки авторизации, статус доставки SMS и ошибки.

Результат: На смартфоне поднят активный HTTP-сервер, готовый обрабатывать сетевые запросы в локальной сети по защищенному токену.


3. Интеграция шлюза: отправка SMS через cURL и обработка статусов

Контекст: Смартфон и клиентское устройство (ноутбук, сервер разработки, локальный микросервис) должны находиться в одной локальной сети (например, подключены к одному Wi-Fi роутеру). Для интеграции достаточно отправить стандартный HTTP POST запрос с JSON-телом, передав номер получателя, текст сообщения и заголовок авторизации Authorization: Bearer <API_KEY>. При неверном ключе сервер мгновенно возвращает ошибку 401 Unauthorized и логирует IP источника.

Тайминг: , ,

Выгода: Простая интеграция с любым языком программирования (Node.js, Python, Go, PHP) или no-code платформами (n8n, Make) за 2 минуты через базовый HTTP-клиент.

Как применить:

  • Шаг 1: Определение локального IP-адреса телефона — Настройки Wi-Fi Android] — Перейдите в свойства текущего Wi-Fi соединения на смартфоне и посмотрите назначенный IP-адрес (например, 192.168.1.50).
  • Шаг 2: Тестовый запрос с проверкой авторизации — Терминал / Bash] — Отправьте тестовый cURL-запрос с неверным токеном, чтобы убедиться в работе механизма безопасности:
curl -X POST http://192.168.1.50:8080/send-sms \
  -H "Authorization: Bearer invalid_token_123" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "+79991234567",
    "message": "Тест безопасности"
  }'

Ответ сервера: 401 Unauthorized. В логах приложения на телефоне появится запись Authentication failed from IP <IP_ноутбука>.

  • Шаг 3: Отправка боевого SMS-сообщения — Терминал / Bash] — Подставьте реальный Bearer-токен, сгенерированный в приложении, и отправьте запрос:
curl -X POST http://192.168.1.50:8080/send-sms \
  -H "Authorization: Bearer ВАШ_СГЕНЕРИРОВАННЫЙ_API_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "+79991234567",
    "message": "Ваш код авторизации: 8492"
  }'
  • Шаг 4: Верификация доставки — Open SMS / Телефон получателя] — Проверьте логи в приложении Open SMS (статус изменится на успешный Authenticated & SMS Sent) и убедитесь в фактическом получении SMS на целевом устройстве.

Результат: Рабочий пайплайн отправки SMS напрямую с вашего ПК или бэкенда через Android-устройство.


Open SMS: ответы на частые вопросы

В: Как отправлять SMS с удаленного сервера в продакшене, если телефон находится дома за NAT?

О: Для проброса локального порта телефона во внешнюю сеть можно использовать бесплатные туннели, например Cloudflare Tunnel (cloudflared), ngrok, Tailscale или подключить телефон к общей виртуальной сети через WireGuard. После этого вы сможете отправлять POST-запросы на публичный URL туннеля из любой точки мира.

В: Требуются ли Root-права для работы Open SMS?

О: Нет, Root-права не нужны. Приложение использует стандартные API операционной системы Android для отправки SMS (SmsManager) и создания Foreground Service. Требуется лишь вручную выдать разрешение на Restricted Settings в настройках Android.

В: Будет ли сервер засыпать при выключенном экране смартфона?

О: Сервер работает как Foreground Service (с постоянным уведомлением в шторке), что предотвращает его выгрузку системой. Однако для стабильности рекомендуется в настройках Android отключить оптимизацию батареи (Battery Optimization -> Unrestricted) для приложения Open SMS.

В: Сколько сообщений в секунду можно отправлять через такой шлюз?

О: Скорость отправки ограничена возможностями радиомодуля смартфона и мобильного оператора (обычно 1 сообщение в 1–3 секунды). Для массовых рассылок решение не предназначено, так как оператор может временно заблокировать SIM-карту за спам. Для OTP-кодов и системных уведомлений производительности более чем достаточно.

В: Планируется ли поддержка отправки SMS через USB-модемы на Linux/Windows?

О: Да, автор проекта упомянул, что в дальнейших планах есть расширение экосистемы Open SMS для работы на настольных ОС (Linux и Windows) с подключенными GSM/LTE-модемами.

В: Безопасно ли отключать Google Play Protect при установке?

О: Google Play Protect блокирует любые сторонние APK, запрашивающие права на отправку SMS, в целях защиты от вредоносного ПО. Поскольку Open SMS — это проект с открытым исходным кодом, вы можете изучить его код на GitHub. После успешной установки и настройки приложения Play Protect можно включить обратно.


Open SMS: инструменты и ссылки из видео

  • Open SMS — репозиторий с открытым исходным кодом и установочными APK-файлами Android-сервера для отправки SMS по API — упомянут в видео (GitHub Releases).
  • Twilio — коммерческий облачный провайдер коммуникационных API (упомянут в качестве платной альтернативы) — упомянут в видео.

Конспект создан на основе видео «Self-Host Your Own SMS API Server using Android Phone» канала автора проекта. Все права на оригинальный материал принадлежат авторам. Источник: https://www.youtube.com/watch?v=wNXH_3onjfg

Редактор конспекта

Максим Наговицын

Маркетинг-стратег, IT-предприниматель, ментор по вайбкодингу

10+ лет в маркетинге, 300+ клиентских проектов: сайты, реклама, боты. Создатель GoBanana (228K+ пользователей, 11.6 млн ₽ выручки) и VibeCoderz. Делаю AI-продукты сам через Claude Code, Cursor, Windsurf и консультирую тех, кто хочет так же.

Об авторе →
Все конспекты

Источник

КаналOpen SMS Creator
Конспект добавлен2026/11/02
Смотреть на YouTube