Меню Рубрики

Установка asterisk из rpm

Установка Asterisk 16 на Centos 8

Продолжаю обновление и актуализацию статей после выхода новой версии популярной серверной системы. Сегодня расскажу как собрать из исходников и установить сервер телефонии Asterisk 16 на Centos 8. Установка будет из исходных текстов, так как репозиториев с готовыми пакетами под новую систему я не смог найти.

Цели статьи

  1. Подготовить из исходников все зависимости.
  2. Установить asterisk 16 из исходников.
  3. Запустить asterisk и убедиться в его работоспособности.

Данная статья является частью единого цикла статьей про сервер Centos.

Введение

Устанавливать Asterisk 16 на Centos 8 будем из исходников. Это не для того, чтобы показать олдскул и крутость самостоятельной сборки софта. Это вынужденная мера. Всегда, когда есть возможность установить из пакетов, лучше ей воспользоваться. Либо можно собрать свой пакет и ставить уже из него. Сборка софта из исходников крайняя мера, когда готового пакета просто не существует.

Я устанавливаю версию 16, хотя есть уже 17-я. Именно 16-я версия имеет статус LTS, то есть длительная поддержка. Если вам не нужны новые фичи промежуточных версий, рекомендую всегда ставить lts версии.

Для установки Asterisk 16 на свежую Centos 8 я не нашел репозитория, где бы были собраны все пакеты с зависимостями для быстрой и безпроблемной установки. Так что будем по старинке собирать все руками. Ничего сложного тут нет. Все примерно так же, как и в прошлых версиях. Каких-то новых сложностей или нюансов я не заметил.

Если у вас еще нет готового сервера, то рекомендую мои статьи по установке и настройке Centos.

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

Первым делом надо отключить SELinux. Открываем файл /etc/sysconfig/selinux и меняем параметр.

Для применения настройки нужно перезагрузиться, либо временно приостановить selinux.

Установим теперь пакеты, которые нам понадобятся для сборки. В первую очередь подключим репозиторий epel.

Дальше идет мета пакет Development Tools со всем необходимым для сборки из исходников.

И еще некоторые зависимости, которые будут нужны.

Настройте mysql сервер, задав пароль для root.

На этом подготовка закончена.

Устанавливаем Jansson и pjsip

Все готово к установке непосредственно Astersik

Установка Asterisk 16

Я буду устанавливать LTS версию Asterisk 16. Советую для долгосрочного использования всегда использовать LTS версии. Они в целом стабильнее и дольше срок поддержки. Идем на страницу https://www.asterisk.org/downloads/asterisk/all-asterisk-versions и копируем ссылку на нужную версию. Загружаем ее на сервер.

Устанавливаем на centos 8 пакет libedit-devel.

Выбирайте необходимые модули и звуки, в зависимости от того, что вам нужно. Я в общем случае указываю:

  • Add-ons: format_mp3, res_config_mysql.
  • Core Sound Packages: русские звуки RU-WAV.
  • Music On Hold File Packages: звук WAV.
  • Extras Sound Packages: английский EN-WAV, русского к сожалению нет.

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

Создание пользователя asterisk и запуск

По-умолчанию, asterisk установлен от root и будет запускаться от него же. Я предлагаю для этого создать отдельного пользователя и запускать астериск от него. Для этого создаем пользователя и добавляем его в некоторые группы.

Настраиваем Asterisk на запуск под этим пользователем. Для этого добавляем в конфиг /etc/sysconfig/asterisk параметры:

Теперь добавим примерно то же самое в сам конфиг астера /etc/asterisk/asterisk.conf.

Пробуем запустить asterisk:

Если нет сообщений об ошибке, скорее всего все в порядке. Проверяем статус службы.

Asterisk запустился, но есть небольшие ошибки.

Читайте также:  Установка бетонного забора расценка

Связаны с тем, что в конфигах неверно указан путь к radiusclient. Сейчас исправим это.

Перезапускаем asterisk и убеждаемся, что ошибок нет. Проверим, все ли в порядке, зайдя в консоль:

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

Видео

Для тех, у кого что-то не получается или не понятно, как сделать, записал видео по приведенной инструкции. Видео подтверждает, что материал актуален и если делать по нему, то все получится.

Заключение

На этом установка Asterisk 16 на Centos 8 закончена. Можете приступать к настройке. В этой статье очень подробно рассказано как настроить на астериске базовый функционал по телефонии для среднего офиса или коллектива.

Напоминаю, что данная статья является частью единого цикла статьей про сервер Centos.

Онлайн курс по Linux

Помогла статья? Есть возможность отблагодарить автора

Автор Zerox

30 комментариев

перед созданием пользователя Asterisk и измените его
useradd -m asterisk &&
chown asterisk.asterisk /var/run/asterisk &&
chown -R asterisk.asterisk /etc/asterisk &&
chown -R asterisk.asterisk /var//asterisk &&
chown -R asterisk.asterisk /usr/lib/asterisk

нужно выполнить Asterisk от имени того же пользователя
sed -i ‘s/ASTARGS=»»/ASTARGS=»-U asterisk»/g’ /usr/sbin/safe_asterisk

. Коллеги кто будет обновляться до Asterisk 17.2.0, Copyright (C) 1999 — 2018, Digium, Inc. and others.
обратите внимание на то что по умолчанию отключен модуль sip и походу его не будет скоро.

*******************************
[Mar 3 11:51:45] WARNING[19186]: chan_sip.c:35379 deprecation_notice: chan_sip has no official maintainer and is deprecated. Migration to
[Mar 3 11:51:45] WARNING[19186]: chan_sip.c:35380 deprecation_notice: chan_pjsip is recommended. See guides at the Asterisk Wiki:

localhost*CLI> sip show peers
No such command ‘sip show peers’ (type ‘core show help sip show’ for other possible commands)
localhost*CLI> module load chan_sip.so
Loaded chan_sip.so
SIP channel loading…
== SIP Listening on 0.0.0.0:5060
== Using SIP CoS mark 4
— Message technology ‘sip’ registered.
== Registered channel type ‘SIP’ (Session Initiation Protocol (SIP))
== Registered RTP glue ‘SIP’
== Registered application ‘SIPDtmfMode’
== Registered application ‘SIPAddHeader’
== Registered application ‘SIPRemoveHeader’
== Registered custom function ‘SIP_HEADER’
== Registered custom function ‘SIP_HEADERS’
== Registered custom function ‘SIPPEER’
== Registered custom function ‘CHECKSIPDOMAIN’
== Manager registered action SIPpeers
== Manager registered action SIPshowpeer
== Manager registered action SIPqualifypeer
== Manager registered action SIPshowregistry
== Manager registered action SIPnotify
== Manager registered action SIPpeerstatus
[Mar 3 11:51:45] WARNING[19186]: chan_sip.c:35379 deprecation_notice: chan_sip has no official maintainer and is deprecated. Migration to
[Mar 3 11:51:45] WARNING[19186]: chan_sip.c:35380 deprecation_notice: chan_pjsip is recommended. See guides at the Asterisk Wiki:
[Mar 3 11:51:45] WARNING[19186]: chan_sip.c:35381 deprecation_notice: https://wiki.asterisk.org/wiki/display/AST/Migrating+from+chan_sip+to+res_pjsip
[Mar 3 11:51:45] WARNING[19186]: chan_sip.c:35382 deprecation_notice: https://wiki.asterisk.org/wiki/display/AST/Configuring+res_pjsip
Loaded chan_sip.so => (Session Initiation Protocol (SIP))
localhost*CLI> sip show peers
Name/username Host Dyn Forcerport Comedia ACL Port Status Description
0 sip peers [Monitored: 0 online, 0 offline Unmonitored: 0 online, 0 offline]
localhost*CLI>

Беда. Я только от Macro отказался, переделал все на Gosub. Теперь вот sip выпиливают 🙁 Пустая возня на ровном месте. Переделываешь ради переделывания. Функционал, который используешь, все равно не меняется.

Добрый вечер. При попытки сборки астериска получаю вот что:
checking for embedded pjproject (may have to download)… configuring
[pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.9/pjproject-2.9.tar.bz2 to /tmp/pjproject-2.9.tar.bz2
[pjproject] Retrying download
[pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.9/pjproject-2.9.tar.bz2 to /tmp/pjproject-2.9.tar.bz2
make: *** [Makefile:92: /tmp/pjproject-2.9.tar.bz2] Error 4
make: *** Deleting file ‘/tmp/pjproject-2.9.tar.bz2’
failed
configure: Unable to configure third-party/pjproject
configure: error: Re-run the ./configure command with ‘NOISY_BUILD=yes’ appended to see error details.
По адресу 404, это понятно. Установил этот пакет в ручную, но результата это не дало. В чем причина? Как лечить?

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

Как я понял, просто установить пакет не достаточно. При сборке идет попытка его скачать и установить и она не проходит. Надо либо убрать как-то эту проверку, либо решить вопрос с доступом к github. У меня нормально открывается путь по ссылке на pjproject.

С офф сайта все качается отлично, оттуда я пакет ручками и установил, но вот с гитхаба 404. Собственно вопрос в том и заключается, как убрать эту проверку? И может ли помочь ручной перенос установленного пакета в директорию, в которую пытается скачаться требуемый пакет?

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

Проблема локальная, я согласен. Но вот мне теперь интересно, ставлю астериск на девственно чистую центось, в каком месте что-то пошло не так?

а зачем вам mariadb если вы не подключаете odbc в меню конфигурации?

Чаще всего она все же нужна. В том числе используется в моей статье про настройку астериск. Так что лучше сразу поставить.

выскакивает asterisk.service: Supervising process 4384 which is not
как исправить?

Может кому будет полезно.
При сборке астериска получил ошибку
error: unknown type name ‘my_bool’; did you mean ‘bool’
Я так понял, что в новом mysql переменная my_bool не может быть использована. Не знаю насколько правильно, но это решилось строчкой
sed -i s/my_bool/bool/ ./addons/cdr_mysql.c
По сути просто заменил переменную my_bool на bool в двух местах.

Припоминаю такую ошибку. Вроде тоже видел, но не стал разбираться, потому что прямая работа с mysql уже давно объявлена deprecated, а используется подключение через odbc.

Добрый день!
Спасибо за обзор. lame-3.98.4.tar.gz не пробовали ставить? Make install выводит Nothing to be done for ‘install-exec-am’.

Как насчет утилиты DAHDI? Я не увидел её в процессе установки.

Она еще кому-то нужна? Я ни разу ей не пользовался, поэтому не описываю ее установку.

источник

Как установить Asterisk 16 LTS на CentOS 7 / Fedora

В этой статье мы расскажем как произвести установку Asterisk 16 LTS на CentOS 7 / Fedora. Asterisk – это мощная УАТС с открытым исходным кодом и с огромным количеством корпоративных функций.

Особенности Asterisk

  • Конференц-связь
  • Запись разговоров
  • Мониторинг вызовов
  • Аудио- и видео-конференции
  • Голосовая почта
  • Очередь вызовов
  • Правила совершения звонка
  • Голосовое меню
  • Активные каналы связи
  • Резервное копирование информации
  • Идентификатор вызывающего абонента во время ожидания вызова
  • Парковка вызовов
  • Транскодирование

Подготовка системы

Прежде чем вы начнете выполнять команды установки Asterisk на вашем сервере CentOS 7 / Fedora, убедитесь, что все пакеты в системе обновлены.

Подключим дополнительные репозитории и обновим систему.

Установите SELinux в Permissive Mode, выполнив следующие команды:

Шаг 1: Установка зависимостей Asterisk 16

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

Шаг 2: Загрузка и установка Jansson

Jansson – это библиотека C для кодирования, декодирования и обработки данных JSON. Загрузите и установите его на сервере CentOS 7, выполнив следующие команды:

Шаг 3: Загрузка и установка PJSIP

PJSIP – это бесплатная мультимедийная библиотека с открытым исходным кодом, написанная на языке C, реализующая стандартные протоколы, такие как SIP, SDP, RTP, STUN, TURN и ICE. Клонируйте проект из Github, затем скомпилируйте и установите.

Читайте также:  Установка ветровиков шкода фабия

Шаг 4: Загрузка и установка Asterisk

Теперь, когда у нас установлены все пакеты и зависимости, мы готовы загрузить и установить Asterisk 16 на CentOS 7.

Если все идет хорошо, вы должны получить вывод, подобно приведенному ниже:

Шаг 5: Установка параметров меню Asterisk

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

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

На дополнениях выберите chan_ooh323 и format_mp3 как показано ниже.


В Core Sound Packages выберите форматы аудиопакетов, как показано ниже.


Для Music On Hold выберите следующие минимальные модули:

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

Включить в app_macro разделе «Приложения». По умолчанию в Asterisk 16 Macro() выключен.


Вы можете изменить конфигурацию, которую вы считаете нужной в вашем проекте. Когда закончите, нажмите ‘ Save & Exit ‘.

Устанавливаем библиотеку mp3-декодера.

Чтобы начать сборку и установку Asterisk с выбранными модулями, выполните команды.

Успешная установка сопровождается следующим выводом:

Для вас будет создан Asterisk systemd.

Создайте отдельного пользователя и группу для запуска Asterisk 16 и назначьте права:

Установка пользователя Asterisk.

Перезапустите службу Asterisk для применения настроек.

Установим службу в загрузку

Заключение

Теперь у вас есть работающий Asterisk 16 на сервере CentOS 7. Оставайтесь с нами и оставляйте комментарии, если у вас возникнут какие-либо проблемы с настройкой.

Любое использование материалов сайта возможно только с разрешения автора и с обязательным указанием источника.

источник

Установка Asterisk — CentOS Wiki

Добавление репозитория

Установка Asterisk 11

Для релиза с долговременной поддержкой (1.8):

Для последнего стабильного релиза (с долговременной поддержкой: LTS):

DAHDI

Большинство конфигураций Asterisk включают три основных пакета: основная программа Asterisk (asterisk), драйверы телефонии (zaptel) и PRI-библиотеки (libpri). На данный момент на смену каналу Zap (zaptel) пришел модуль канала DAHDI.

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

  • dahdi-linux: драйвера ядра системы;
  • dahdi-tools: пользовательские утилиты.

По умолчанию, dahdi-linux, должен был быть установлен на первом этапе установки asterisk (как зависимость). Поэтому продолжим:

Примечание: libpri (PRI-интерфейсы ISDN, такие как E1, T1) тоже должен был быть установлен при первом шаге установки asterisk. Вам не обязательно иметь его в системе если вы не используете PRI-интерфейсы.
Если нет уверенности какие пакеты установлены, а какие нет то выполните:

Конфигурация локального межсетевого экрана

Необходимо открыть порт 5060 для обмена по сигнальному протоколу SIP и порты 10000..20000 для RTP трафика.

Внимание: будут открыты порты 5060 и 10000..20000 для всего UDP-трафика.

Русские голосовые файлы asterisk

В последнюю стабильную версию asterisk 10.x уже включены русские голосовые файлы. Они автоматически устанавливаются только при сборке астериска из исходников. В YUM репозитории есть только пакеты с английским и французским языками. По ссылке: http://downloads.asterisk.org/pub/telephony/sounds/releases/ вы можете скачать необходимые вам пакеты голосовых файлов и поместить их в директорию: /var/lib/asterisk/sounds/

Решение проблем

При использовании голосовой почты возникает проблема с отсутствием некоторых мелких голосовых файлов на русском языке. Например есть голосовой файл: «Сообщение», а «Сообщения» и «Сообщений» нет. Учитывая, что данные слова звучат схоже, создадим недостающие файлы:

в приведенном примере голосовые файлы имеют GSM формат.

Yum-repos-asterisk Vs Asterisknow-version

В принципе разница между двумя этими пакетами лишь в следующем:

источник

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