регистрация ip телефона на asterisk

Пошаговое руководство по привязке SIP-номера к Elastix (FreePBX, Asterisk) на примере провайдера Megaline iDPhone

Всем доброго времени суток.

IP телефония вообще достаточно интересная штука, однако для человека, столкнувшегося с подобной системой в первый раз, процесс настройки может показаться пугающе трудным. Подробнее о том, как и зачем устанавливать программные IP-АТС можно почитать где-нибудь еще (благо информации по этому вопросу предостаточно), я же хотел более подробно остановиться на вопросе ее интеграции с городскими SIP-номерами одного Казахстанского провайдера.
регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

Я думаю, сразу стоит упомянуть, что ни какого отношения к этому провайдеру я не имею (за исключением того, что являюсь пользователем их услуг).

Что нам потребуется:

Для ясности:

Итак. Наша компания получила в свое распоряжение 2 SIP-номера по 2 линии на каждом. Под рукой оказался старенький системник на который и был успешно установлен Elastix. Тут то и началось самое интересное.

Часть 1. Настройка сети.

Немного теории: для обеспечения качества связи, Казактелеком делит физический канал ADSL на 2 логических, не влияющих друг на друга. Получается, что с ADSL-модема будет выходить два интерфейса, один для интернета, другой для ID Phone (SIP). Соответственно Elastix тоже должен быть подключен к обоим этим интерфейсам. Но тут возникает еще одна проблема. ID Phone раздает IP-адрес по DHCP, поэтому интерфейс на Elastix должен быть настроен на получение IP по DHCP. Второй интерфейс служит для доступа в интернет, соответственно должен иметь Default Gateway — основной шлюз. Выходит, что основной шлюз прописан на обоих интерфейсах. Для решения данной проблемы и было принято решение использовать вторую сетевую карту. Идея в том, что второй сетевой картой астериск подключается напрямую в ADSL-модем в порты для ID Phone. Сетевая карта получает динамический IP-адрес типа 10.20.130.11. Проблема в том, что в этой ситуации сервер Elastix обретает два Default Gateway. Один уже ранее прописанный на Megaline 192.168.100.1 и второй, полученный по DHCP из сети ID Phone. Трафик начинает блуждать, ничего не работает. Как быть?
Прежде всего, идем в настройки ADSL-роутера (в моем случае 192.168.100.1) и выключаем DHCP для одного из Ethernet-портов (в моем случае 4-й), в который будет подключен Elastix напрямую из второй сетевой карты. На моем TP-Link TD-W8951ND это выглядит следующим образом:
регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

Подключаем вторую сетевую карту (если еще не сделали этого ранее) и через SSH коннектимся к серверу Elastix, после чего вводим команду

Результат выглядит примерно так:
регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

где X – номер вашей сетевой карты. В моем случае это

Теперь в SSH-клиенте перезапускаем сервис сети командой

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

Далее. Изменяем содержимое файлов:

    На этом настройка сетевых карт завершена. На всякий случай, еще раз для ясности:
    192.168.100.1 – статичный адрес ADSL-модема
    192.168.100.6 – статичный адрес сервера Elastix

    Часть 2. Настройка Elastix

    Источник

    Регистрация телефона в Asterisk

    Регистрация телефона в Asterisk

    В верхнем правом углу экрана выберите ссылку Admin Login (Вход под учетной записью администратора). При этом появится несколько новых вкладок, таких как Regional (Региональные), Phone (Телефон), Ext 1, Ext 2 и User (Пользователь).

    Выберите вкладку Ext 1, с помощью которой мы выполним настройку первой линии. Выберите в меню следующие опции:

    # General ^ Line Enable ^ yes (Общие ^ Линия доступна ^ да).

    # NAT Settings ^ NAT Mapping Enable ^ no (Настройки NAT ^ Отображение NAT доступно ^ нет).

    # NAT Settings ^ NAT Keep Alive Enable ^ no (Настройки NAT ^ Поддержка NAT доступна ^ нет).

    # Proxy and Registration ^ Proxy ^ [Введите IP-адрес Asterisk (например, 192.168.1.100)] (Прокси и регистрация ^ Прокси ^ [Введите IP-адрес Asterisk]).

    # Proxy and Registration ^ Register ^ yes (Прокси и регистрация ^ Регистрация ^ да).

    # Proxy and Registration ^ Make Call Without Reg ^ no (Прокси и регистрация ^ Звонить без регистрации ^ нет).

    # Proxy and Registration ^ Ans Call Without Reg ^ no (Прокси и регистрация ^ Отвечать на звонок без регистрации ^ нет).

    # Subscriber Information ^ Display Name ^ Caller ID information (Информация об абоненте ^ Отображать имя ^ Информация об ID звонящего).

    # Subscriber Information ^ User ID ^ 1000 (Информация об абоненте ^ ID пользователя ^ 1000).

    # Subscriber Information ^ Password ^ [Оставьте незаполненным, если используете простую конфигурацию, описанную ранее в этой главе] (Информация об абоненте ^ Пароль ^ [Оставьте незаполненным, если используете простую конфигурацию, описанную ранее в этой главе]).

    # Subscriber Information ^ Use Auth ID ^ yes (Информация об абоненте ^ Использовать ID авторизации ^ да).

    # Subscriber Information ^ Auth ID ^ 1000 (Информация об абоненте ^ ID авторизации ^ 1000).

    # Audio Configuration ^ Preferred Codec ^ G711u (Конфигурация аудио ^ Предпочтительный кодек ^ G711u).

    # Audio Configuration ^ Use Pref Codec Only ^ no (Конфигурация аудио ^ Использовать только предпочтительный кодек ^ нет).

    # Audio Configuration ^ Silence Supp Enable ^ no (Конфигурация аудио ^ Поддержка тишины доступна ^ нет).

    # Audio Configuration ^ DTMF Tx Method ^ Auto (Конфигурация аудио ^ Метод DTMF Tx ^ Автоматически).

    # Подтвердите все изменения

    Конфигурация диалплана для выполнения тестирования

    Чтобы ваш телефон мог звонить на другие телефоны (или, для многоканального телефона, звонить самому себе), необходимо внести изменения в файл extensions.conf. Взяв за основу то, что было сделано в разделе «Настройка диалплана для выполнения тестовых вызовов», добавим следующие строки в контекст [internal]: exten => 1000,1,Verbose(1|Extension 1000) exten => 1000,n,Dial(SIP/1000,30) exten => 1000,n,Hangup()

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

    Читайте также

    Asterisk: офисная АТС, создаваемая профессионалами

    Сообщество разработчиков Asterisk

    Рассылки по Asterisk

    Рассылки по Asterisk Как и в любом другом сообществе, существуют сайты, где члены сообщества разработчиков Asterisk собираются для обсуждения вопросов, вызывающих всеобщий интерес. Список рассылок можно найти по адресу http:// lists.digium.com. Самыми значительными из них на настоящий

    Википедия об Asterisk

    Группы пользователей Asterisk

    Группы пользователей Asterisk На многих сайтах по всему миру одинокие пользователи Asterisk начинают осознавать, что в их городах есть и другие люди, разделяющие их пристрастие. Группы пользователей Asterisk (Asterisk User Groups,AUGs) возникают повсюду. Хотя они никак официально не

    Проект создания документации Asterisk

    AstLinux и Asterisk на OpenWRT

    AstLinux и Asterisk на OpenWRT Те, кто действительно прекрасно себя чувствует, работая с Linux на встроенных платформах, несомненно, захотят присоединиться к рассылке AstLinux и опробовать творение Кристиана Кайл- хофнера (Kristian Kielhofner) AstLinux, или приобрести Linksys WRT54GL и установить версию Asterisk,

    Глава 3. Установка Asterisk

    Глава 3. Установка Asterisk Я жажду решать большие и выдающиеся задачи, но представлять скромные задачи так, как будто они большие и выдающиеся, является обязанностью моего шефа. Мир продвигается вперед не только мощными рывками его героев, но и скромными усилиями всех

    Получение исходного кода Asterisk

    Получение исходного кода Asterisk Проще всего получить самую последнюю выпущенную версию с помощью программы

    Компиляция Asterisk

    Компиляция Asterisk После компиляции и установки пакетов zaptel и libpri (если они нужны), можно переходить к установке Asterisk. В этом разделе рассматривается стандартная установка и представлены некоторые альтернативные аргументы make, которые могут

    Распространенные проблемы компиляции Asterisk

    Распространенные проблемы компиляции Asterisk Существует множество проблем компиляции, с которыми часто сталкиваются пользователи. Далее рассматриваются некоторые самые распространенные из них и способы их решения.Сначала давайте рассмотрим некоторые ошибки, которые

    Быстрая загрузка Asterisk и Zaptel

    Быстрая загрузка Asterisk и Zaptel Если команда make config выполняется в папках исходного кода Asterisk или Zaptel, сценарии запуска, используемые для управления Asterisk или Zaptel, будут скопированы в папку /etc/rc.d/init.d/. Используя сценарии, можно упростить загрузку Asterisk и Zaptel. Эти сценарии также

    Папки, используемые Asterisk

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

    Глава 4 Исходная конфигурация Asterisk

    Базовая конфигурация SIP-телефонов в Asterisk

    Базовая конфигурация SIP-телефонов в Asterisk Конфигурация SIP-телефона для работы с Asterisk не требует много усилий и времени. Однако здесь можно легко запутаться из-за обилия опций как в Asterisk, так и в конфигурации конкретного телефонного аппарата или программного телефона.

    Источник

    Настройка Asterisk АТС: пошаговая инструкция

    IP-АТС Asterisk умеет все то же, что и традиционная АТС, плюс поддерживает актуальные для бизнеса VoIP-протоколы: голосовую почту, конференц-связь, центр обработки звонков, интерактивное меню, хранение записей. Рассказываем, как настроить с нуля базовый функционал «Астериск» АТС и получить рабочий сервер компьютерной телефонии.

    Для примера настройки Asterisk возьмем офис с такими характеристиками:

    Не советуем устанавливать Asterisk из репозитория, так как при данной установке может установиться не та версия Asterisk и необходимых к ней зависимостей. В данном случае используем установку Asterisk из исходников.

    В разных операционных системах (Cent Os, Ubunty и др.) отличаются команды и необходимые зависимости.

    Файлы для первоначальной настройки

    Настройка Asterisk – это, по сути, редактирование конфигурационных файлов в директории /etc/asterisk/. К таким файлам относят:

    Установка Asterisk из исходников

    Сборка и установка необходимых зависимостей и пакетов.

    Вначале нужно установить дополнительные пакеты, которые необходимы для установки и работы Asterisk. Без части из этих пакетов Asterisk вообще откажется устанавливаться (к примеру, если отсутствует gcc). Без некоторых пакетов Asterisk установится и даже будет работать, однако часть функционала окажется недоступна.

    Например, пакет bison необходим для обработки выражений в файле extensions.conf. Еще пример: libnewt необходим для работы интерфейса управления astman. Для сервера Asterisk он не требуется, но без этого пакета у вас не будет приложения astman, которое является отдельной программой.

    Приводим пример установки Asterisk 13 в системе Cent OS 6.9:

    Для 12-13 версии Asterisk требуется установка пакетов uuid и janson. Для установки библиотеки uuid в RHEL / Centos выполните команду:

    . Для установки библиотеки jansson в RHEL / Centos выполните команду:

    После обновляем систему до последней версии командой yum update –y и перегружаем ее: reboot

    Установка и установка их исходников

    Настройка Asterisk выполняется в чистом виде, без дополнительных плат расширения и модемов. Так вы получите максимально эффективное и рабочее решение – программную АТС, которую можно легко переносить с одного сервера на другой. Для этого необходимо установить Asterisk с нуля, инсталлировать pjproject с jansson, обновить систему и отключить SELinux.

    Для начала отключим Selinux. Для этого заходим /etc/selinux/config и ставим: SELINUX=DISABLED.

    Также выключаем FireWall (iptables):

    Скачайте и инсталлируйте pjproject:

    git clone git://github.com/asterisk/pjproject pjproject

    ./configure –libdir=/usr/lib64 –prefix=/usr –enable-shared –disable-sound –disable-resample

    Для конвертации mp3-файлов необходим пакет Lame. Установим его из репозитория:

    yum repolist — проверка установленных репозиториев

    Далее устанавливаем сам пакет: yum install lame

    Скачиваем и устанавливаем библиотеку Libpri:

    tar xvfz libpri-1.4-*.tar.gz

    Если команды wget – не существует, то устанавливаем ее командой yum –y install wget

    Далее скачиваем и устанавливаем сам asterisk 13:

    tar xvfz asterisk-13-current.tar.gz

    Если при проверки и подготовки сборки необходимых настроек, моделей никаких ошибок нету, то появиться в консоли иконка Asterisk

    регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

    make menuselect — выбираются все необходимые параметры, но в принципе можно оставить по умолчанию, главное чтобы были включены необходимые драйверы каналов

    Выберите модули и звуки (можно оставить по умолчанию). В модулях выбираем только sip. (pjsip не ставим):

    регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

    регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

    регистрация ip телефона на asterisk. Смотреть фото регистрация ip телефона на asterisk. Смотреть картинку регистрация ip телефона на asterisk. Картинка про регистрация ip телефона на asterisk. Фото регистрация ip телефона на asterisk

    Другие настройки можно оставить по умолчанию. Если вы установили модуль, но поняли, что он вам не нужен, просто отключите его в конфигурации и сделайте заново сборку через make. Сохраняем выбранные изменения.

    При успешной установки Asterisk видно в строчках лога эмблему Asterisk (появляется после этапа configure).

    Добавьте Asterisk в автозапуск и приступайте к работе:

    chkconfig asterisk on

    service asterisk start

    Проверьте корректность запуска через консоль:

    Перегрузите компьютер чтобы проверить автоматический запуск Asterisk. При вводе asterisk –r мы должны попасть в консоль, как на скрине выше.

    Источник

    Asterisk. Начало

    На написание этой статьи меня побудило практически полное отсутствие how-to по настройке Астериска, с понятными новичку примерами. В сети можно найти кучу информации по настройке IVR, по настройке авторизации SIP-пользователей через LDAP, мануалов по созданию HA-кластеров с Астерисками внутри, etc., но нет ни одной статьи о том, как завести его с нуля, да и еще с примерами. Практически везде предлагается сразу же использовать все возможности, которые предлагает Астериск, а если убрать часть функционала, предлагаемого в мануале, то в большинстве случаев это приведет к получению неработоспособной конструкции. Эта статья — результат хождения по граблям… чтения мануалов. Если вы находитесь в такой же ситуации, что и я пару лет назад — добро пожаловать под кат.

    И так, ситуация: вы только что узнали про Астериск и его возможности, и захотели использовать его у себя дома, или ваше руководство захотело IP-телефонию в офис.

    Первое что нам необходимо — сервер с установленной операционкой. По ряду причин я выбрал для своих серверов CentOS 6. Все примеры будут с привязкой к этой ОС, так как именно на ней получаются наиболее стабильные сервера. Тем не менее, я ни коим образом не пытаюсь ограничить вас выборе. Астер нормально заведется и под Debian-ом, и под Arch-ем, и даже на FreeBSD. Замечу: желательно не пользоваться гипервизорами на начальном этапе, так как вы можете получить «металлический» голос, либо его полное отсутствие. Про таймеры и прерывания расскажу в следующей статье, так как их описание и настройка выходит за рамки этой статьи. В том случае, если свободного сервера у вас нет и без виртуальной машины не обойтись, обязательно ставьте x86-го гостя.

    После того, как вы установили операционку на сервер, можно приступить к установке Астериска. Добавляем репозитории Didgium:

    Важное замечание: цифра в конце строки указывает на мажорную версию Астериска. В примере будет установлена наиболее свежая версия из 12-й ветки, доступная в репозиториях.

    После установки перезагружаем сервер и заходим в шелл Астериска:

    Обратите внимание на ключи, c которыми запускается шелл. Количество ключей «v» влияет на количество выводимой информации при звонке, их количество варьируется от 1 до 14.

    Если установка прошла успешно и Астериск запустился, вы увидите вот такое приглашение:

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

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

    Первое что вам требуется сделать — создать пиров в файле /etc/asterisk/sip.conf. Открываем его:

    И сразу переходим в конец файла. Вставляем следующий текст:

    Мы завели двух внутренних пиров с номерами 100 и 101. Разберем эти настройки, так как их понимание — ключ к успешному внедрению Астериска.

    [internal], это имя шаблона, а (!) указатель шаблона.
    Почему сразу начинаем использовать шаблоны? Потому что они сокращают время настройки и уменьшают количество текста с конфигурационном файле, а для понимания они очень просты.

    Доступные параметры: «peer», «user» и «friend». Очень часто встречается ошибочное мнение относительно того, чем они отличаются. Многие считают, что параметр «user» разрешает только исходящие, «peer» — только входящие звонки, а «friend» разрешает звонки в обе стороны. Это не так. Использование ключа «peer» отключает проверку соответствия имени пользователя и пароля при звонке. При использовании параметра «peer», Астериском проверяется только соответствие IP-адреса и номера порта источника вызова, при использовании «user» — проверяется поле username, а проверка адреса источника не производится. Параметр «friend» заставляет проверять поле username и IP-адрес источника.

    insecure=invite,port
    invite — отключается аутентификация при входящем звонке.
    port — отключается проверка порта источника.

    При первоначальной настройке пропишите оба ключа.

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

    Имя SIP-домена. Для первоначальной настройки укажите IP адрес сервера с Астериском.

    IP-адрес пира. В случае использования авторизации по логину и паролю — ставьте dynamic. Конкретный IP указывается только в том случае, если настройки пира используются для транка без регистрации.

    Указываем разрешенные кодеки.

    В нашем примере первая строка запрещает использование всех кодеков, а вторая — разрешает g711-a. Настройки кодеков индивидуальны для каждого случая, однако, большинство Российских и Украинских провайдеров используют g711a и g729. Последний — пропиетарный, и Астериском поддерживается лишь в Passthrough-режиме (то есть, невозможен транскодинг).

    Эта строка заставляет Астериск опрашивать устройство или софтфон пакетами OPTIONS. Необходим для мониторинга и траблшутинга.

    Запрещает пересылать медиа напрямую между устройствами. Рекомендую ставить «no», для упрощения настройки.

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

    [100](internal)
    secret=XXX
    [101](internal)
    secret=XXX

    Тут мы задаем имя пира и берем настройки из шаблона. Единственные уникальные параметры в нашем примере — имя пира и пароль.
    На этом мы закончили настраивать внутренних пиров, перейдем к настройке стыка с операторами. Добавим 2 записи в конец sip.conf:

    Не буду расписывать значения каждой строки, т.к. все настройки идентичны настройкам внутренних пиров, за исключением поля host. В том случае, если Астериск выступает в роли клиента (а для сервера оператора наш астериск является клиентом), нам нужно указать адрес сервера оператора или его dns-имя.

    Добавим второго оператора:

    Отличий тоже никаких, за исключением отсутствия строк username и secret, так как, напомню, второй оператор не использует регистрацию.

    Осталось настроить регистрацию на сервере оператора №1. Для этого в файле sip.conf, перед секцией описывающей настройки оператора вставим следующую строку:

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

    Наверняка вы редактировали файлы конфигурации под пользователем с ограниченными правами. Если это так, то Астериск не сможет получить доступ к файлу конфигурации, поэтому пишем:

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

    В шелле Астериска пишем команду:

    Теперь вы можете зарегистрировать на своем Астериске пользователей с логинами 100 и 101. Проверяется состояние регистрации следующей командой:

    Если вы все настроили правильно, то увидите примерно вот такой вывод:

    Если вы это видите, то, поздравляю, ваши устройства или софтфоны успешно зарегистрировались и Астериск увидел сервера операторов.

    Состояние регистрации проверяется командой:

    Если регистрация прошла успешно, то вы должны увидеть вот такой вывод:

    На этом настройка пиров закончена, перейдем к настройке диалплана. Диалплан — это сердце Астериска, с помощью него обрабатываются абсолютно все звонки. Астериск понимает несколько языков, но в нашем примере мы будем использовать стандартный, появившийся в самых первых релизах Астериска. Файл конфигурации хранится в файле /etc/asterisk/extensions.conf.

    Откроем его командой:

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

    Начнем с простого. Нам нужно позвонить с номера 100, на номер 101. Для этого нужно прописать правило, сразу после секции globals:

    Разберем эту строку.
    [office] — имя контекста, в котором обрабатываются звонки от пира.
    exten => — указатель начала шага.
    _1XX — маска. На маске остановимся чуть подробнее. С помощью нее сортируются все звонки, попадающие в контекст диалплана.

    Маска использует набор паттернов для сортировки звонков по caller-id:

    Маска начинается с символа «_», который означает что это шаблон. В случае, если вы забудете указать его, Астериск примет 1XX за вызываемый номер и передаст Dial-у паттерны вместо номера телефона, и звонок не состоится.
    1 — номер действия.

    Dial — это приложение. В диалплане можно использовать более 200 различных приложений, которые используются для манипуляций со звонками. Сейчас, в самом начале, мы будем использовать только одно приложение — Dial. Из названия понятно, что оно используется для совершения звонков.

    / — разделитель для передаваемых аргументов.

    Каждый из параметров разделяется запятыми. В нашем примере используются трехзначные номера, поэтому в маске должно быть 3 паттерна. В случае, если вы захотите использовать иную длину нумерации, то пишите в маске нужное количество паттернов. Теперь сохраняем файл, открываем шелл астериска и пишем команду:

    Если возникли проблемы с доступом к файлу, то пишем:

    И снова перезагружаем диалплан через шелл Астериска.

    Теперь пробуем звонить. Если вы все правильно настроили, то пир с номером 100 дозвонится до пира с номером 101. Сейчас мы можем звонить внутри офиса, между пирами, которые работают в контексте office. Для того что бы позвонить в город, нам нужно написать правило для исходящих звонков через первого оператора. Прописываем его в контекст office, выглядит оно так:

    Перезагружаем диалплан и пробуем звонить в город.

    Теперь нам надо принять входящий звонок. Сделаем новый контекст в диалплане, пишем в конец файла:

    Поясню что означает «s». Это стандартная маска в Астериске, под которую попадают абсолютно все вызовы. То есть, если мы используем транк с регистрацией, входящий caller-id будет «s».

    Сохраняемся и перезагружаем диалплан. Теперь мы можем принять входящий звонок через оператора, предоставляющего нам городской номер.

    Сейчас нам понадобилось позвонить на сотовый телефон, с федеральным номером. Допишем еще одну строку в контекст [office]:

    Сохраняемся, перезагружаем диалплан и звоним. Все. Теперь мы можем полноценно использовать услуги оператора, предоставляющего городской номер.

    Однако, тут кроется небольшая проблема, которая возникнет при звонке на сотовые телефоны других регионов. Так как номер телефона федеральный, то все звонки пойдут через первого оператора. Поэтому уместно уменьшить размер масок в диалплане. К примеру:

    С такой конструкцией все звонки на телефоны с кодами из диапазонов 890982XXXXX-890999XXXXX и 8901421XXXX-8901651XXXX пойдут через первого оператора. Не совсем удобно, соглашусь с этим. В будущих статьях выложу конфигурацию диалплана для автоматического выбора оператора в зависимости от направления звонка, так как подобное опять же выходит за рамки этой статьи.
    Теперь нам осталось пустить междугородние звонки через второго оператора. Добавляем строку в контекст [office]:

    Как вы заметили, тут появились новые приложения, которые обрабатывают звонки. Set(CALLERID(num)=74991234567) — так как мы используем транк без регистрации, то это значит что мы должны отсылать оператору caller-id. Этот номер не обязательно должен существовать. Тут мы просто представляемся провайдеру и не более. Какой номер подставлять — зависит от оператора. Некоторые предоставляют услугу подмены caller-id на номер другого оператора, для совершения исходящих вызовов по межгороду или для зоновуй связи. За подробностями обращайтесь к оператору. same => n — указатель, который позволяет не писать каждый раз маску и номер действия. К примеру:

    Во втором случае все гораздо проще, не так ли?

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

    Источник

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *