Курсы по использованию Asterisk

IP-телефония — технология будущего. Обучитесь работе с IP-АТС Asterisk для того чтобы внедрить и профессионально использовать при решении коммуникационных задач.

Работайте с Asterisk профессионально!

Многоуровневая защита IP-АТС Asterisk

Телефонные станции очень часто становятся объектами хакерских атак. Узнайте, каким образом необходимо строить многоуровневую защиту для Вашей IP-АТС.

Не оставьте хакерам шансов. Защитите свой Asterisk от атак.

Используйте Веб-Интерфейс для удобства настройки

Панель управление FreePBX позволяет легко и удобно управлять всей системой. Научитесь эффективно использовать FreePBX для решения своих задач.

Управление станцией и статистика в окне браузера.

Научитесь работать с Asterisk из консоли

Для понимания работы с Asterisk необходимо уметь настраивать его вручную с конфигурационными файлами и командной строкой CLI Asterisk.

Научитесь «тонкой» настройке Asterisk

Цель курсов - максимум практики.

Обучение нацелено на практическую работу с IP-оборудованием: платы потоков E1, VoIP-телефонные аппараты, голосовые шлюзы FXS и прочее.

Обучение на реальном оборудовании — залог успеха.

FreePBX CallerID Lookup или подстановка имени абонента из внешнего источника

База знаний Настройка Asterisk

Настройка подстановки имени абонента.

FreePBX CallerID Lookup или подстановка имени абонента из внешнего источника

  1. Какую задачу хочется решить
  2. Инструмент FreePBX CallerID Lookup
  3. Источник поиска — Internal (Внутренний)
  4. Источник поиска — MySQL
  5. Источник поиска — SugarCRM
  6. Источник поиска — HTTP
  7. Источник поиска — ENUM


1. Какую задачу хочется решить

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

А что если мы имеем IP-АТС на базе Астериск, которая также понимает и передает номера? (в отличи от аналоговых АТС и линий, в общем случае). Допустим нам требуется, чтобы когда нам звонит важный клиент, то его секретарь или оператор приветствовал по имени отчеству. Т. е. чтобы на экране телефона было видно в дополнении к номеру и имя звонящего. Тут и приходит на помощь модуль FreePBX CallerID Lookup.

2. Инструмент FreePBX CallerID Lookup

Данный модуль идет в стандартной поставке, устанавливать дополнительно его не надо. Попасть в версии FreePBX 2.10 в него можно так: Admin → CallerID Lookup Sources (Администратор — Источники поиска номера ИД)
Модуль уже содержит описание. Выглядит он так:



Чтобы его использовать, необходимо выполнить следующие условия:

  • добавить рабочий источник
  • в пункте меню Inbound routes (Входящая маршрутизация) выбрать данный источник

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

Примечание: нужно помнить формат CallerID абонента. Напоминает почтовый ящик: «имя абонента» <номер>, т. е. есть деление на CallerID name и CallerID number, имя абонента — текстовое значение, например: Ivan Petrov, Иван Петров, номер — числа 0-9 и знак +, например: 74959898533, +78003337533 Все вместе CallerID будет таким: «Ivan Petrov» <74959898533>

Теперь посмоторим, откуда и как можно получать нам имена.

3. Источник поиска — Internal (Внутренний)

Из названия ясно, что источник где-то        внутри. Так и есть, внутри FreePBX это, так называемая, Asterisk Phonebook (Телефонная книга Астериск). Попасть в нее можно Admin → Asterisk Phonebook (Администратор — Телефонная книга Астериск)
Пока она пустая, но мы легко добавим нужные нам номера вручную или загрузим. csv файл, предварительно его подготовив (можно выгрузить и посмотреть на структуру). Итак, добавляем имя, номер, код быстрого набора (необязательный параметр).



«Применить изменить» и видим, что появилась запись:



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

Сохраняем и применяем изменения.
Теперь можно пробовать. Если все правильно сделали, то на IP телефоне или софтфоне увидите имя и номер из телефонной книги.

Примечание: номер от разных операторов может приходить по-разному: 9251234567, 79251234567, +79251234567. В телефонной книге нужно точно сооблюдать формат.

4. Источник поиска — MySQL

Астериск может работать с MySQL нативно без дополнительных обработчиков, т. е. имеет встроенного mysql клиента. Все что нужно, это:

  • хост — где располагается MySQL сервер
  • база данных — к ней будет происходить обращение
  • запрос — SQL запрос к нашей БД, который возвращает запись с одной строкой и одним полем, т. е. единственное значение.
  • имя пользователя — пользователь в MySQL, которому выдана привелегия на select для интересующей нас БД. Обратите внимание, что в пользователе также должен быть указан хост, с которого будет возможно подключение.
  • пароль — пароль нашего пользователя в MySQL

Например, если наша БД называется mycrm, расположена в локальной сети на IP 192.168.0.10, пользователь asterisk, пароль lookN@me1
SQL запрос может выглядеть так:
SELECT name FROM clients WHERE number LIKE '%9251234567'

Данные собрали, проверили (с помощью mysql клиента) что наш запрос возвращает «Ivan Petrov», например. Теперь создаем источник:

SQL запрос:
SELECT name FROM clients WHERE number LIKE '%[NUMBER]'
Видим, как правильно писать номер. Данная информация есть в подсказке. При звонке вместо [NUMBER] будет подставляться реальное значение, а % дает возможность не учитывать возможный префикс.

Далее не забываем установить наш новый источник на входящей маршрутизации. Сохраняем и применяем. Пробуем звонить. И если все сделано правильно, то на экране IP телефона увидим имя абонента из БД.

Примечание. Если хотите использовать русские буквы в имени, то первое, в чем нужно убедится, это в соответствии кодировок. Лучше если этот будет UTF8. Возможно придется подкрутить charset в запросе. А второе — поддерживает ли ваш IP телефон UTF8 шрифт.

5. Источник поиска — SugarCRM

Данным пунктом можно воспользоваться в том случае, если CRM система SugarCRM установлена непосредственно в СУБД MySQL на том же сервере, что и наш астериск. БД должна называться sugarcrm. Если эти условия выполнены, то наш модуль сам возьмет нужные данные для SQL запроса. Если по каким-то причинам надпись «Пока не обеспечивается» не исчезает, то какие-то условия не были выполнены. Хотя при этом все может быть работать нормально. В таком случае, просто используйте источник MySQL с нужными параметрами.

6. Источник поиска — HTTP

Тоже весьма интересная вещь. Позволяет использовать PHP скрипты или API систем. Все что нужно, иметь рабочую ссылку с параметрами. Например, если мы вставляем в адресную строку URL вида:
http://mysupercrm.ru/action/name.php?num=9251234567
А нам возвращается имя того, кому принадлежит номер 9251234567, знакомый нам «Ivan Petrov». То мы можем использовать данный HTTP GET запрос, в качестве источника. Создаем источник HTTP так:

Опять же, не забываем во входящей маршрутизации указать его в качестве источника. Пробуем делать звонки.
Если HTTP протокол требует авторизации, то указывайте имя пользователя и пароль. Тут надо различать, о какой авторизации идет речь.

7. Источник поиска — ENUM

По аналогии с обратным DNS, который использует зону in-addr.arpa, телефонным номерам также может быть сопоставлены некоторые значения PTR, TXT. Так вот, если имеется DNS сервер, который обладает такими записями, то можно использовать ENUM источник, для сопаставления номер-имя. Например, для номера 79251234567 должна существовать DNS запись 7.6.5.4.3.2.1.5.2.9.7.e164.arpa типа TXT равная «Имя абонента». Если все условия выполненты, мы увидим «Имя абонента» на экране нашего IP-телефона. Таким образом в asterisk callerID выполняет свои функции.

настройка, FreePBX