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. Однако лишь немногие из них соответствуют этой цели. Итак, если бы нам нужно было выбрать лучшее приложение для идентификации вызывающего абонента для Android, мы бы выбрали TrueCaller без колебаний.
Подготовить TrueCaller Теперь самые популярные приложения для определения и определения номера вызывающего абонента доступны для смартфонов Android. У него есть бесплатные и премиальные планы. Премиум-план предлагает некоторые расширенные функции, а бесплатная версия ограничена идентификацией и управлением звонками.
Мы говорим о TrueCaller, потому что компания недавно запустила новую функцию записи разговоров для тех, у кого есть базовая учетная запись. До этого функция записи разговоров была доступна только пользователям. TrueCaller Премиум.
После нового обновления те, кто пользуется бесплатной версией Настоящий звонящий Записывайте звонки на свой смартфон. Однако единственный критерий — смартфон должен работать под управлением Android 5.1 и выше.
Вы можете использовать Truecaller для записи звонков вручную и настроить приложение на автоматическую запись всех звонков. Итак, если вы заинтересованы в настройке автоматической записи звонков на Truecaller, то вы читаете правильное руководство для этого.
Шаги по настройке и использованию функции записи разговоров в Truecaller
В этой статье мы поделимся с вами пошаговым руководством по настройке автоматической записи звонков на Truecaller для Android. Давайте разберемся.
-
Прежде всего, зайдите в Google Play Store и установите последнюю версию Настоящий звонящий.
Разработчик: TrueCaller
Цена: Бесплатное


Вам также может быть интересно увидеть: Топ-10 приложений для записи разговоров на Android в 2023 году
Вот и все, вот как вы можете настроить автоматическую запись звонков в приложении. TrueCaller.
Вам также может быть интересно узнать о:
- 18 лучших приложений для записи звонков для Android в 2022 году
- 10 лучших приложений для изменения голоса для телефонов Android в 2022 году
- Как изменить свое имя в True Caller
- 10 лучших бесплатных приложений для записи голоса для Android в 2022 году
Мы надеемся, что эта статья поможет вам узнать, как настроить и использовать эту функцию. Запись звонков на Truecaller. Поделитесь с нами своим мнением и опытом в комментариях.
Truecaller – что это такое
Каждый раз, когда звонит неизвестный номер, мы стоим перед выбором: брать трубку или нет? Ведь люди устают от постоянных рекламных кампаний, социальных опросов и агрессивных продаж. С другой стороны, существует вероятность пропустить важный и нужный звонок. Для решения подобных проблем было создано специальное приложение Truecaller. Что это за программа и как ей пользоваться рассмотрим ниже.
Truecaller – что это
Truecaller – это мобильное приложение на Android, которое представляет собой глобальный телефонный справочник с информацией о популярных контактах. С ее помощью смартфон идентифицирует практически все номера телефонов, с которых вам звонят.

После того, как приложение было установлено на устройство, автоматически происходит добавление контактов из телефонной книги на сервера Truecaller. Там номера сравниваются с уже внесенными и при наличии совпадений повышается их рейтинг. В основном это контакты банков, правительственных горячих линий, онлайн магазинов и интернет ресурсов. Теперь вам доступна общая база данных пользователей телефонной связи по всему миру.
На данный момент база знаний программы развита в Северной Америке, Индии и государствах Евросоюза. Это связано с большой популярностью сервиса, за счет чего ежедневно количество номеров на сервере увеличивается на 2-3 тысячи. В постсоветском пространстве Truecaller слабо популяризирован, поэтому порой найти нужную информацию по неизвестному номеру проблематично.
Основные возможности truecaller service
Приложение имеет красивый и интуитивно понятный пользовательский интерфейс, поэтому заблудиться в нем не получится. В памяти смартфона занимает до 40 Мб и не нагружает ни процессор, ни оперативную память.
Из основных функций можно выделить следующее:

-
возможность отредактировать и украсить свой контакт – именно так он будет отображаться в общей базе;

Как удалить?
В 98% случаев приложение не системное, поэтому его можно удалить без прав суперпользователя. Для этого нужно:

- Перейти в «Настройки» – «Приложения».
- Найти Truecaller и тапнуть по нему.
- Нажать кнопку «Удалить».

Подтвердить операцию.
После этого программа полностью покинет устройство.
Внимание! После удаления приложения все номера, которые вы отправили на сервер, остаются там навсегда.
Анализируя отзывы пользователей, можно сделать вывод, что данный софт очень полезен, безопасен и «не прожорлив» к аппаратным ресурсам смартфона. Поэтому рекомендован к установке. Теперь вы знаете, что это за программа Truecaller и как она работает.
- Лучшие аналоги Word – платные, бесплатные и онлайн-платформы
- Автоматическое обновление драйверов. Самые удобные программы
- SAP – программа для бухгалтеров. Как работает?
Как использовать Truecaller для записи звонков на Android и iOS

продвигается: это спонсируемый пост, над которым совместно работали редакционные команды Truecaller и Guiding Tech.
Оглавление
Truecaller был находкой для блокировки спам-звонков на протяжении многих лет. В то время как процесс идентификации вызывающего абонента относительно прост на Android, фильтрация спам-звонков на iOS была сложной задачей. Однако недавно в приложении появился оригинальный метод обнаружения и фильтрации спам-звонков и на iPhone. Продолжая тенденцию добавления новых функций, Truecaller теперь (повторно) представил возможность записи звонков на Android и iOS.

Что касается iOS, то на данный момент хорошо известно, что на iPhone вообще нет встроенного регистратора вызовов. Tuecaller решает обе эти проблемы с помощью встроенной функции записи звонков. Вы можете использовать приложение Truecaller на любом телефоне, независимо от его марки. Кроме того, уведомление о записи вызова всегда отправляется другой стороне, чтобы предотвратить неправильное использование.
Как записывать звонки на iPhone и Android с помощью Truecaller
На момент написания этой статьи функция записи звонков в Truecaller была ограничена планом Premium. Также стоит отметить, что в настоящее время вы можете записывать звонки только в США. Однако вскоре эта функция будет развернута по всему миру. Тем не менее, вот как записывать звонки с помощью приложения Truecaller.
Шаг 1: Загрузите приложение Truecaller на свой смартфон Android или iOS по ссылкам ниже.
Связанный : Как сделать чистую установку iOS 12 и обновить свой iPhone
Скачать Truecaller для Android
Скачать Truecaller для iPhone
Шаг 2: Зарегистрируйтесь, указав свой номер телефона и другие важные данные. Вам нужно будет приобрести план Премиум для записи звонков.

На устройствах Android
Запись звонков на Android довольно проста. Вам просто нужно использовать встроенный номеронабиратель Truecaller, и все готово.
Для исходящих вызовов
Шаг 1: Получите доступ к номеронабирателю в приложении Truecaller, чтобы набрать номер телефона.

Шаг 2: Как только вы наберете номер, вы увидите возможность записи звонков на экране вызова. Нажмите кнопку, и ваш звонок будет записан.

Для входящих звонков
Шаг 1: Примите входящий звонок, как обычно.

Шаг 2: Теперь вы увидите плавающую кнопку Truecaller на экране. Нажмите на нее, и ваш звонок будет записан.
На айфонах
Как и большинство вещей в iOS, процедура записи звонков также не так проста. Вам нужно прыгнуть через несколько обручей, но Truecaller делает это относительно просто.
Для исходящих вызовов
Шаг 1: Используйте приложение Truecaller для вызова линии записи. Это нужно сделать до того, как вы наберете номер, на который хотите позвонить.

Шаг 2: Как только вызов соединится, используйте кнопку «Добавить вызов», чтобы набрать номер, который вы действительно хотите вызвать.

Шаг 3: Затем нажмите кнопку «Объединить вызовы», чтобы объединить оба вызова. Это когда начинается запись разговора.

Для входящих звонков
Шаг 1: Примите входящий вызов на вашем iPhone, как обычно.

Шаг 2: Затем наберите линию записи с помощью подсказки Truecaller. Это поставит первый вызов на удержание.

Шаг 3: Теперь используйте кнопку «Объединить вызовы», чтобы объединить оба вызова. Ваш звонок будет записан.

Функции записи звонков на Truecaller
Помимо простой записи ваших звонков, Truecaller также предоставляет множество других привлекательных функций.
- Подсказка отображается после каждой записи звонка как на Android, так и на iOS. Вы можете использовать эту подсказку для быстрого доступа к записанному вызову.
- Truecaller использует свой ИИ для определения темы звонка и соответствующим образом переименовывает ее.
- Появилась новая функция помощника, которая может отвечать на звонки вместо вас, подобно Google Duplex.
- Пользователи Android могут синхронизировать записи своих звонков с Google Диском. Пользователи iPhone могут выполнять синхронизацию с iCloud.
- Другая сторона оповещается о записи разговора звуковым сигналом.
- Наряду с высококачественной записью звонков, Truecaller также обеспечивает полную транскрипцию звонков. Таким образом, вы можете искать содержимое вызова, используя текст.
- Truecaller также работает над моделью искусственного интеллекта, чтобы в будущем обобщать детали вызовов.
Связанный : 4 лучших способа отправки больших видео на Android
Часто задаваемые вопросы об использовании Truecaller для записи звонков
1. Узнает ли другой человек, что я записываю звонок через Truecaller?
Да, Truecaller всегда будет уведомлять другую сторону о записи звонка. Это гарантирует согласие другой стороны.
2. Будет ли функция записи звонков доступна в других странах?
Хотя функция записи звонков в настоящее время ограничена США, вскоре она будет доступна и в других регионах мира.
3. Какие еще функции предлагает Truecaller?
Помимо записи звонков, вы можете отфильтровывать спам-вызовы с помощью Truecaller, который является его самым большим USP. Вы также можете использовать Truecaller для отправки и получения сообщений, обнаружения одноразовых паролей в текстах, блокировки вызовов и т. д.
4. Сколько стоит подписка Truecaller Premium на запись звонков?
Для записи звонков вам понадобится подписка Truecaller Premium Connect или Premium Assistant. Подписка Premium Connect стоит 3,99 доллара в месяц или 39,99 доллара в год. Подписка Premium Assitant предлагает функцию проверки вызовов по цене 4,99 долларов в месяц или 49,99 долларов в год.
Записывайте звонки с легкостью
Наконец-то вы можете записывать звонки на свой iPhone благодаря Truecaller. Хотя процесс включает в себя несколько дополнительных нажатий, сам факт того, что это возможно, является шагом в правильном направлении. Это также благо для пользователей Android, у которых изначально нет функции записи звонков. И так, чего же ты ждешь? Загрузите и используйте Truecaller для записи звонков на Android и iOS прямо сейчас!