Как я разработал сервис по аренде виртуальных номеров с оборотом 2.000.000 🍋 в месяц
Делюсь о процессе разработки, что было сделано и что можно было бы добавить.
Приветствую! Меня зовут Данила Справцев, я — веб-разработчик. Специализируюсь на разработке и сопровождении веб-сервисов, онлайн-платформ и интернет-магазинов.
Я уверен, каждый сталкивался с ситуацией, когда необходим дополнительный аккаунт в мессенджере / соц. сети / банке или любом другом сервисе, требующем второго номера, которого у Вас, к сожалению, нет. Год назад ко мне обратился клиент именно с таким запросом, только находясь по другую сторону баррикад.
Запрос от клиента
Клиент занимается сдачей в аренду виртуальных номеров и хочет:
- Автоматизировать процесс аренды номера пользователем с помощью Telegram-бота (Каталог, Личный кабинет, Пополнение баланса)
- Иметь возможность администрировать систему и процессы внутри нее (Панель администрирования)
⠀
Внутренняя кухня
Из чего состоит бизнес?
Как бы странно не показалось, но не из подсчета прибыли с продаж, а из администрирования 😁
Разумеется, рано или поздно Вы обуздаете процесс, наймете сотрудников и полностью делегируете этот вопрос.
- Вы покупаете модем (о том, что это — ниже), допустим, на 32 слота
- Вставляете в него 32 симкарты
- Выбираете удобный для Вас канал продаж и формат (Сайт/Бот)
- Предоставляете услуги аренды
- Время от времени заменяете использованные симки на новые
Железки
Перед тем как мы начнем рассматривать веб-сервис, связывающий всё оборудование воедино и формирующий поле для бизнеса, пробежимся по технической составляющей, посмотрим из чего состоит проект и как все взаимосвязано.
GSM модем (Sim-банк)
Модем нужен для управления сим-картами и приему / передаче сигналов от сим / к сим до обрабатывающего устройства (компьютер, Raspberry PI)
Умеет он следующее:
- Установка сим и поддержка двух форматов (полноразмерные / micro)
- Функционирование (все, что умеет сим на Вашем телефоне) (sms/ussd/телефония)
- Горячая замена (выдергиваем сим без выключения и заменяем другой)
SMS-сервер
В том случае, когда Вы используете стандартные модемы, которые можно приобрести в рознице, проще (и дешевле) выбрать готовое решение, которое будет поддерживать Ваш модем и не заострять на этом излишнего внимания. (что и было выбрано в этом случае)
Представляет из себя приложение/локальный сайт, которое устанавливается прямо на компьютер, стоящий рядом с модемом/модемами, подключенными по USB/Ethernet.
В собранном виде выглядит вот так:
Когда на сим-карту поступает смс, она передается модему, тот обрабатывает сигнал и отправляет ее sms-серверу на компьютере, сервер принимает сообщение и с помощью вебхука отправляет его на сайт, который смотрит кто сейчас арендует эту сим-карту и присылает арендатору сообщение в телеграм.
Веб-сервис
Разобравшись во всех аспектах работы системы, перейдем наконец к самому веб-сервису, с задачей о разработке которого ко мне обратился клиент
Поскольку в качестве канала продаж был выбран Телеграм, сайт используется только для управления системой
В качестве демо-материалов, в дальнейшем я буду использовать скрины с тестовыми данными
Сим-карты
Как можно заметить, над таблицей есть кнопка «добавления SIM»
Дело в том, что процесс заведения сим в систему можно автоматизировать. Как только сим-карту вставляют в модем, она появляется в sms-сервере, а у sms-серверов есть API, позволяющее используя тот же вебхук или же вручную получить список сим, но клиент предпочел добавлять сим вручную
В таблице содержится информация о сим-картах, добавленных в систему, модеме и слоте (модема), в котором они находятся, а так же информация о текущем арендаторе
Фильтрация
Над таблицей находится блок полей для быстрого поиска необходимых номеров в системе, если убрать чекбокс «Строгого поиска», появится возможность искать по вхождению («8 999 999 99 99» можно будет найти по его части «999»)
Табличные кнопки
Процесс аренды полностью автоматизирован, но для полного контроля процесса так же дублируется возможность привязать / отвязать клиента вручную
Все «негативные» действия сопровождаются окном подтверждения, чтобы избежать случайных кликов
После того, как у номера появится арендатор, можно нажать на его имя и быстро получить необходимую информацию или же вовсе внести изменения
При добавлении / редактировании сим, администратор имеет возможность указать возможные периоды аренды номера
Помимо этого есть возможность дублировать сим, для быстрого открытия окна «Добавления сим» с заполненными полями (кроме номера)
Пользователи
У пользователей все немного поскромнее:
- Блок с полями для фильтрации с возможностью поиска по вхождению ( «Альберт» — «Аль»)
- Добавление пользователя
- Редактирование пользователя
- Изменение (пополнение / списание) баланса
- Отправить сообщение в телеграм (при нажатии на ID телеграма)
- Выдача административных прав
- Удаление пользователя
Транзакции
На странице наблюдаем уже привычный блок с полями для фильтрации
Каждая денежная операция проводится транзакцией. В зависимости от типа транзакции (списание, пополнение), к ней добавляется дополнительная информация: объект транзакции (если покупка / продление номера), платежная система (если это пополнение баланса)
Так же, транзакции имеют статус, необходимо это в основном для пополнений и работает в два этапа: пользователь собирается пополнить баланс, создается неподтвержденная транзакция, а после успешной оплаты платежная система присылает подтверждение и транзакция переходит в статус «подтвержденной»
«Необходимо это в основном для пополнений»
Помимо пополнений, статусы транзакций могут использоваться для отложенного исполнения. Например, операторы формируют «пачку» транзакций, которые переходят в исполненные только спустя время (часы/день) (но тут в этом нет нужды)
⠀
В дальнейшем, баланс пользователей формируется из суммы транзакций в системе по каждому.
Рассылка
На фоне модального окна открыта страница пользователей, с которой можно его вызвать при нажатии на ID телеграм чата пользователя
Помимо индивидуальной отправки, можно запустить рассылку по всем пользователям. В этом случае, на каждого пользователя создается задача на отправку сообщения и начинается отправка в порядке очереди, с периодической задержкой, чтобы не нарушать лимиты телеграма
Клиенту не требовалось отдельной страницы для просмотра, планирования на определенное время / дату и редактирования рассылок, поэтому у нас просто отображается прогресс активной рассылки :)
Статистика
И наконец главная страница, на которой отображаются виджеты со статистикой пополнения баланса за три периода
Если бы я делал проект для себя, с большим удовольствием добавил бы более детальную статистику, но в данном случае, клиент сообщил, что этой информации для него достаточно
Поздравляю, мы закончили с администрированием. Откуда же идут деньги, как все это продается — об этом будет следующая, завершающая глава
Телеграм бот
Бот представляет из себя каталог и имеет следующую структуру:
- Категория (страна, оператор)
- Период аренды (от 4 часов — до 1 года)
- Количество номеров к аренде (от 1 до макс. кол-ва в выбранной категории)
- Подтверждение аренды
- Получение арендованного номера(ов)
После аренды номера(ов), клиент может использовать его для получения и отправки (если выбранный номер это разрешает) сообщений
При приближении номера к концу аренды, за 3 дня, 24 часа и 2 часа до окончания, клиенту придет уведомление с предложением продлить номер
Каталог
Личный кабинет
Пополнение баланса
Для удобства пополнения баланса, сервис интегрирован с несколькими платежными системами:
- FreeKassa
- QiWi
- ЮМани
- Cryptobot (Криптовалюты)
После подтверждения оплаты платежным сервисом, пользователю придет уведомление об успешном зачислении средств
Планы на будущее
До конца зимы уже запланировано следующее обновление, в котором каталог бота разделится на «долгосрочную и краткосрочную» аренду. У пользователей появится возможность арендовать номер для единоразового приема сообщения с определенного сервиса / ресурса. Например, для регистрации аккаунта на сомнительном сайте, чтобы избежать телефонного спама в будущем
Спасибо, что дочитали эту статью до конца, если не сложно, поделитесь, как Вам такой формат кейса? Было ли интересно или наскучило уже на середине?
Я вот честно запарился ее редактировать, а ведь здесь нету ни слова о бекенде ¯\_(ツ)_/¯
Вас интересует разработка веб-сервиса («сайта») или интернет-магазина?
Напишите мне в телеграм и получите бесплатную консультацию по реализации Вашей идеи под ключ.
p.s. После публикации, некоторые некорректно поняли посыл статьи. Я никак не связан с этим бизнесом, не занимался его продвижением. Я специализируюсь исключительно на веб-разработке :)
Насколько это законно? Как это регулируется законодательством?
Насколько я знаю, подобное оборудование используют многие компании в личных целях (рассылка, звонки, спам (куда ж без него))
Точно так же они закупают сотни корпоративных сим-карт (и вряд ли часть из этих компаний раздает их сотрудникам)
Соответственно, купить и использовать такое оборудование — абсолютно законно, а вот дальше появляется НО:
Смотря для каких целей 😏
Например, если Вы планируете сдавать номера в аренду и кто-либо из арендаторов будет заниматься запрещенной на территории РФ деятельностью - могут возникнуть вопросы
В остальном примерно такая же логика, а так никак это не регулируется и вполне законно
https://www.9111.ru/questions/17302700/
Вот это очень сильно смущает, ибо очевидно тут не "если", а "когда" должно быть, вопрос лишь в том, что за это будет?
На этот вопрос вряд ли есть точный ответ)
Я последние лет 7 буквально раз в год пользуюсь подобным сервисом, он находится в топе поисковиков, примерно на 1-2 месте из поисковой выдачи Гугла и Яндекса, поэтому могу сделать вывод, что эта категория услуг не особо интересна
Не знаю ситуацию сейчас, а раньше операторы блокировали номера, если замечали их использование в SIM-шлюзах
В договоре с оператором связи наверняка указано, что номер для личного использования, тут явное нарушение.
Вообще это мутные истории, где-то рядом ходят продавцы анонимных симок для темных дел.
«Вообще это мутные истории, где-то рядом ходят продавцы анонимных симок для темных дел.»
Я согласен, но откуда-то же берутся люди у метро, раздающие симки. Понятное дело, что люди — студенты, которым нужна подработка, а вот откуда их работодатель берет огромные пачки симкарт? Однозначно они получены белым путем, иначе бы им не присваивался номер при первом выходе в сеть
Несколько лет назад в паблике (не дарквебе) открыто можно было покупать ворованные симкарты различных операторов. Тысячами, в фирменных упаковках. И совсем недорого. Были несколько случаев когда в метро брали курьеров с огромными сумками, набитыми пачками симок.
Вроде сдавать номера в аренду в таком виде - незаконно. Оператор или его агент может заключить договор, так чтобы можно было идентифицировать конечного пользователя. Но всем пофиг, по принципу "авось пронесет".
Клиент взял номер на день. Зарегал на нее ватцап. Вернул. Взял эту симку второй клиент. Пытается зарегать ватцап, номер занят. Либо начинает работать через чужую учетку в том случае, если она не заблокирована ватцапам за спам от первого клиента, либо не может использовать купленный товар по назначению. Я правильно понял проблему ?
Не совсем так.
На рынке существуют два типа сервисов аренды: краткосрочная и долгосрочная. Данный сервис работает по долгосрочному варианту, после завершения аренды клиентом номера, номер уходит в архив на несколько дней, в это время арендатор все еще может продлить его и использовать дальше, после архива номер буквально выбрасывается (физически) в корзину и заменяется другим в системе
Если бы была краткосрочная аренда, то был бы выбор сервисов, доступных для получения от них смс, после получения смс от сервиса, он помечается «просроченным» в системе и этот номер уже нельзя использовать конкретно для этого сервиса
В обоих случаях, если номер где-либо использовался, существует канал поддержки, где можно сделать возврат / замену
Вообще, для регистрации чего-либо для спама штучно скорее будут использовать краткосрочную аренду, долгосрочная же более подходящий вариант, когда нужно зарегистрировать что-нибудь (и даже несколько) и забронировать номер за собой
Как система определяет, какой именно сервис был зарегистрирован на симку?
По одному из вариантов (в зависимости от того, кто определит раньше)
Отправитель / текст сообщения / паттерн (регулярное выражение)
Сервис крутой, но клиентские кейсы представляются где-то от сдержанного порицания до самых мрачных статей УК РФ
Можно ссылку на бота?
Так вот как это работает, всегда была интересна внутрянка такого сервиса, круто, спасибо
Реально крут!
Что делаете с проблемой, когда пользователь поставил дополнительный пароль на телегу?
Ничего, это вовсе и не проблема, это один из кейсов для чего эти номера и арендуются. После завершения аренды номера выбрасываются. Я не знаю всех нюансов бизнеса этого клиента, но что-то мне подсказывает, что даже минимальная стоимость аренды покрывает стоимость этой сим
Не бизнес. Просто частный клиент взял в аренду номер, чтобы сделать для своих целей аккаунт в телеграм и поставил на него пароль. Вы такой номер потом по жалобе убираете или как?
Номер одноразовый, автор же написал. Другой клиент не получит этот номер.
Как экономика может сходиться, не понятно. Симки тоннами приходят?
Я думаю 1 симка не по одному сервису идет, а по несколько десяткам - к примеру яндекс, вк, фб и потом выбрасывается
Вы немного путаете, если сервис краткосрочной аренды, то там может быть 100, 200 сервисов, которые можно использовать на сим. И сим выбрасывается только после того, как отработает 90% популярных направлений по сервисам.
Тут же долгосрочная аренда, периоды аренды сим зачастую от 1 месяца. В статье я использую локальную версию проекта с тестовыми данными, периоды аренды в несколько часов весьма редко встретить. Обычно арендуют на месяц, 3 месяца, год
Так в том и вопрос, как эти 90% вычисляются, откуда берутся? По жалобам пользователей и потом какой-то админ идет проверять и подтверждает, что да, на этом номере кто-то из предыдущих владельцев поставил дополнительный пароль в телеге. Или как?
Вот как раз не понятен кейс. Если тебе нужен номер на год, ты вряд ли будешь его арендовывать у какого-то сервиса, который может увести твои аккаунты, которые ты с помощью него зарегал. А если на меньшее время, то это что-то неважное, какой-нибудь спам или фейковый аккаунт, который не жалко потерять. И тогда слабо верится, что заявленная выручка реальна.
Ну это уже не ко мне вопросы) Я процитировал слова автора, а как там на самом деле хз)
К тому же, чем популярнее такие сервисы, тем больше будет испорченных номеров, ведь они дальше в оборот уходят
Сервисы особо не меняют положения дел. Любые номера уходят обратно в продажу после 6 месяцев неуплаты абонентской стоимости и следующий клиент может так же столкнуться с тем, что зарегистрировал предыдущий владелец
Круто. Воспользуюсь для темных делишек. А норма прибыли какая?
Принимать оплату в лимонах 🍋 это сильно. Новый путь инвестирования в скоропорт.
Долго делали сервис?
Проект изначально заказывали как MVP, который был готов уже через 10 дней. Дальнейший функционал заказчик с периодичностью заказывает на протяжении года
А если какой-нибудь долбоеб по арендованному номеру позвонит и сообщит о бомбе?
Интересный способ борьбы с конкурентами на рынке подобных сервисов )
Насколько мне известно, номера не поддерживают возможность исходящих звонков. Некоторые поддерживают входящие звонки и исходящие сообщения. Все остальные поддерживают входящие сообщения
что-то мне кажется это не совсем законно
А как называется сервис? Как раз ищу такой для регистрации на одном сервисе для фрилансеров...
Автор или наивен как дитя или темнит. Деятельность незаконна, анонимные симки используются не для честных дел, так что автору предстоит отвечать за всё, что сделают его анонимные арендаторы или за соучастие.
А вот с краткосрочной арендой как? Человек весь день бегает меняет симки вручную что ли? И какое количество симок, они фурами что ли загружаются выгружаются? откуда вообще их столько берут, кто их поставляет? Разве они не должны быть зарегистрированы на кого-то? Какая стоимость такой симки?
И учитывая что на 2-3 сервиса может быть большой спрос, на другие - нет. Соответственно менять нужно постоянно, не используя большой части сайтов.
Есть кто разбирается в вопросе?
Где номера берутся?