Астерикс установка и настройка

Настройка Asterisk

Подробные руководства и справочные материалы по настройке Asterisk. Документация постоянно обновляется и дополняется.

Установка

Asterisk работает под управлением операционных систем Linux и FreeBSD. Доступны установка из бинарных файлов и компиляция из исходного кода. Также существует множество дистрибьютивов Linux с уже готовым к работе предустановленным Asterisk и FreePBX.
Инструкции по установке Asterisk для различных дистрибьютивов Linux:

Конфигурационные файлы Asterisk

Большинство настроек Asterisk контролируются с помощью конфигурационных файлов, расположенных в директории /etc/asterisk. Синтаксис конфигурационных файлов Asterisk разработан для редактирования вручную и имеет простую и понятную структуру. Категории или по иному контексты группируют свойства объектов и отделяют их друг от друга именами в квадратных скобках по принципу наследования. Все, что записано после имени контекста относится к нему, пока не появится следующее имя контекста в квадратных скобках. Практически в каждом кофиге встречается категория [general], которая задает параметры для всех объектов конфигурационного файла. Параметры объектов имеют приоритет над глобальными параметрами, если одинаковый параметр, может быть назначен, как глобально, так и конкретному объекту. Некторые конфиги имеют только заранее определенные секции, например asterisk.conf отвечающий за общие настройки pbx. Но в большинстве случаев, для назначения объектов, создаются контексты и задаются их имена. Приведенные ниже примеры конфигов Asterisk 14 с описанием параметров, переведены и дополнены авторами сайта.

Realtime архитектура Asterisk

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

Источник



Freepbx: настройка с нуля

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

Лицензия Asterisk свободная, что позволяет пользоваться этой программой многим людям.

С каждым годом Астериск все больше и больше развивается, благодаря увеличению ресурсов.

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

Freepbx: настройка с нуля

Интерфейс Freepbhx нужен для более простой настройки Asterisk и управления VoIP-телефонией. Главное преимущество – человеку не надо исправлять самому все текстовые файлы. Эта программа помогает переводить язык программы в виде текста, который поймет пользователь. Для настройки Freepbhx надо установить программу на компьютер.

Для того чтобы установить интерфейс, требуется:

  1. Скачать FreePBX 13 Distro. Выбирать версию, опираясь на программное обеспечение компьютера.
  2. Записать образ системы на диск, используя утилиты.
  3. Изменить параметры загрузки системы.
  4. С этого диска загрузить машину.
  5. Выбрать версию PBX.
  6. Выбрать режим Full install
  7. Нажать ВК.
  8. Придумать и установить пароль.
  9. Перезагрузить компьютер и заходить в аккаунт как пользователь с root-правами.

Установка Asterisk

Установка и настройка окажется простой, если соблюдать пошагово инструкцию.

Если нужна только VoIP-сеть, то можно установить только asterisk. Но лучшим вариантом станет установка трех пакетов.

Драйвер dahdi используется при цифровом оборудовании. Для обмена данными с периферийным оборудованием нужен драйвер. Принцип настройкиAsterisk заключается в следующем:

сервер Asterisk<->chan_dahdi<-> Драйвер dahdi<-> Карта <-> Телефон/Коммутатор/Телефонная сеть

Библиотека libpri необходима для использования TDM-интерфейсов ISDN: PRI (PrimaryRateInterface) и BRI (BasicRateInterface). Libri делится на каналы по времени – Time Division Multiplexing.

Можно рассмотреть установку Asterisk из исходников. Такой способ установки дает возможность установить Asterisk с нуля.

  • Версия ядра системы должна быть не ниже 2.6.
  • Обязательное наличие файлов заголовков в системе.
  • Присутствие компилятора gccctermcap и openssl.

Проверив все эти моменты, можно приступать к установке. Для этого надо перейти на сайте в Download и загрузить такие архивы:

  • «asterisk»
  • «asterisk-sounds»
  • «asterisk-addons»
  • «zaptel»
  • «libpri»

После этого скопировать файлы на сервер и разместить их в папке «/usr/src/.».

Далее надо запустить терминал в сервере.

Затем распаковать каждый архив командой «tar-xzf<имя >tar.gz» .

Потом перейти в каждую папку при помощи команды «cd<имя>» .

Закончив, надо выполнить определенные команды для настройки:

  • «./configure» (это подготовит программу к сборке)
  • «make» (команда для сборки)
  • «makeinstall» (установка программы)

Для установки необходимых пакетов не нужно прилагать особых усилий. Астериск обладает автоматизацией пакетов, поэтому для этого нужен скрипт install_prereq, который можно найти в подкаталоге contrib/scripts, где есть исходные коды.

Нужно зайти в этот подкаталог и запустить скрипт. С помощью него необходимые пакеты будут установлены.

Таким образом, при соблюдении всех действий Asterisk для чайников будет готов.

Как настроить Asterisk на Ubuntu

Соблюдая пошаговую инструкцию, можно просто установить Asterisk на Ubuntu:

  1. Надо скачать на Ubuntu.
  2. Установить пакеты для корректной сборки DAHDI и LibPRI.
  3. Загрузить исходник (необходимо ввести «wget…» вместе со ссылкой на загрузку.
  4. Распаковать программу при помощи команды «tarzxvf».
  5. Зайти в директорию с Asterisk.
  6. Ввести «contrib/scripts/install_prereqinstall», чтобы загрузить утилиты из Asterisk.
  7. Для запуска программы надо написать эту команду, добавив «-unpackaged».
  8. Повторно зайти в каталог с программой.
  9. Заставка появится при вводе «. /configure».
  10. Повторить все то же самое, что делают при запуске Asterisk.

  1. Открыть конфигурационный файл: vi /etc/asterisk/asterisk.conf.
  2. Создать учетную запись asterisk в системе: useraddasterisk–m.
  3. Задать права: chown -R asterisk:asterisk /var/log/asterisk.
  4. Проверить конфигурацию: asterisk –c.

Запуск Астериск из скриптов загрузки:

[asterisk@newtmp]$ cd asterisk-1.0.1

[asterisk@new asterisk-1.0.1]$ cd channels/h323

[asterisk@new h323]$ make

g++ -g -c -fno-rtti -o ast_h323.o -march=i686 -DPBYTE_ORDER=PLITTLE_ENDIAN -DN

DEBUG -DDO_CRASH —

DDEBUG_THREADS -pipe -Wall -fPIC -DP_LINUX -D_REENTRANT -D_GNU_SOURCE -DP_HAS_S

EMAPHORES -DP_SSL —

DP_PTHREADS -DPHAS_TEMPLATES -DPTRACING -DP_USE_PRAGMA -I../../include

-I/home/asterisk/pwlib/include/ptlib/unix -I/home/asterisk/pwlib/include

-I/home/asterisk/openh323/include -Wno-missing-prototypes -Wno-missing-declarations ast_h323.cpp

chan_h323.h:31: warning: `sockaddr_inbindaddr’ defined but not used arcr libchanh323.a ast_h323.o

[asterisk@new h323]$

[asterisk@new h323]$ cd ../..

Как установить Asterisk на Windows

  1. Скачать VirtualBox.
  2. Скачать Asterisk для VirtualBox.
  3. Установить VirtualBox.
  4. Нажать везде «Согласен».
  5. Нажать «Файл», а потом «Импорт конфигураций».
  6. Запустить машину и провести остальные настройки.

Чтобы скачать пакеты голосовых сообщений, надо:

  1. Перейти в папку «contrib/scripts/» с помощью команды «cd».
  2. Открыть «get_mp3_source.sh».
  3. Ввести «makeinstall».
  4. Открыть консоль Asterisk.
  5. Сделать файлы при помощи «makesamples».
  6. Запустить функцию «service asterisk start».

Основным конфигурационным файлом является asterisk.conf. Отсюда берется информация о местоположении файлов в системе.

Файл конфигурации, который пригодится для набора некоторых команд:

  • conf (голосовые почтовые ящики при команде VoiceMail).
  • conf (конфедерация, применяемая установкой Festival).
  • conf (структура, необходимая для указания AlarmReceiver).
  • conf (настройка тонов с указанием Playtones).
  • conf (конфигурация, которая используется командой DUNDiLookup).
  • conf (конфигурация для того, чтобы установить очередь звонков и их параметров для команды Queue).

Файлы конфигурации каналов Asterisk:

  • conf (канал IАX2).
  • conf (канал SIP).
  • conf (канал DАHDi).
Читайте также:  Пандора с установкой омск

Частые ошибки в установке и настройке Asterisk

  • Не отключены анонимные звонки и использован контекст для плана нумерации.

Если не планируется принимать анонимные звонки, надо их отключить.

  • Отсутствие библиотеки sqlite или ее компонентов для разработчиков для сборки программ.

Чтобы решить эту проблему, надо использовать CentOS с пакетом sqlite-devel: yum -y install sqlite-devel

  • Не получается зарегистрировать Asterisk на сервере ru.

Для решения этой проблемы надо проверить правильность ввода пароля, SIP ID. Также необходимо проверить, как сотрудник создан в «Личном кабинете»: правильно или нет.

  • Отклонение входящего вызова Астериксом.

Надо проверить, находится ли пользователь в регистрации. Необходимо ввести команду sipshowregistry в консоле Астериск.

  • Прохождение звука через одну сторону.

Нужно выбрать либо поддержку nat в Asterisk, либо поддержку SIP. Второй вариант решения проблемы – установка directmedia=nonat. Еще одним способом станет установка debug в Asterisk, с помощью которого можно будет отслеживать все запросы и аудио-трафик.

  • Не получается исходящему вызову пройти.

Для этого надо написать: exten => _XXXXXX,1,Dial(DAHDI/g1/$)

Изменив номер, можно решить проблему.

Заключение

Настройка Asterisk с нуля не окажется трудной как специалисту, так и новичку. Asterisk является отличным решением компьютерной телефонии.

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

Астериск доступен в Ubuntu, но его также можно установить и на Windows.

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

Не надо ставить лишние пробелы и ошибаться в написании команд. Совсем незаметные ошибки могут не допустить работу программы.

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

Источник

Asterisk — настройка с нуля

На просторах Интернет можно найти много инструкций по настройке Asterisk с использованием графического интерфейса FreePBX. И они помогают настраивать и управлять АТС в большинстве случаев. Но гораздо больше возможностей дает настройка «чистого» Asterisk.

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

А еще вам понадобится установить sngrep для трассировки и отладки SIP-сообщений. Погнали?

Теория

Итак, приступаем к внедрению Asterisk. Структура используемых Астериском директорий следующая:

  • /usr/lib64/asterisk/modules – тут находятся загружаемые модули;
  • /var/log/asterisk – тут находятся лог-файлы, в том числе и лог звонков (если не настроено другое);
  • /var/spool/asterisk – тут находятся подпапки, в которых находятся бэкапы, записи разговоров, голосовая почта, факсы и так далее;
  • /var/lib/asterisk – тут находятся подпапки, в которых находятся звуковые файлы для музыки на удержании, звуковые файлы для выбранных языков (например для проигрывания голосовых сообщений в IVR), записанные голосовые сообщения для приветствия и так далее.

Конфигурационные файлы находятся в папке /etc/asterisk. Для работы каждого модуля Asterisk необходим конфигурационный файл. Эти файлы (с расширением .conf), содержат определения каналов, описывают различные внутренние сервисы, определяют местоположения других модулей, устанавливают связь с диалпланом. Необязательно настраивать все файлы. Требуют настройки только те, которые необходимы для вашей конфигурации.

Основные конфигурационные файлы:

  • asterisk.conf – определяет глобальные параметры, директории и опции для запуска Asterisk;
  • cdr.conf – определяет настройки для записи параметров вызовов в файл или базу данных;
  • sip.conf – определяет настройки для использования SIP-протокола (как общие, так и параметры для регистрации провайдеров, внутренних пользователей и так далее);
  • rtp.conf – определяет порты для голоса (RTP);
  • iax.conf – определяет настройки для использования IAX-протокола (как общие, так и параметры для регистрации провайдеров, внутренних пользователей и так далее);
  • extensions.conf – основной файл, в котором описывается весь диалплан, то есть правила обработки всех вызовов;
  • features.conf – описывает дополнительные функции (переадресации, парковка вызова, включение записи по запросу и так далее);
  • logger.conf – определяет тип и детальность сообщений, записываемых в файлы журналов;
  • modules.conf – определяет какие модули будут или наоборот не будут загружаться при запуске Asterisk;
  • musiconhold.conf – используется для конфигурации разных классов музыки, используемых в приложениях музыки во время ожидания, и их местоположений;

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

Сразу после установки asterisk, если не была выбрана установка базовой конфигурации, в ней нет ни одного файла.

Для подключения к asterisk в режиме командной строки необходимо ввести

  • r – подключение к уже запущенному процессу;
  • vvvvv – уровень логирования, то есть вывода информации (от слова verbose — v). Чем больше v выставляем, тем более детальная информация будет выдаваться в командную строку;

Создаем и редактируем необходимые файлы

Начнем с файла asterisk.conf:

  • [directories](!) – указываем расположение необходимых директорий. Знаком (!) указывается признак шаблона. В шаблоне указываются общие настройки, на которые можно ссылаться дальше.
  • [options] – указываем необходимые опции, одна из необходимых maxcalls указывает на количество одновременных вызовов, разрешенных на Asterisk;

Приступаем к файлу cdr.conf. Комментарии к опциям в конфиге:

[general] enable=yes ; включаем саму возможность логирования звонков unanswered=no ; неотвеченные звонки не логируем safeshutdown=yes ; при выключении сервера будем ждать, пока не допишутся ВСЕ логи [csv] usegmtime=yes ;лог date/time в формате GMT. По умолчанию NO loguniqueid=yes loguserfield=yes

Закончили. Теперь файл features.conf:

[general] [featuremap] ; тут описываем используемые функции и их параметры blindxfer => ## ; безусловный перевод atxfer => *2 ; условный перевод automon => *1 disconnect => ** parkext => 700 ; парковка parkpos => 710-780 ; диапазон портов для парковки context => parkedcalls ; контекст для обработки запаркованных звонков parkingtime => 180 ; время парковки comebacktoorigin => no ; возвращать звонок на инициатора, когда закончилось время парковки вызова parkedplay => both ; кому играть courtesytone когда вызов снимается с парковки. Опции: callee, caller, both или no(по умолчанию) parkedcalltransfers => caller ; Кто может сделать трансфер припаркованного вызова с помощью DTMF. Опции: callee, caller, both или no(по умолчанию) parkedcallrepark => caller ; Кто может перепарковать, припаркованный вызов с помощью DTMF. Опции: callee, caller, both или no(по умолчанию) parkedcallhangup => no ; Кто может закончить, припаркованный вызов с помощью DTMF Опции: callee, caller, both или no(по умолчанию) parkedcallrecording => no ; Кто может инициировать запись, с помощью DTMF. Опции: callee, caller, both или no(по умолчанию).. parkedmusicclass => default ; Класс музыки ожидания для припаркованного, adsipark => no ; Передавать или нет ADSI инфо о припаркованном вызове тому кто припарковал findslot => first pickupexten => *8 ; перехват звонка [applicationmap] ; тут описываем используемые приложения sendsms => *99,peer/both,Macro,sendsms pitch => *00,self/both,Macro,pitch

Читайте также:  Установка размеры унитаза с бачком

Теперь конфигурируем RTP в файле rtp.conf

[general] rtpstart=36600 rtpend=39999

Музыка на ожидании в здании. Открываем файл musiconhold.conf

[default] mode=files directory=/var/lib/asterisk/moh/

Следом открываем файл logger.conf:

[general] [logfiles] console => notice,warning,error,dtmf,verbose(5) ; уровень детализации сообщений, выводимых в консоль full => debug,notice,warning,error,verbose(9),dtmf,fax,security ; уровень детализации сообщений, выводимых в лог-файл

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

И напоследок — файл modules.conf. Есть 2 варианта: либо читаем все модули и указываем те, которые не надо читать:

[modules] autoload=yes noload => codec_g723-ast110-gcc4-glibc-x86_64-core2-sse4.so

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

[modules] autoload = no ; Applications load = app_bridgewait.so load = app_dial.so load = app_playback.so ; Bridging load = bridge_builtin_features.so load = bridge_builtin_interval_features.so load = bridge_holding.so ; Call Detail Records load = cdr_custom.so ; Channel Drivers load = chan_bridge_media.so load = chan_sip.so ; Codecs load = codec_gsm.so load = codec_ulaw.so load = codec_alaw.so load = codec_g722.so ; Formats load = format_gsm.so load = format_pcm.so load = format_wav_gsm.so load = format_wav.so ; Functions load = func_callerid.so load = func_cdr.so load = func_pjsip_endpoint.so ; Core/PBX load = pbx_config.so ; Resources load = res_musiconhold.so load = res_pjproject.so load = res_pjsip_acl.so

В данной статье мы используем первый вариант. На этом с настройкой основных файлов закончим. В дальнейшем по мере необходимости в них можно вносить изменения. Все последующие настройки мы будем вносить в файлы sip.conf и extensions.conf. Погнали к созданию и регистрации внутренних абонентов.

Создание и регистрация внутренних абонентов

В sip.conf указываем сначала общие параметры SIP для Asterisk:

[general] bindaddr=0.0.0.0 ; указываем IP-адрес и порт, на котором будет приниматься bindport=5060 ; SIP-трафик language=ru ; используемый язык для голосовых сообщений alwaysauthreject=yes allowguest=no ; запрещаем принимать «гостевые» звонки, то есть вызовы от незарегистрированных пользователей

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

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

Имя шаблона берется в скобки [ ] и следом указывается (!). В шаблоне можно указать контекст для этих абонентов, используемые кодеки, разрешенные/запрещенные сети для регистрации этих абонентов, использование NAT и так далее. Пример шаблона приведен ниже:

[office](!) type=friend deny=0.0.0.0/0.0.0.0 permit=192.168.10.0/255.255.255.0 host=dynamic context=from-internal nat=no qualify=yes directmedia=no disallow=all allow=alaw allow=ulaw dtmfmode=info

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

[НОМЕР](ШАБЛОН) callerid=ИМЯ <НОМЕР> secret=ПАРОЛЬ callgroup=5 ; номер группы вызова pickupgroup=1,2,3,4,5 ; номера групп перехвата вызовов

Источник

Asterisk АТС, инструкция по настройке

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

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

  • 3 отдела, в которых работают 25 сотрудников;
  • используются трехзначные телефонные номера;
  • услуги предоставляет один SIP-провайдер.

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

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

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

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

Вначале нужно установить дополнительные пакеты, которые необходимы для установки и работы Asterisk. Без части из этих пакетов Asterisk вообще откажется устанавливаться (к примеру, если отсутствует gcc). Без некоторых пакетов Asterisk установится и даже будет работать, однако часть функционала будет недоступна. Например, пакет bison необходим для обработки выражений в файле extensions.conf. Еще пример: libnewt необходим для работы интерфейса управления astman. Для сервера Asterisk он не требуется, но без этого пакета у Вас не будет приложения astman, которое является отдельной программой. В нашем приводиться пример установки Asterisk 13 в системе Cent OS 6.9:

yum -y install gcc gcc-c++ make ncurses-devel libxml2-devel sqlite-devel bison kernel-headers kernel-devel openssl openssl-devel newt newt-devel flex curl sox binutils

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

yum -y install libuuid-devel

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

yum -y install jansson-devel (предварительно требуется установка репозитория epel: yum install epel-release )

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

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

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

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

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

  1. Проверка статуса: service iptables status;
  2. Отключение: service iptables stop
  3. Отключение из автозагрузки: chkconfig iptables off
  4. Перегружаем систему: reboot

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

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

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

ldconfig -p | grep pj

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

rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

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

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

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

Установите озвучку для core и extra (для второй она доступна на русском языке). Рекомендуем кодеки g729, alaw, ulaw, ,gsm. Далее уже на Ваш вкус какие кодеки необходимы.:

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

Читайте также:  Установка цепи грм bmw

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

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

chkconfig asterisk on

service asterisk start

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

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

Источник

Установка и базовая настройка сервера Asterisk на Ubuntu

Инструкция позволит быстро познакомиться с сервером Asterisk, выполнив базовые действия по установке и настройке сервера. Нижеописанные действия протестированы на Ubuntu 16.04 и Asterisk 15.

Подготовка сервера

Актуализируем список пакетов:

Установка

Установку можно выполнить с помощью команды apt install asterisk. Но в данной инструкции мы разберем установку путем сборки из исходников.

Рекомендуется установить Asterisk с DAHDI (драйверы плат интерфейсов телефонии) и LibPRI (библиотека для работы с потоковыми TDM-интерфейсами). Сначала необходимо собрать DAHDI, затем LibPRI и только потом — Asterisk.

Устанавливаем пакеты, необходимые для корректной сборки DAHDI и LibPRI:

apt install make gcc

Сборка DAHDI

Распаковываем его и переходим в распакованный каталог:

tar -xvf dahdi-linux-complete-current.tar.gz

Собираем пакет и устанавливаем его:

Выходим из каталога dahdi:

Сборка LibPRI

tar -xvf libpri-current.tar.gz

Собираем и устанавливаем:

Выходим из каталога libpri:

Установка Asterisk

Переходим по ссылке https://downloads.asterisk.org/pub/telephony/asterisk и копируем ссылку на последнюю версию asterisk. Используя ссылку, скачиваем исходник:

* в моем случае, последняя версия была 15.

Распаковываем архив и переходим в папку, появившуюся после распаковки:

tar -xvf asterisk-*.tar.gz

Устанавливаем библиотеки для работы с mp3:

./configure —prefix=/usr —sysconfdir=/etc —localstatedir=/var —libdir=/usr/lib64 —with-dahdi —with-pri —with-iconv —with-libcurl —with-speex

  • —with-dahdi — с драйверами DAHDI.
  • —with-pri — с библиотекой PRI.
  • —with-iconv — с возможностью конвертации кодировок (будет не лишним для поддержки русских символов).
  • —with-libcurl — возможность извлекать данные посредством CURL-запросов (по http).
  • —with-speex — дополнительный VBR-кодек (используется на многих софт-фонах).

** список всех доступных опций можно посмотреть командой ./configure -h.

Мы должны увидеть логотип астериска:

Вызываем оконное меню настройки модулей:

Для большинства случаев, настройки можно оставить по умолчанию. В противном случае рекомендуется изучить опции и выбрать необходимые. После нажимаем Save & Exit.

Затем собираем исходник:

И выполняем установку:

Установим примеры конфигурационных файлов и документацию:

Устанавливаем скрипт инициализации (для автозапуска):

Устанавливаем скрипты для отсекания логов:

Создаем конфигурационный файл для указания дополнительного пути с библиотеками:

Добавляем в него одну строчку:

* это путь до каталога с библиотеками, с которым мы собирали asterisk (опция —libdir).

Настройка и запуск

Открываем конфигурационный файл:

И редактируем следующее:

runuser = asterisk
rungroup = asterisk
defaultlanguage = ru
documentation_language = ru_RU

Создаем системную учетную запись asterisk:

useradd asterisk -m

chown -R asterisk:asterisk /var/run/asterisk

chown -R asterisk:asterisk /etc/asterisk

chown -R asterisk:asterisk /var//asterisk

chown -R asterisk:asterisk /usr/lib64/asterisk

chown -R asterisk:asterisk /var/log/asterisk

Исправляем ошибки и предупреждения. В моем случае были следующие.

Ошибки запуска

No configured users for ARI. ARI предоставляет API для Asterisk REST Interface. В данном примере, отключаем поддержку:

Name or service not known. Если появится такая ошибка, система не может разрешить имя компьютера в IP-адрес. Необходимо правильно настроить DNS или прописать имя компьютера в файл /etc/hosts.

No directory URL or host found. Модуль для работы lpad неправильно настроен или не настроен.
PostgreSQL RealTime: Failed to connect database asterisk on 127.0.0.1. Модуль для работы с СУБД PostgreSQL.
Failed to open /dev/dahdi/transcode: No such file or directory. Ошибку можно увидеть, если нет оборудования DAHDI.

Вышеописанные ошибки возникают из-за включенных, но не используемых модулей. Отключаем:

noload => res_config_ldap.so
noload => res_config_pgsql.so
noload => codec_dahdi.so

Предупреждения при запуске

  • Unable to find a valid server address or name.
  • Process_dahdi: Ignoring any changes to .
  • CEL pgsql config file missing global section.
  • Cel_tds module had config problems; declining load.

Отключаем следующие модули:

noload => res_phoneprov.so
noload => app_dahdiras.so
noload => chan_dahdi.so
noload => res_pjsip_phoneprov_provider.so
noload => cel_pgsql.so
noload => cel_tds.so

Список всех загружаемых модулей можно посмотреть командой:

ls -la /usr/lib64/asterisk/modules/

Разрешаем сервис asterisk и запускаем его:

systemctl enable asterisk

systemctl start asterisk

Заведение первых номеров

Для первой настройки достаточно завести 2 номера с возможностью подключения по SIP.

Создаем правило обработки вызова (контекст). Открываем следующий файл:

И добавляем в него следующее:

[outcaling]
exten => _XXXX,1,Dial(SIP/$,,m)

* создаем контекст с именем outcaling для четырехзначных номеров (XXXX) с вызовом по SIP по внутреннему номеру.

Открываем следующие конфигурационный файл:

И добавляем в него два внутренних номера (extensions):

[1001]
type=friend
regexten=1001
secret=1234
context=outcaling
host=dynamic
callerid="1001" <1001>
disallow=all
allow=alaw
allow=ulaw
language=ru
callgroup=1
pickupgroup=1
qualify=yes
canreinvite=yes
call-limit=4
nat=no

[1002]
type=friend
regexten=1002
secret=1234
context=outcaling
host=dynamic
callerid="1002" <1002>
disallow=all
allow=alaw
allow=ulaw
language=ru
callgroup=1
pickupgroup=1
qualify=yes
canreinvite=yes
call-limit=4
nat=no

  • [1001], [1002] — имена для обозначения номеров.
  • type — типы проверки номеров. Могут быть peer, user или friend. Peer — вызовы сопоставляются с IP-адресами и номерами портов. User — проверка username. Friend — включает возможности peer и user (проверка username и IP-адреса источника) и лучше всего подходит для телефонов и телефонных программ.
  • regexten — добавочный номер. Если не задан, используется имя.
  • secret — пароль для аутентификации.
  • context — контекст или группа правил.
  • host — IP-адрес или имя клиента. Для автоматической регистрации используем dynamic.
  • callerid — идентификатор пользователя при звонке.
  • disallow — запрещает кодеки (задается перед параметром allow).
  • allow — разрешает кодеки. alaw и ulaw — алгоритмы для кодеков g711.
  • language — код используемого языка.
  • callgroup — задает группу устройства (для возможности перехвата).
  • pickupgroup — задает перечень групп, которые можно перехватывать.
  • qualify — включает или отключает периодическую проверку подключенного клиента.
  • canreinvite — включает или отключает прохождение голосового RTP трафика через Asterisk. Устанавливать, только если клиент поддерживает функцию SIP re-invites.
  • call-limit — ограничение количества одновременных вызовов.
  • nat — устанавливается в yes, если клиент находиться за NAT.

systemctl restart asterisk

Проверка

Все, что происходит в Asterisk можно посмотреть в лог-файле командой:

tail -f /var/log/asterisk/messages

Для теста настроенного сервера можно воспользоваться IP-телефоном или софт-фоном на компьютере или телефоне. Например, а качестве SIP-клиента под Windows можно установить бесплатную программу 3CX, для Android — Zoiper.

Подробнее рассмотрим настройку 3CX. Скачиваем ее с официального сайта. Устанавливаем, приняв лицензионное соглашение и нажимая далее. После установки запускаем приложение и на запрос отвечаем, что создадим новый профиль. Нажимаем New и вводим данные для подключения:

Пример настройки подключения к Asterisk в софтфоне 3CX

* настраиваем первый клиент для подключения с логином и паролем 1001 / 1234, второй — 1002 / 1234.

Источник

Adblock
detector