Как стать автором
Обновить

Комментарии 75

Интересно, а код оператора сохранится при переносе номера или нет?
В это вся соль — теперь код телефона не будет однозначно привязан к оператору.
Конечно, иначе он может совпасть с существующим с другим кодом
НЛО прилетело и опубликовало эту надпись здесь
У меня чистый белый цвет — ни каких связных!
На скриншоте пример, когда все затраты присутствуют — по факту цветов может быть меньше и полосы растянуты по-разному.
К сожалению, вы неверно истолковали мой сарказм.
Прошло почти два часа после запуска — квадаратики всё бегают.
Напишите пожалуйста в суппорт ios@drtariff.com, обязательно проверим в чем дело.
Да, это подозрительно.

> Чем вы можете помочь проекту? Вместе мы сила!

Путин вам в помощь.
Мы не лезем в политику. Наша цель сделать рынок сотовых услуг прозрачным. Мы рассчитываем на поддержку пользователей в этом движении.
Украина появится когда-нибудь?
Мы готовы сотрудничать с коллегами с Украины. Пока предложений не было, а у нас ресурсов пока не хватит.
Наше приложение на базе Android анализирует данные о профиле общения напрямую из смартфона и подбирает оптимальный тариф, исходя из базы более, чем 2000 тарифов по всем регионам РФ.

Озвучьте критерии оптимальности, пожалуйста.
Все просто — у каждого тарифа есть своя матрица расценок. Мы перемножаем кол-во звонков (SMS, трафика) на цены с учетом округлений, направления звонков и других специальных условий и получаем оценку затрат за месяц на выходе. По ней сравниваем различные тарифы. Опции тоже скоро появятся — пока начали с интернета.
Я бы вам посоветовал не использовать слова, смысла которых вы не понимаете. Простите, но из-за этого ваша статья выглядит как анекдот.
Это Вы о каких словах? Матрица? Я магистр по физике. Остальные слова стандартные в бизнесе, смысл которых я более чем понимаю.
Вы не понимаете, что такое «оптимальный» и так и не озвучили критерии оптимальности. Фраза «подбирает оптимальный тариф» говорит о том, что вы не в курсе, что «оптимальных тарифов» может быть несколько (гуглить парето фронт). Ну и т.д.

В тексте несколько раз встречается слова «оптимизатор» и «оптимальный», причем употребляются они не к месту. Подобный стиль обычно характерен для дамских журналов, в которых авторы любят нагнать псевдонаучной туфты на впечатлительных женщин.
Вы не понимаете, что оптимизация может производиться по-разному. Мы оптимизируем по множеству тарифов, а не параматров общения. Из моего ответа это следует. Парето фронт тут не в кассу — функция полезности каждого пользователя индивидуальна и предсказать ее даже оператор не сможет — максимум эмирическую модель составит.

Вместо дамских журналов рекомендую Вам ознакомиться с основами маркетинга. Мы не rocket science занимаемся, если Вы не заметили.
Идея шикарная. Если приложение станет сильно популярным, это может существенно понизить цены сотовой связи :) Ну и скрытых расходов будет меньше :)
Спасибо) Борьба за клиента должна быть за счет предоставления большей ценности, а не маркетинговых манипуляций.
МТС — не подходит пароль. Попробовал через вэб-интерфейс МТС, все ок, пароль проходит.
Напишите нам через приложение на ios@drtariff.com Мы проверим в чем дело и поправим ошибку.
А где хранится база данных портированных номеров?
Заливается на аппарат или каждый раз запрашивается ваш сервер и определение оператора при звонке (к примеру, входящем) работает только в 3G сетях (в 2G сети невозможно одновременно звонить и передавать данные).
Каждый раз обращаться к серверу будет долго и ресурсоемко. Мы будем периодически обновлять базу номеров в приложении. еще думаем над тем, какую архитектуру для этого выбрать — проще всего приложение перезаливать в Google Play.
Ох, только не это.
Новые портированные номера будут появляться каждый день и база будет стремительно устаревать.
Обновлять приложение каждую неделю в маркете в течении даже нескольких месяцев — уже перебор, а у вас обновление станет вечным.

Самый правильный, как мне кажется, вариант — периодически получать обновления с сервера.
Период опроса задаётся в настройках приложения, минимальный период — каждые сутки.
Приложение передаёт серверу «номер версии» (скорее дату последнего обновления), в ответ получает заранее подготовленный файл с обновлениями. Инкрементальные обновления можно хранить на сервере, к примеру, за последний месяц и пересчитывать каждый сутки (после обновления вашей собственной копии БДПН).
Если же приложение обновлялось слишком давно (и инкрементальных обновлений для него уже нет) или ещё не загружало данные — передать полную базу.
Как-то так…
Что-то я не то сказал)
Запрашивать ежедневно данные при десятках тысяч ежедневных переходов будет есть прилично трафик и батарею. Скорее всего пойдем по сценарию загрузки номеров, на которые осуществляются звонки.
Какой трафик? Какая батарея??
Пусть будет 50.000 обновлений в сутки, это максимум 22 байта на абонента с учётом кода оператора, кода региона и статуса (добавление/удаление записи), при передаче в чистом тексте — это всего 1 мегабайт ОЧЕНЬ ХОРОШО сжимаемых данных, GZIP легко сожмёт такой поток в ~10 раз.
Итого — 100-200kb данных в сутки для постоянного обновления списка портированных номеров по всей сети.
Изначальная загрузка для ~10M абонентов (через сколько лет такое будет?) по такому же алгоритму даст 21Mb трафика — тяжеловато, но вполне допустимо.
Получается сотни килобайт данных ежедневно. При отсутствии безлимитного интернета или подключения к Wi-Fi это создаст заметные траты.

Основная проблема здесь — очень большой размер данных в приложении. Исходный мегабайт данных в структурированном виде и наличии индексов займет около 5Мб памяти приложений. Каждый день данные приложения будут увеличиваться на 5Мб, а это почти 2Гб за первый год работы. Немногие владельцы даже топовых телефонов могут позволить это.

Сохранение этих данных в базу данных с учетом оптимизаций и переписывания кода с использованием NDK занимает десятки секунд на топовых телефонах и будет съедать десятые доли процента аккумулятора ежедневно. На более старых моделях с меньшей энергоэффективностью процессора и меньшим аккумулятором данное значение достигнет нескольких процентов от батареи ежедневно.
По объёму — давайте не путать тёплое с мягким.
Думаю, более 150-200 Mb индексированный список портированных абонентов в первые 1-2 года MNP занимать точно не будет.
А подбор тарифа осуществляется на основе данных за весь период полученных данных?
Приложение показывает самый выгодный тариф для меня — международный, за 111 рублей в месяц. Хотя я трачу не более 100 в месяц.

И да, приложение как-нибудь отслеживает и обрабатывает кредит доверия? Или же эти 80 рублей считаются как затраты итоговые (соответственно искажается картина трат).
На Android по умолчанию 2 месяца берется. На iOS сейчас за весь период.
Оптимизатор работает без привязки к изменениям баланса. А вот в затратах за месяца действительно кредит доверия вносит ошибку. Там же есть специальное сообщение каждый раз, которое приходит при использовании КД?
Есть. Билайн, последнее сообщение:
Вам временно предоставлено 80 руб. Пополните счет по 01-NOV-13

Отправитель Beeline, сумма различная, зависит от потраченных денег за определенный период.
Спасибо, подумаем как это отсекать.
Вам спасибо за данное приложение :)
Начинание хорошее, но картинка… Я в ней вижу сговор корпоративного чиновника с грязными намерениями и зеленого монстра из игры dr. Mario олицетворяющего силовые структуры и выражения их лиц ничего хорошего мне не сулят)
Интересная игра воображения :)
Наоборот, мы вместе будем делать рынок сотовых услуг прозрачней. А форма это к тому, что грядет войнушка операторов весной)
НЛО прилетело и опубликовало эту надпись здесь
:) Это просто счетчик переходов, интегрированный с flurry.com.
DrTariff попробовал ваше приложение и с печалью обнаружил, что ваше приложение отправляет пароль от моего личного кабинета себе на сервер и еще хранит его там. Зачем он вам? Пользователя хорошо бы об этом уведомить.

п.2 почему вы не храните пароль на устройстве?

зачем ваш сервис заходит в личный кабинет после удаления приложения?

Версия iPhone

Разработка системы входа в ЛК оператора потребует существенно больших усилий программистов для реализации на iPhone. Функция входа будет постоянно устаревать и ее нужно оперативно обновлять с сервера. Процесс обработки детализации(определение региона и оператора для каждой смс и звонка) на сервере с core i7 занимает около минуты и требует большой по объему базы данных (через год после MNP около 2 Гб). Вообщем реализация всего функционала на устройстве возможна, но крайне проблемна и затратна. К тому же в принципе невозможно реализовать обновление баланса на иконке, которое мы планируем в скором времени добавить.
iOS не дает информацию о том, что приложение удалено, соответственно при проверке баланса возможны входы, надо учесть этот момент. Спасибо!
А это уже совсем грусть.
Подумайте над простым фактом — оператор может обнаружить большой объём подключений с одного IP адреса по абонентам из разных регионов и просто заблокировать ваш IP. А возможно — посчитать что данные абонентов утекли на сторону (хотя фактически так оно и есть) и поблокировать таким абонентам доступ в личный кабинет.
Ну и ещё один довод — у операторов может быть беспарольный вход в личный кабинет в случае доступа через сеть передачи данных самого оператора.

Опять же моё imho, самый правильный вариант:
1. Хранение пароля только на мобильнике пользователя
2. Приложение запрашивает базовый набор действий у вашего сервера (скажем, URL для авторизации и список URL'ов для выкачивания), скачивает данные, и потом их отдаёт серверу на анализ
3. Сервер возвращает приложению результат анализа

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

1. Это можно, но как Вы будете техподдержку осуществлять? Лучше сделаем возможность удалять его полностью. Сейчас можно установить новый пароль.
2а. На iPhone нет фоновых процессов, поэтому весь процесс заказа детализации, ожидания и закачки будет происходить при открытом браузере — ожидание может занять несколько часов. В случае, если ЛК временно недоступен мы не сможем автоматически перезапросить данные через Х часов.
2б. Только у Билайн беспарольный вход в ЛК через свою сеть. Детализацию все равно нужно будет отправлять на какой-то почтовый адрес.
2в. Технически в разы сложнее реализовать такую схему и при поддержке всплывет еще ряд подводных камней.
2г. Мы хотим обновлять баланс в приложении в фоне, поэтому модель с паролем в телефоне не работает.
3. В идеале договориться с операторами об отдельном API, но это уже на следующей стадии.

Александр, это не эмоции, а мнение человека, который хоть и отдалённо, но имеет отношение к IT безопаности и не очень отдалённое к сотовым операторам. Вы автор приложения, вам и решать прислушиваться к таким мнениям или нет.

1. Доступ в личный кабинет позволяет подключать платные услуги и делать много опасных вещей от имени абонента.
Вы готовы отдать свою банковскую карточку и PIN код от неё кому-то для «анализа ваших расходов»?
Думаю нет.
2. Просто напишите в поддержку операторов вопрос «Мы тут собираем пароли от личного кабинета абонентов и от их имени запрашиваем данные. Так ведь можно?», и, думаю, получите практически мгновенную блокировку ваших IP адресов с которых происходит сбор информации.
3. Передача паролей на сторону скорее всего противоречит условиям договора между абонентом и оператором.

Это я всё к чему — начинание действительно очень интересное.
То что у iPhone'а нет фоновых задач — действительно печально :(
Ну а по поводу «договориться с операторами» — тут особой проблемы нет. Если клиент (вы?) готов оператору оплатить его затраты на реализацию нового функционала, то договориться можно. А «просто бесплатно отдайте нам вот такое API» — утопия.

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

это не эмоции

Вы себе противоречите.
Зачем минусовать каждый мой ответ?

Мы уже в курсе, что Вы работаете в Билайн. И Ваше мнение сложно назвать нейтральным в данном случае.
К Вашему экспертному сведению существую не один проект с сотнями тысяч пользователей, который работает с банковскими карточками и делает этот самый «анализ расходов» (mint.com, simple.com, personalfinances.ru). Да, я готов делиться своими данными, если я доверяю сервису. За пол-года после запуска приложения на Android было не мало паникеров, но мы честно выполняем свою работу и никому ничего не подключаем.

Вы автор приложения, вам и решать прислушиваться к таким мнениям или нет.

Я же Вам ответил, что текнически такую архитектуру нельзя реализовать. Вы не слышите? Я лично только ЗА, но нужно использовать те инструменты, что есть и двигаться вперед.

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

Мы уже в курсе, что Вы работаете в Билайн. И Ваше мнение сложно назвать нейтральным в данном случае.

Я не имею никакого отношения ни к личному кабинету ни к биллингу, поэтому просто поверьте на слово — мнение нейтрально.

За пол-года после запуска приложения на Android было не мало паникеров, но мы честно выполняем свою работу и никому ничего не подключаем.

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

Спасибо за доверие.
Мы постоянно работаем над повышением безопасности сервиса. Детали смогу позже озвучить. То, что пароль будет хранится только на смартфоне конечно безопасней, но все равно не полная защита.
Как минимум наши пользователи будут оповещены в случае угрозы такого взлома.
Владимир, ну вот во всем вам видятся происки конкурентов. Наоборот, хотел бы сказать вам «спасибо», потому что вы снова подняли волну интереса к этой тематике, и у нас тоже резко выросло количество пользователей.
Александр, извините, что Владимиром назвал в пред. коменте. Заработался… Видимо, навеяло сюжетом с Путиным )
Здорово. Готовьтесь к цунами)
Оно ещё и пароли забирает? Это провал. Хорошо, что на iOS приложение даже не запускается с ошибкой подключения к интернету (как 3G, так и Wi-Fi). В отличие от конкурентов нет даже веб-версии. Ещё эта антиреклама политическая. Кстати, на опсосов ваше приложение повлияет как же, как эппла напрягает ётафон :)
Без Вашего троллинга эта статья была бы неполноценной.
Веб-версия в разработке.
По поводу устаревания входа в ЛК — года 4 назад решал подобную задачу путем передачи с сервера инструкций для авторизации.
Как только вендоры что-то меняют у себя по авторизации — я у себя на сервере обновляю инструкции, а приложение обращается к моему серверу за ними.
В итоге пользовательские данные хранятся у пользователя, а перебои в работе приложения минимальны. Все счастливы и довольны.
При авторизации с айфона запрашивал инструкции со своего сервера, а по ним уже выполнял авторизацию на внешнем сервисе.
В моем случае это был набор регулярок для парсинга страницы и команды типа «отправить запрос», «распарсить ответ».
Если грамотно подойти к реализации, то может получиться вполне гибкое решение.
Того приложения уже нет в appstore.
Разработка системы входа в ЛК оператора потребует существенно больших усилий программистов для реализации на iPhone. Функция входа будет постоянно устаревать и ее нужно оперативно обновлять с сервера.

1. Такое ощущение, что при входе выполняются определение его телефона в положении числа pi. А не простых 2-3 POST запроса — которые как шаблон можно загружать с сервера. А дальше сессию уже передавать серверу (не знаю если привязка ip к сессии).
2. Еще возможно сделать галку — сохранять пароль на сервере. Если она выбрана, используется текущий алгоритм. Если нет — запрос с логином и паролем отправляется на сервер (но сервером не сохраняется) и передается в личный кабинет. Логин и пароль не хранится.

Это называется забота о пользователи и его конфиденциальности. Пользователи это любят.

Процесс обработки детализации(определение региона и оператора для каждой смс и звонка) на сервере с core i7 занимает около минуты и требует большой по объему базы данных (через год после MNP около 2 Гб).

Данный анализ не может более 5 СЕКУНД занимать. У вас база не 100ГБ, а всего 2 — оптимизируйте hardware часть — возьмите доп. 2 ГБ оперативной памяти и загоните базу в память (она же у Вас статичная?) и поиск будет идти в разы быстрее.

iOS не дает информацию о том, что приложение удалено, соответственно при проверке баланса возможны входы, надо учесть этот момент. Спасибо!

Смотрите, что пользователь уже 2(1) месяца не открывал ваше приложение, значит оно ему больше не интересно и запросы можно не делать. Запустил — делаем запрос.

Теперь немного лирики (я думаю из-за нее у Вас столько минусов)…
Сейчас Ваш проект молод и денег возможно не приносит, а кушать хочется, хостер требует денег на сервер (с core i7). Программисты и того хуже, требуют предоплаты. А монетизация проекта еще не началась и съедается все ваше свободное время.

В какой-то момент вы понимаете — что оно вас достало, «глупые» пользователи еще и отрицательные отзывы пишут, минусы ставят. А у Вас уже 200-400 тыс логинов и паролей от их личных кабинетов. И тут приходит открытие — они на мне миллиарты миллионы экономя, а мне и копейки не платят. Подпишу ка я их на платную рассылку 30 руб. в месяц не много, они в разы больше в appstore покупают. И после математических исследований — 300 000 * 30 = 9 000 000 руб. 50% мне отдадут — вот 4.5 млн. прибыли в месяц. Каян уже можно брать в кредит. А пользователь поймет и пожалуется? так он же сам пароль свой отдал. и мобильный оператор ему объяснит — что сам дурак.

Даже если вы об этом не думаете или никогда не подумаете, если такие плохие редиски — хакеры. Они вроде с головой и математикой дружат и при возможно профите в 100 000$ — проведут самый полный аудит вашего сервера и по, но вот результаты могут и не сообщить.
Вы можете сменить пароль и запросы баланса перестанут отправляться.
Мы продолжаем продвигается за счет «сарафанного радио», поэтому будем крайне благодарны, если расскажете о нас своим друзьям!

Пока не стОит — слишком сыро прямо со старта (на iPhone).
Как пишут в первых же камментах аппстора — чистый белый экран сразу после запуска.
Телефон выключил экран, я разблокировал телефон — появились бегающие квадратики.
Сколько ждать?
Если не придираться к грамотности построения фразы — «Загрузка зависит от скорости интернет-соединения», всё равно остаётся вопрос — где прогресс этой самой загрузки?? Если понятно, что процесс загрузки не быстрый, то где хотя бы разбавляющее скуку слайд-шоу в стиле установки Windows/Ubuntu? Ну и — скорость соединения у меня — десятки мегабит — вы мне в айфон гигабайты закачиваете или скорость загрузки таки зависит и от состояния и вашего сервера и канала до него?
Сервер мог быть временно перегружен. Попробуйте сейчас или напишите нам в техподдержку ios@drtariff.com
Написал.
Сейчас открылось сразу после запуска.
Что то после перехода на новый nexus появилась проблема с приложением (до этого на galaxy nexus все было прекрасно). Постоянно приходят смс с номера 000100 с балансом, подскажете как быть?

P.S. Никаких антивирусов и прочего, описанного у вас в faq нет.
P.P.S. За час пришло около 20 сообщений.
О, коллега по несчастью :) Я пытался разобраться примерно месяц. Оказалось, что Dr.Tariff регулярно шлет СМС с запросом баланса — даже во время разговора. Эта настройка почему-то по умолчанию включена и появилась с каким-то обновлением. Я уже все уши прожужжал МТС-у про глюки на их стороне, а потом нашел эту настройку. Суммарно пришло где-то 600 сообщений.
Вероятно на нем Kit Kat стоит. Google посчитал, что выпилить USSD-запросы мало и решил все SMS-ки слать через 1 приложение в телефоне. Теперь «бесшумных» сообщений на нем нет. Мы встроили правило выключать отправку SMS-запросов в случае наличия 3 SMS во входящих — странно, что оно на сработало. Написал Вам в личку.
Хэнгаут стоит (он же теперь по умолчанию), а вот о том что можно отключать уведомления не знал, спасибо. Посмотрим что из этого выйдет.
Вчера поставил. Почти сразу снес. Статистику программа собрала, предложила тарифы. Но у меня прямой номер, настроек под это нет совсем, тарифы были предложены без учета этого.
А так идея неплохая.
Владельцы прямых номеров не совсем наша ЦА. Статисика в любом случае поможет лучше понять сколько Вы общаетесь по разным направлениями и подобрать более выгодный тариф.
ошибка на iPhone 6.1.3. что делать?
инет подключен и работает.
image
Есть вероятность, что в Вашей Wi-Fi сети закрыты порты, которое использует приложение. Попробуйте мобильный интернет или другую сеть.
Может быть я чего-то не понимаю, но для чего использовать в web api иные порты, кроме 80го?
Ответил в личку
всё заработало само. тупо прошло время :)
Полгода слежу за проектом, но некоторые необходимые мелочи до сих пор никак не добавляются:
1. Актуальность тарифов. Новый мегафоновский Всё Включено не обновлялся 2 месяца, недавно обновился но с неправильными тарифами, например на Все Включено S Москва стоимость минуты сверх 400 минут в месяц — 1.6р а не 1р как пишется у вас.
2. Детализации моих разговоров на примере нового тарифа. Я хочу видеть откуда вязалась эта расчётная цифра 847р/месяц. То есть в таблице видеть не только направления и стоимость, но и рядом количество моих минут и мою стоимость.
3. Куда-то пропало итоговое количество минут (со стоимостью) и разбивка по операторам. В разбивке дни недели/дни месяца вижу, а суммарно за выбранный период (как в sms) — не вижу. Так же не итоговых цифр по интернету (ну это хоть в самом андроиде дублируется).
4. Обновление вкладки «подходящие тарифы» при повторной разблокировке экрана. Зачем?
5. Не появилось возможности определять приложение, через которое был сделан звонок? Чтобы исключить SIP звонки и считать отдельно тот же мультифон.
1. Мы сейчас обновляем базу тарифов. До этого были другие задачи, связанные с выходом iPhone-версии.
2. В Москве расчетная цифра бьется на направления. Для отображения количества минут по каждому направлению нет места — не забывайте про малые экраны.
3. Все на месте, откройте вкладку «Графики». Стоимости никогда не было — в минутах и количестве звонков отображение.
4. Так стоит по умолчанию в Android.
5. Мы уже тестируем такой функционал.
2. Место можно найти как внизу под каждой строчкой, так и с помощью горизонтального свайпа.
Где бъётся по нарпавлениям — не вижу. Android, нажимаю сейчас на Все Включено S — вижу «абонентская плата 390р, минуты 141р, смс 106р, интернет 210р». Зачем пишется интернет 210р, если гигабайт уже включен в эти 390р? Да и смс 100 штук тоже включены. Да и почему пишется 106 за смс, если я отправлял не более 5-7смс в месяц. Вот поэтому и хочется увидеть расшифровку с подставленными моими данными на предлагаемых тарифах, чтобы увидеть где там намудрено и где неправильно считается.

3. Точно, в круговом графике пишется количетсво минут по операторам. Но стоимость тоже не помешает.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий