Truecaller что это за программа и нужна ли она? (Android)

Доброго времени ребята Представим ситуацию, что вам на телефон звонит какой-то номер и он вам неизвестный. Тут вам нужно в течении нескольких секунд сделать выбор: брать трубку или нет. Ведь это может быть важный звонок, а может это звонит какой-то рекламный менеджер, чтобы впарить вам какую-то дичь.. Вот здесь вам поможет приложение Truecaller (Android), это мировой справочник, он содержит базу телефонов, тут реально очень много номеров.
В общем немного порылся в интернете, поискав инфу о Truecaller, я понял одно. Это приложение, которое содержит базу телефонов со всего мира и помогает вам понять кто это вам звонит. В странах СНГ это приложение не особо популярно, поэтому сможет ли оно вам реально помочь при неизвестном звонке, то это неизвестно. Во-вторых самое интересно, это контакты. Я толком не понял, контакты синхронизируются все? То есть все контакты, семья там, муж жена, все телефоны что ли отправляются на сервера Truecaller? Этот вопрос пока тоже открытый
Также вот читаю, что Truecaller не грузит процессор, в памяти телефона занимает до 40 мб, правда не понял, это имеется ввиду постоянная память (ПЗУ) или оперативная память (ОЗУ)..
Просто красивая картинка так бы сказать в тему:

Главные особенности приложения:
- можно отредактировать и как-то оформить свой контакт для отображения в общей базе;
- вы будете иметь полный доступ к общей базе, опять же, смысл в этом не совсем понятен, учитывая низкую популярность приложения в странах СНГ;
- при входящем звонке будет автоматическое определение абонента, при условии что его номер есть в базе;
- вы можете поискать в базе какой-то номер, чтобы узнать о нем дополнительную информацию;
- самое главное я узнал, смотрите, можно выбрать какие контакты вы разрешаете добавлять в базу, а какие нет; это хорошо, а то я уже подумал что приложение Truecaller автоматом все пихает в базу;
- запрос инфы о вашем номере, тут я имею ввиду рейтинг, популярность; например если вам звонит неизвестный номер, а в базе указано что это банковский номер, то понятное дело неизвестный номер этот будет иметь высокий рейтинг; правда из банка звонят редко таким образом, но это как пример;
А еще как я понял можно даже блокировать те звонки, которые вы не хотите получать, смотрите сами:

Есть какая функция Top Spammers, которая блокирует спаммеров (как я понимаю телефонных) из базы данных Truecaller. Ух ты, смотрите, там на картинке есть еще отличная функция, да, она мне реально нравится! Короче можно блокировать тех, у кого номер не определяется. Это такие шибко умные люди, типа мы звоним, но вы номер не видите наш, так что вы нам не перезвоните, мне такая мутка не нравится..
Какой вывод можно сделать, что скажете? Мое личное мнение будет таким. Приложение Truecaller больше популярно у западных стран, а у нас оно вряд ли станет популярным. Во-вторых еще интересный момент, как я понял, то оно соединяется с серверами, верно? И на это действие нужен интернет. Если не покупать какой-то интернет-пакет, то обычный интернет, ну который помегабайтный, то он будет в копеечку выходить. Ну и что мне лично не нравится, что приложение Truecaller постоянно (если я правильно понял) висит в памяти телефона, и при этом еще использует интернет время от времени. Я уже молчу о вообще самом факте сливания контактов в сеть, хоть и можно это настроить, и хоть идея здравая и имеет право на существование, но так как приложение не популярное, то пользы думаю от него мало. В общем я бы это приложение удалил. Но как? Пишут в сети что Truecaller не относится к системным приложениям, поэтому его вроде как можно удалить стандартным способом.
Вот примерно так выглядит приложение на смартфоне:

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

А вот это как я понимаю, то после установки приложения оно вам задаст такой вопрос:

Ну и еще одна картинка в тему:

А вот что будет если вам кто-то позвонит и при этом работает Truecaller:

Если присмотреться то там внизу написано Powered by Truecaller, то есть номер уже прошел через проверку по базе данных
Для удаления открываем настройки, идем в приложения, там находим Truecaller, останавливаем его, а потом нажимаем Удалить:

Далее необходимо подтвердить свои действия:

После этих действий программа должна покинуть борт телефона. Интересная особенность, ребята, вы это должны знать, короче после того вы удалили это приложение, то прикиньте, все номера телефонов которые были отправлены на сервер в базу, то все они там остаются! Прикидываете? Интересно они замутили!
Хотя я читал отзывы, что это приложение так просто не удаляется.. При этом юзеры пишут что если отключить приложение, то телефонная книга не работает. Вот такие пироги..
Также я узнал что в приложении Truecaller есть реклама и ограничение на поиск номеров в базе. И чтобы снять рекламу и убрать ограничение, то предлагается приобрести платную версию. Мда уж, нечего сказать
Вот узнал, что есть даже синхронизация с Фейсбуком. Пользуются приложением около 8 миллионов юзеров, но подчеркну, что это там, на западе, а не у нас
Ребята, вот нашел картинку, это как я понимаю разрешения для приложения и тут очень четко пишется что именно нужно приложению Truecaller:

Нашел один отзыв, чел пишет, что как ни странно, приложение спокойно определяет номера почти всех госучреждений, такси, бары, кафе, кинотеатры.. Но из частных лиц приложение никого не вычислило.. В итоге чел все таки удалил это приложение, ибо на практике пользы мало
Короче ребята, мне лично это приложение не нравится. Это только мое мнение, а вы смотрите уже. На этом все, надеюсь вам все было понятно, удачи вам
Приложение Truecaller: что это, и какие функции стоит использовать постоянно
Навязчивая реклама, спам и мошенничество по телефону стали настолько распространенными, что многие пользователи предпочитают не поднимать трубку, если звонит незнакомый номер. Но, если установить Truecaller и узнать, что это за программа, эта проблема будет решена.
Truecaller: что это за программа и нужна ли она абонентам?
Приложение — это улучшенный телефонный справочник. Он глобальный, и содержит данные о контактах со всего мира. Благодаря этому смартфон пользователя автоматически определяет, какой абонент звонит, ориентируясь на подписи номера в телефонных книгах других абонентов.
Установка и настройка Truecaller предельно простая:
- Пользователю достаточно зайти в Play Market, скачать и установить приложение;
- Все контакты из телефонной книги абонента будут добавлены в глобальное хранилище Truecaller автоматически;
- Все номера, представленные в базе, сравниваются. При обнаружении совпадений рейтинг совпавших номеров повышается.
Разобравшись, как работает Truecaller, можно приступать к использованию. Здесь все просто: если карточка контакта синяя, значит, он безопасный. Карточки, помеченные красным цветом, обычно принадлежат мошенникам и трубку поднимать не стоит.
Разобравшись, что это за программа Truecaller и как в ней зарегистрироваться, многие пользователи предпочитают не светить в приложении свой реальный номер. В данном случае рекомендуем воспользоваться услугами сервиса «SMS-man». С его помощью вы сможете купить виртуальный номер для регистрации в приложении и создать дополнительные аккаунты в программе, чтобы пользоваться всеми возможностями и функциями приложения. Рассмотрим самые популярные из них.
Truecaller запись звонков
Пользователям, которые пока не знают, что это за программа Truecaller и нужна ли она в принципе, стоит ознакомиться с такой полезной функцией, как запись звонков. Она может работать в автоматическом и ручном режиме.
В первом случае разговоры записываются автоматически. Они не хранятся в памяти смартфона, а попадают в облачное хранилище Google, хотя многие пользователи отключают эту функцию. Если вы уже установили Truecaller, как записывать разговоры вы разберетесь практически сразу: перед началом разговора или во время него нужно просто кликнуть на значок записи с правой стороны экрана.
Труколлер: как пользоваться для установки статуса
Еще одна полезная функция приложения — установка статуса абонента. Если абонент доступен для телефонных звонков, рядом с его профилем появится зеленая точка, если разговор уже идет — красная.
Когда абонент повесит трубку, приложение автоматически вышлет ему уведомление с просьбой перезвонить.
Разобравшись, что это за приложение Truecaller, стоит ознакомиться и с его дополнительными функциями. Например, абонент может внести дополнительную информацию в свою профиль, прямо в меню приложения заблокировать нежелательные контакты или осуществить поиск по номеру телефона. Также Truecaller можно синхронизировать с другими приложениями (например, WhatsApp) для совершения видео звонков.
Asterisk и Truecaller. Определение имени неизвестного абонента при входящих звонках
TrueCaller — это сервис по определению имени абонента при входящих звонках, а также блокировка спама. На смартфонах с CyanogenOS 12.1 он вшит в штатную звонилку. Также можете установить себе TrueDialler/TrueCaller с GooglePlay/AppStore/BlackBerryWorld/WindowsPhoneStore.
Если вы активировали данный функционал в вашем смартфоне, то ваша книга контактов полностью слита на сервера Truecaller’а? Проверить, есть ли ваш номер в базе можно по ссылке, например: https://www.truecaller.com/ru/74996813210 (необходима аутентификация).
На данный момент сервис насчитывает 1.6 миллиарда номеров по всему миру. Выписать свой номер из базы возможно по ссылке https://www.truecaller.com/unlist.
Прикручиваем Truecaller к Asterisk’у
На сайте Truecaller’а есть возможность определить имя абонента по номеру телефона. Вход на сайт возможен только через сторонние сервисы и социальные сети. Для аутентификации я выбрал Вконтакте (протокол Oauth).
1. Вручную войти на сайт truecaller.com, используя ранее зарегистрированную учетную запись вконтакте, разрешить доступ.
2. Необходимо создать внутреннюю БД для хранения уже однажды звонивших контактов. Это необходимо чтобы каждый раз не обращаться к сервису truecaller’а.
3. Написать скрипт прохождения аутентификации на сайте truecaller.com через сеть вконтакте, а также функцию для проверки номеров на наличие имени абонента.
Скрипт написан на PHP для удобства внедрения под AGI и общей читаемости.
Создадим БД в MySQL:
USE asterisk; CREATE TABLE asterisk.phonebook ( id int(11) NOT NULL AUTO_INCREMENT, create_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, number varchar(20) NOT NULL, name varchar(80) NOT NULL, temporary_contact tinyint(1) NOT NULL DEFAULT 1, PRIMARY KEY (id) ) ENGINE = INNODB AUTO_INCREMENT = 9 AVG_ROW_LENGTH = 8192 CHARACTER SET utf8 COLLATE utf8_general_ci;
PHP скрипт /var/lib/asterisk/agi-bin/phonebook.php (для тех кто делает через PHP-AGI, не забудьте раскомментировать соответствующие строчки, результат вы получите в переменную канала CID_NAME):
#!/usr/bin/php -q else $cookie_file='/tmp/asterisk_truecaller_vk.cookie'; $vk = array("login"=> "логин_вконтакте", "password"=> "пароль_вконтакте"); $mysql = array("hostname" => "localhost", "login"=> "root", "password"=> "пароль_mysql", "database"=> "asterisk"); if (!is_null($num)) < $callerid_name=get_num($num,$vk,$mysql,$cookie_file,true); return $callerid_name; >else < echo "Номер телефона не задан\n"; //$agi->set_variable("CID_NAME", ""); return false; > // поиск номера на сервисе truecaller function get_num($num,$vk,$mysql,$cookie_file,$isauth) < // ищем в своей базе mysql_connect($mysql['hostname'],$mysql['login'],$mysql['password']); mysql_select_db($mysql['database']) or die(mysql_error()); mysql_query("SET NAMES 'utf8'"); mysql_query("SET CHARACTER SET 'utf8'"); mysql_query("SET SESSION collation_connection = 'utf8_general_ci'"); $query = "SELECT * FROM phonebook WHERE `number`=$num"; $res = mysql_query($query); $count = mysql_num_rows($res); if ($count>0) while ($row=mysql_fetch_array($res)) < $name=$row['name']; echo "Найден контакт в MySQL '".$name."'\n"; //$agi->set_variable("CID_NAME", "$name"); return $name; > mysql_close(); // ищем в truecaller if ($isauth) < $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://www.truecaller.com/ru/'.$num ); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); $data = curl_exec($ch); curl_close($ch); if (preg_match("/You need to sign in to view the result/i", $data)) < echo "Необходима аутентификация TC\n"; $isauth = oauth_vk($vk, $cookie_file); get_num($num,$vk,$mysql,$cookie_file,$isauth); >else < preg_match("/0) < $name=$matches[1]; echo "Найден контакт в TC '".$name."'\n"; mysql_connect($mysql['hostname'],$mysql['login'],$mysql['password']); mysql_select_db($mysql['database']) or die(mysql_error()); mysql_query("SET NAMES 'utf8'"); mysql_query("SET CHARACTER SET 'utf8'"); mysql_query("SET SESSION collation_connection = 'utf8_general_ci'"); $query = "INSERT INTO phonebook (`name`,`number`) VALUE ('".$name."','".$num."')"; $res = mysql_query($query); mysql_close(); //$agi->set_variable("CID_NAME", "$name"); return $name; > else < echo "Совпадения в TC не найдены\n"; //$agi->set_variable("CID_NAME", ""); return false; > > > else < echo "Аутентификация TC не была пройдена, попробуйте в следующий раз\n"; //$agi->set_variable("CID_NAME", ""); return false; > > // авторизация через кнопку "зайти через вконтакте" function oauth_vk($vk, $cookie_file) < unlink($cookie_file); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://oauth.vk.com/authorize?client_id=4951501&scope=friends%2Coffline&redirect_uri=http%3A%2F%2Fwww.truecaller.com%2Fsign-in%2Fvk&response_type=code&state=KKoLuT0vbWEOXfqIW9C0yAvoX7uoEDszIrVOxYSr'); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); // сохранять куки в файл curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); $data = curl_exec($ch); curl_close($ch); preg_match("//i", $data, $matches); if (count($matches)>0) $action=$matches[1]; preg_match("//i", $data, $matches); if (count($matches)>0) $origin=$matches[1]; preg_match("//i", $data, $matches); if (count($matches)>0) $ip_h=$matches[1]; preg_match("//i", $data, $matches); if (count($matches)>0) $lg_h=$matches[1]; preg_match("//i", $data, $matches); if (count($matches)>0) $to=$matches[1]; if (isset($action) && isset($origin) && isset($ip_h) && isset($lg_h) && isset($to)) < $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $action ); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, array( '_origin'=>$origin, 'ip_h'=>$ip_h, 'lg_h'=>$lg_h, 'to'=>$to, 'email'=>$vk['login'], 'pass'=>$vk['password'] )); $data = curl_exec($ch); curl_close($ch); preg_match('/Location: (http\:\/\/www\.truecaller\.com\/sign\-in\/vk\?code\=.+)\&state.+/', $data, $matches); if (count($matches)>0) $location=$matches[1]; if (isset($location)) < $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $location); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); $data = curl_exec($ch); curl_close($ch); if (preg_match("/\Signed In \| Truecaller\/i", $data)) < echo "Аутентификация VK пройдена успешно\n"; return true; >else < echo "Ошибка при прохождении авторизации через VK / не найдена строка о успешной авторизации\n"; return false; >> else < echo "Ошибка при прохождении авторизации через VK / переменная location не получена\n"; return false; >> else < echo "Ошибка при прохождении авторизации через VK / не все переменные получены action='".$action."', origin='".$origin."', ip_h='".$ip_h."', lg_h='".$lg_h."', to='".$to."'\n"; return false; >> ?>
У меня диалплан на LUA, поэтому в extensions.lua:
local call = <> call.cid_num = channel["CALLERID(num)"]:get() call.cid_name = "" -- ищем телефонный номер в базе local handle = io.popen("/var/lib/asterisk/agi-bin/phonebook.php "..call.cid_num) local founded_name = handle:read("*a") handle:close() app.Noop(founded_name) _, _, call.cid_name = string.find(founded_name,"Найден%sконтакт%sв.+%s'(.+)'") channel["CALLERID(name)"]:set(call.cid_name)
В данном скрипте нет учета блокировки спам контактов. Данная статья описана как «обзорная» по возможности интеграции столь чудесного сервиса Truecaller с вашей PBX.
Приложение Truecaller: что это за программа и нужна ли она на Андроид?
Программный продукт Truecaller для операционной системы Android предназначен для определения номера при входящих звонках, блокирования нежелательных вызовов от пользователей из черного списка или с неидентифицируемыми номерами. Приложение включает в себя информационную базу по телефонному списку со всего мира и помогает отсеять спам-звонки или нежелательные звонки других пользователей.

По заявленной на официальном сайте Truecaller информации, количество активных пользователей приложения превышает 200 миллионов человек, а число заблокированных номеров — свыше 10 биллионов.
В числе функций программного продукта Truecaller:
- редактирование личного контакта для отображения в базе данных, используемой для этого определения;
- автоматическое распознавание номера входящего звонка при условии наличия его в приложении;
- поиск дополнительной информации по любому вызову, существующему в базе программы;
- опция отображения рейтинга звонков абонента, определяемого по собственной методике Truecaller.
Вышеперечисленное свидетельствует о том, что приложение становится практически бесполезным при работе с вызовами с номеров, не входящих в онлайн-базу Truecaller. Это одна из причин низкой популярности программы на постсоветском пространстве, в основном она используется в зарубежных странах.

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

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