{"id":14276,"url":"\/distributions\/14276\/click?bit=1&hash=721b78297d313f451e61a17537482715c74771bae8c8ce438ed30c5ac3bb4196","title":"\u0418\u043d\u0432\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0432\u0430\u0440 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0443 \u0431\u0435\u0437 \u0431\u0438\u0440\u0436\u0438","buttonText":"","imageUuid":""}

Как я разработал сервис по аренде виртуальных номеров с оборотом 2.000.000 🍋 в месяц

Делюсь о процессе разработки, что было сделано и что можно было бы добавить.

Статистика пополнений баланса

Приветствую! Меня зовут Данила Справцев, я — веб-разработчик. Специализируюсь на разработке и сопровождении веб-сервисов, онлайн-платформ и интернет-магазинов.

Я уверен, каждый сталкивался с ситуацией, когда необходим дополнительный аккаунт в мессенджере / соц. сети / банке или любом другом сервисе, требующем второго номера, которого у Вас, к сожалению, нет. Год назад ко мне обратился клиент именно с таким запросом, только находясь по другую сторону баррикад.

Запрос от клиента

Клиент занимается сдачей в аренду виртуальных номеров и хочет:

  1. Автоматизировать процесс аренды номера пользователем с помощью Telegram-бота (Каталог, Личный кабинет, Пополнение баланса)
  2. Иметь возможность администрировать систему и процессы внутри нее (Панель администрирования)

Внутренняя кухня

Из чего состоит бизнес?

Как бы странно не показалось, но не из подсчета прибыли с продаж, а из администрирования 😁

Разумеется, рано или поздно Вы обуздаете процесс, наймете сотрудников и полностью делегируете этот вопрос.

После делегирования вопросов администрирования
  • Вы покупаете модем (о том, что это — ниже), допустим, на 32 слота
  • Вставляете в него 32 симкарты
  • Выбираете удобный для Вас канал продаж и формат (Сайт/Бот)
  • Предоставляете услуги аренды
  • Время от времени заменяете использованные симки на новые

Железки

Перед тем как мы начнем рассматривать веб-сервис, связывающий всё оборудование воедино и формирующий поле для бизнеса, пробежимся по технической составляющей, посмотрим из чего состоит проект и как все взаимосвязано.

GSM модем (Sim-банк)

Модем нужен для управления сим-картами и приему / передаче сигналов от сим / к сим до обрабатывающего устройства (компьютер, Raspberry PI)

Умеет он следующее:

  • Установка сим и поддержка двух форматов (полноразмерные / micro)
  • Функционирование (все, что умеет сим на Вашем телефоне) (sms/ussd/телефония)
  • Горячая замена (выдергиваем сим без выключения и заменяем другой)
Фото: Aliexpress. Sim-банк на 32 слота. На фото можно увидеть, что в него вставлены "карточки" — это сим карты, в том формате, в котором они обычно продаются. (Пластиковая карточка, из которой можно выковырять сим-карту и использовать в телефоне)

SMS-сервер

В том случае, когда Вы используете стандартные модемы, которые можно приобрести в рознице, проще (и дешевле) выбрать готовое решение, которое будет поддерживать Ваш модем и не заострять на этом излишнего внимания. (что и было выбрано в этом случае)

Представляет из себя приложение/локальный сайт, которое устанавливается прямо на компьютер, стоящий рядом с модемом/модемами, подключенными по USB/Ethernet.

Фото: Google. Панель управления SMS-сервером (пример готового решения)

В собранном виде выглядит вот так:

Фото: Google
Схема работы

Когда на сим-карту поступает смс, она передается модему, тот обрабатывает сигнал и отправляет ее sms-серверу на компьютере, сервер принимает сообщение и с помощью вебхука отправляет его на сайт, который смотрит кто сейчас арендует эту сим-карту и присылает арендатору сообщение в телеграм.

Webhook (вебхук) — это способ оповещения о произошедшем в системе событии с помощью вызовов по HTTP

Осторожно, начинаю показывать лонгрид из скринов

Веб-сервис

Разобравшись во всех аспектах работы системы, перейдем наконец к самому веб-сервису, с задачей о разработке которого ко мне обратился клиент

Поскольку в качестве канала продаж был выбран Телеграм, сайт используется только для управления системой

В качестве демо-материалов, в дальнейшем я буду использовать скрины с тестовыми данными

Сим-карты

Панель управления: страница сим-карт

Как можно заметить, над таблицей есть кнопка «добавления SIM»
Дело в том, что процесс заведения сим в систему можно автоматизировать. Как только сим-карту вставляют в модем, она появляется в sms-сервере, а у sms-серверов есть API, позволяющее используя тот же вебхук или же вручную получить список сим, но клиент предпочел добавлять сим вручную

API (Application Programming Interface) — это набор способов и правил, по которым различные программы общаются между собой и обмениваются данными.

В таблице содержится информация о сим-картах, добавленных в систему, модеме и слоте (модема), в котором они находятся, а так же информация о текущем арендаторе

Фильтрация

Над таблицей находится блок полей для быстрого поиска необходимых номеров в системе, если убрать чекбокс «Строгого поиска», появится возможность искать по вхождению («8 999 999 99 99» можно будет найти по его части «999»)

Табличные кнопки

Процесс аренды полностью автоматизирован, но для полного контроля процесса так же дублируется возможность привязать / отвязать клиента вручную

Все «негативные» действия сопровождаются окном подтверждения, чтобы избежать случайных кликов

Страница сим: модальное окно «выбора клиента» для сим
Страница сим: модальное окно «выбора периода аренды» для сим

После того, как у номера появится арендатор, можно нажать на его имя и быстро получить необходимую информацию или же вовсе внести изменения

Страница сим: модальное окно «просмотр и редактирование клиента» привязанного к сим

При добавлении / редактировании сим, администратор имеет возможность указать возможные периоды аренды номера

Страница сим: модальное окно «добавления / редактирования» для сим

Помимо этого есть возможность дублировать сим, для быстрого открытия окна «Добавления сим» с заполненными полями (кроме номера)

Пользователи

Страница пользователей

У пользователей все немного поскромнее:

  • Блок с полями для фильтрации с возможностью поиска по вхождению ( «Альберт» — «Аль»)
  • Добавление пользователя
  • Редактирование пользователя
  • Изменение (пополнение / списание) баланса
  • Отправить сообщение в телеграм (при нажатии на ID телеграма)
  • Выдача административных прав
  • Удаление пользователя
Модальное окно «редактирование пользователя». Идентичное тому, что было на странице сим-карт

Транзакции

Страница транзакций

На странице наблюдаем уже привычный блок с полями для фильтрации

Каждая денежная операция проводится транзакцией. В зависимости от типа транзакции (списание, пополнение), к ней добавляется дополнительная информация: объект транзакции (если покупка / продление номера), платежная система (если это пополнение баланса)

Так же, транзакции имеют статус, необходимо это в основном для пополнений и работает в два этапа: пользователь собирается пополнить баланс, создается неподтвержденная транзакция, а после успешной оплаты платежная система присылает подтверждение и транзакция переходит в статус «подтвержденной»

Содержание скрыто
Показать


«Необходимо это в основном для пополнений»

Помимо пополнений, статусы транзакций могут использоваться для отложенного исполнения. Например, операторы формируют «пачку» транзакций, которые переходят в исполненные только спустя время (часы/день) (но тут в этом нет нужды)

В дальнейшем, баланс пользователей формируется из суммы транзакций в системе по каждому.

Рассылка

Модальное окно «отправки сообщений» и «проведения рассылки»

На фоне модального окна открыта страница пользователей, с которой можно его вызвать при нажатии на ID телеграм чата пользователя

Помимо индивидуальной отправки, можно запустить рассылку по всем пользователям. В этом случае, на каждого пользователя создается задача на отправку сообщения и начинается отправка в порядке очереди, с периодической задержкой, чтобы не нарушать лимиты телеграма

Клиенту не требовалось отдельной страницы для просмотра, планирования на определенное время / дату и редактирования рассылок, поэтому у нас просто отображается прогресс активной рассылки :)

Все страницы: в меню отображается прогресс текущей рассылки

Статистика

Главная страница: статистика пополнений

И наконец главная страница, на которой отображаются виджеты со статистикой пополнения баланса за три периода

Если бы я делал проект для себя, с большим удовольствием добавил бы более детальную статистику, но в данном случае, клиент сообщил, что этой информации для него достаточно

Видео: ChartJS Пример идеальной главной страницы для меня
Фото: ChartJS Или хотя бы график в разрезе недели-месяца 

Поздравляю, мы закончили с администрированием. Откуда же идут деньги, как все это продается — об этом будет следующая, завершающая глава

Как выглядит администратор со стороны

Телеграм бот

Бот представляет из себя каталог и имеет следующую структуру:

  • Категория (страна, оператор)
  • Период аренды (от 4 часов — до 1 года)
  • Количество номеров к аренде (от 1 до макс. кол-ва в выбранной категории)
  • Подтверждение аренды
  • Получение арендованного номера(ов)

После аренды номера(ов), клиент может использовать его для получения и отправки (если выбранный номер это разрешает) сообщений

При приближении номера к концу аренды, за 3 дня, 24 часа и 2 часа до окончания, клиенту придет уведомление с предложением продлить номер

Каталог

Приобретение 2 виртуальных номеров одной страны 

Личный кабинет

Продления арендованного номера из личного кабинета 

Пополнение баланса

Пополнение баланса

Для удобства пополнения баланса, сервис интегрирован с несколькими платежными системами:

  • FreeKassa
  • QiWi
  • ЮМани
  • Cryptobot (Криптовалюты)

После подтверждения оплаты платежным сервисом, пользователю придет уведомление об успешном зачислении средств

Планы на будущее

До конца зимы уже запланировано следующее обновление, в котором каталог бота разделится на «долгосрочную и краткосрочную» аренду. У пользователей появится возможность арендовать номер для единоразового приема сообщения с определенного сервиса / ресурса. Например, для регистрации аккаунта на сомнительном сайте, чтобы избежать телефонного спама в будущем

Спасибо, что дочитали эту статью до конца, если не сложно, поделитесь, как Вам такой формат кейса? Было ли интересно или наскучило уже на середине?

Я вот честно запарился ее редактировать, а ведь здесь нету ни слова о бекенде ¯\_(ツ)_/¯

Что Вы прочитали / Что можно было бы еще рассказать 

Вас интересует разработка веб-сервиса («сайта») или интернет-магазина?

Напишите мне в телеграм и получите бесплатную консультацию по реализации Вашей идеи под ключ.

p.s. После публикации, некоторые некорректно поняли посыл статьи. Я никак не связан с этим бизнесом, не занимался его продвижением. Я специализируюсь исключительно на веб-разработке :)

0
42 комментария
Написать комментарий...
Robert Takaev

Насколько это законно? Как это регулируется законодательством?

Ответить
Развернуть ветку
progerdan
Автор

Насколько я знаю, подобное оборудование используют многие компании в личных целях (рассылка, звонки, спам (куда ж без него))
Точно так же они закупают сотни корпоративных сим-карт (и вряд ли часть из этих компаний раздает их сотрудникам)

Соответственно, купить и использовать такое оборудование — абсолютно законно, а вот дальше появляется НО:

Смотря для каких целей 😏

Например, если Вы планируете сдавать номера в аренду и кто-либо из арендаторов будет заниматься запрещенной на территории РФ деятельностью - могут возникнуть вопросы

В остальном примерно такая же логика, а так никак это не регулируется и вполне законно

https://www.9111.ru/questions/17302700/

Ответить
Развернуть ветку
Robert Takaev
Например, если Вы планируете сдавать номера в аренду и кто-либо из арендаторов будет заниматься запрещенной на территории РФ деятельностью - могут возникнуть вопросы

Вот это очень сильно смущает, ибо очевидно тут не "если", а "когда" должно быть, вопрос лишь в том, что за это будет?

Ответить
Развернуть ветку
progerdan
Автор

На этот вопрос вряд ли есть точный ответ)

Я последние лет 7 буквально раз в год пользуюсь подобным сервисом, он находится в топе поисковиков, примерно на 1-2 месте из поисковой выдачи Гугла и Яндекса, поэтому могу сделать вывод, что эта категория услуг не особо интересна

Ответить
Развернуть ветку
Mikhail Shamov

Не знаю ситуацию сейчас, а раньше операторы блокировали номера, если замечали их использование в SIM-шлюзах

Ответить
Развернуть ветку
Barone Rosso

В договоре с оператором связи наверняка указано, что номер для личного использования, тут явное нарушение.
Вообще это мутные истории, где-то рядом ходят продавцы анонимных симок для темных дел.

Ответить
Развернуть ветку
progerdan
Автор

«Вообще это мутные истории, где-то рядом ходят продавцы анонимных симок для темных дел.»

Я согласен, но откуда-то же берутся люди у метро, раздающие симки. Понятное дело, что люди — студенты, которым нужна подработка, а вот откуда их работодатель берет огромные пачки симкарт? Однозначно они получены белым путем, иначе бы им не присваивался номер при первом выходе в сеть

Ответить
Развернуть ветку
Barone Rosso

Несколько лет назад в паблике (не дарквебе) открыто можно было покупать ворованные симкарты различных операторов. Тысячами, в фирменных упаковках. И совсем недорого. Были несколько случаев когда в метро брали курьеров с огромными сумками, набитыми пачками симок.

Ответить
Развернуть ветку
Ренат Ренатович

Вроде сдавать номера в аренду в таком виде - незаконно. Оператор или его агент может заключить договор, так чтобы можно было идентифицировать конечного пользователя. Но всем пофиг, по принципу "авось пронесет".

Ответить
Развернуть ветку
Валентин Потапов

Клиент взял номер на день. Зарегал на нее ватцап. Вернул. Взял эту симку второй клиент. Пытается зарегать ватцап, номер занят. Либо начинает работать через чужую учетку в том случае, если она не заблокирована ватцапам за спам от первого клиента, либо не может использовать купленный товар по назначению. Я правильно понял проблему ?

Ответить
Развернуть ветку
progerdan
Автор

Не совсем так.
На рынке существуют два типа сервисов аренды: краткосрочная и долгосрочная. Данный сервис работает по долгосрочному варианту, после завершения аренды клиентом номера, номер уходит в архив на несколько дней, в это время арендатор все еще может продлить его и использовать дальше, после архива номер буквально выбрасывается (физически) в корзину и заменяется другим в системе

Если бы была краткосрочная аренда, то был бы выбор сервисов, доступных для получения от них смс, после получения смс от сервиса, он помечается «просроченным» в системе и этот номер уже нельзя использовать конкретно для этого сервиса

В обоих случаях, если номер где-либо использовался, существует канал поддержки, где можно сделать возврат / замену

Вообще, для регистрации чего-либо для спама штучно скорее будут использовать краткосрочную аренду, долгосрочная же более подходящий вариант, когда нужно зарегистрировать что-нибудь (и даже несколько) и забронировать номер за собой

Ответить
Развернуть ветку
AeternaMens

Как система определяет, какой именно сервис был зарегистрирован на симку?

Ответить
Развернуть ветку
progerdan
Автор

По одному из вариантов (в зависимости от того, кто определит раньше)

Отправитель / текст сообщения / паттерн (регулярное выражение)

Ответить
Развернуть ветку
Alexander

Сервис крутой, но клиентские кейсы представляются где-то от сдержанного порицания до самых мрачных статей УК РФ

Ответить
Развернуть ветку
Rikkous

Можно ссылку на бота?

Ответить
Развернуть ветку
Vladislav P

Так вот как это работает, всегда была интересна внутрянка такого сервиса, круто, спасибо

Ответить
Развернуть ветку
Бобков Максон

Реально крут!

Ответить
Развернуть ветку
progerdan
Автор
Ответить
Развернуть ветку
Aleksandr Matveev

Что делаете с проблемой, когда пользователь поставил дополнительный пароль на телегу?

Ответить
Развернуть ветку
progerdan
Автор

Ничего, это вовсе и не проблема, это один из кейсов для чего эти номера и арендуются. После завершения аренды номера выбрасываются. Я не знаю всех нюансов бизнеса этого клиента, но что-то мне подсказывает, что даже минимальная стоимость аренды покрывает стоимость этой сим

Ответить
Развернуть ветку
Aleksandr Matveev

Не бизнес. Просто частный клиент взял в аренду номер, чтобы сделать для своих целей аккаунт в телеграм и поставил на него пароль. Вы такой номер потом по жалобе убираете или как?

Ответить
Развернуть ветку
Марк Кац

Номер одноразовый, автор же написал. Другой клиент не получит этот номер.

Ответить
Развернуть ветку
Aleksandr Matveev

Как экономика может сходиться, не понятно. Симки тоннами приходят?

Ответить
Развернуть ветку
се ля ви

Я думаю 1 симка не по одному сервису идет, а по несколько десяткам - к примеру яндекс, вк, фб и потом выбрасывается

Ответить
Развернуть ветку
progerdan
Автор

Вы немного путаете, если сервис краткосрочной аренды, то там может быть 100, 200 сервисов, которые можно использовать на сим. И сим выбрасывается только после того, как отработает 90% популярных направлений по сервисам.

Тут же долгосрочная аренда, периоды аренды сим зачастую от 1 месяца. В статье я использую локальную версию проекта с тестовыми данными, периоды аренды в несколько часов весьма редко встретить. Обычно арендуют на месяц, 3 месяца, год

Ответить
Развернуть ветку
Aleksandr Matveev

Так в том и вопрос, как эти 90% вычисляются, откуда берутся? По жалобам пользователей и потом какой-то админ идет проверять и подтверждает, что да, на этом номере кто-то из предыдущих владельцев поставил дополнительный пароль в телеге. Или как?

Ответить
Развернуть ветку
Aleksandr Matveev

Вот как раз не понятен кейс. Если тебе нужен номер на год, ты вряд ли будешь его арендовывать у какого-то сервиса, который может увести твои аккаунты, которые ты с помощью него зарегал. А если на меньшее время, то это что-то неважное, какой-нибудь спам или фейковый аккаунт, который не жалко потерять. И тогда слабо верится, что заявленная выручка реальна.

Ответить
Развернуть ветку
Марк Кац

Ну это уже не ко мне вопросы) Я процитировал слова автора, а как там на самом деле хз)

Ответить
Развернуть ветку
Aleksandr Matveev

К тому же, чем популярнее такие сервисы, тем больше будет испорченных номеров, ведь они дальше в оборот уходят

Ответить
Развернуть ветку
progerdan
Автор

Сервисы особо не меняют положения дел. Любые номера уходят обратно в продажу после 6 месяцев неуплаты абонентской стоимости и следующий клиент может так же столкнуться с тем, что зарегистрировал предыдущий владелец

Ответить
Развернуть ветку
SS

Круто. Воспользуюсь для темных делишек. А норма прибыли какая?

Ответить
Развернуть ветку
Pafu Off

Принимать оплату в лимонах 🍋 это сильно. Новый путь инвестирования в скоропорт.

Ответить
Развернуть ветку
Alex Kod

Долго делали сервис?

Ответить
Развернуть ветку
progerdan
Автор

Проект изначально заказывали как MVP, который был готов уже через 10 дней. Дальнейший функционал заказчик с периодичностью заказывает на протяжении года

Ответить
Развернуть ветку
Nick

А если какой-нибудь долбоеб по арендованному номеру позвонит и сообщит о бомбе?

Ответить
Развернуть ветку
AeternaMens

Интересный способ борьбы с конкурентами на рынке подобных сервисов )

Ответить
Развернуть ветку
progerdan
Автор

Насколько мне известно, номера не поддерживают возможность исходящих звонков. Некоторые поддерживают входящие звонки и исходящие сообщения. Все остальные поддерживают входящие сообщения

Ответить
Развернуть ветку
Николай Самойлов

что-то мне кажется это не совсем законно

Ответить
Развернуть ветку
Sasha Lander

А как называется сервис? Как раз ищу такой для регистрации на одном сервисе для фрилансеров...

Ответить
Развернуть ветку
Konstantin

Автор или наивен как дитя или темнит. Деятельность незаконна, анонимные симки используются не для честных дел, так что автору предстоит отвечать за всё, что сделают его анонимные арендаторы или за соучастие.

Ответить
Развернуть ветку
Mibo

А вот с краткосрочной арендой как? Человек весь день бегает меняет симки вручную что ли? И какое количество симок, они фурами что ли загружаются выгружаются? откуда вообще их столько берут, кто их поставляет? Разве они не должны быть зарегистрированы на кого-то? Какая стоимость такой симки?
И учитывая что на 2-3 сервиса может быть большой спрос, на другие - нет. Соответственно менять нужно постоянно, не используя большой части сайтов.

Есть кто разбирается в вопросе?

Ответить
Развернуть ветку
Cryptoto

Где номера берутся?

Ответить
Развернуть ветку
39 комментариев
Раскрывать всегда