Хотите узнать, как настроить функцию Asterisk Conference Bridge на Ubuntu Linux? В этом уроке мы расскажем вам, как установить сервер Asterisk VoIP, как настроить расширение SIP и как включить функцию Bridge Bridge на Ubuntu Linux версии 16.

Ubuntu 17 не смог скомпилировать необходимые пакеты.

Список оборудования:

В следующем разделе представлен список оборудования, используемого для создания этого учебника Asterisk.

Все перечисленные выше аппаратные средства можно найти на веб-сайте Amazon.

Asterisk Playlist:

На этой странице мы предлагаем быстрый доступ к списку видеороликов, связанных с Asterisk.

Не забудьте подписаться на наш канал YouTube, названный FKIT.

Связанное с Asterisk учебное пособие:

На этой странице мы предлагаем быстрый доступ к списку руководств, связанных с Asterisk.

Учебник — Установка Asterisk в Linux

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

# dpkg-reconfigure tzdata

Установите пакет Ntpdate и установите правильную дату и время сразу.

# apt-get install ntpdate
# ntpdate pool.ntp.br

В нашем примере команда Ntpdate использовалась для установки правильной даты и времени с использованием бразильского сервера pool.ntp.br

Давайте установим службу NTP.

# apt-get install ntp

NTP — это сервис, который будет поддерживать обновление нашего сервера.

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

# date

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

Используйте следующие команды для установки необходимых пакетов.

# apt-get update
# apt-get install linux-headers-`uname -r`
# apt-get install build-essential

Загрузите, скомпилируйте и установите пакет DAHDI.

# mkdir /downloads
# cd /downloads
# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
# tar -zxvf dahdi-linux-complete-current.tar.gz
# cd dahdi-linux-complete-2.11.1+2.11.1/
# make all
# make install

Загрузите, скомпилируйте и установите пакет LIBPRI.

# cd /downloads
# wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz
# tar -zxvf libpri-current.tar.gz
# cd libpri-1.6.0
# make all
# make install

Загрузите программное обеспечение Asterisk и установите необходимые пакеты.

# cd /downloads
# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
# tar -zxvf asterisk-15-current.tar.gz
# cd asterisk-15.4.0/contrib/scripts/
# ./install_prereq install

Скомпилируйте и установите программное обеспечение ASTERISK.

# cd /downloads/asterisk-15.4.0
# ./configure
# make menuselect
# make
# make install

Команда make menuselect откроет меню, в котором вы можете выбрать модули, которые должны быть установлены.

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

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

# make samples

Для установки файлов конфигурации используйте следующие команды:

# make config
# make install-logrotate

Для запуска службы звездочки используйте следующие команды:

# /etc/init.d/asterisk start

Учебник — Мост конференции Asterisk

После завершения установки Asterisk нам нужно создать расширения Sip.

Удалите содержимое файла конфигурации sip.conf.

# echo > /etc/asterisk/sip.conf

Отредактируйте файл конфигурации sip.conf.

# vi /etc/asterisk/sip.conf

Вот содержимое файла.

[general]

allowguest=no
srvlookup=no
udpbindaddr=0.0.0.0
tcpenable=no
canreinvite = no
dtmfmode=auto

;

[ramal-voip](!)

type=friend
context=INTERNO
host=dynamic
disallow=all
allow=ulaw
allow=alaw
allow=g729

;

[100](ramal-voip)

secret=pass100
callerid=»Vegeto» <100>

;

[200](ramal-voip)

secret=pass200
callerid=»Kakarot» <200>

Затем нам нужно создать абонентскую группу.

Удалить содержимое конфигурационного файла extensions.conf

# echo > /etc/asterisk/extensions.conf

Отредактируйте файл конфигурации extensions.conf.

# vi /etc/asterisk/extensions.conf

Вот содержимое файла.

[general]

[INTERNO]

;
; EXTENSION 100 (FOR TEST ONLY)
;
exten => 100,1,Dial(SIP/100)
;
; EXTENSION 200 (FOR TEST ONLY)
;
exten => 200,1,Dial(SIP/200)

;
;CONFERENCE — GUEST
;
exten => 666,1,Progress()
exten => 666,2,Wait(1)
exten => 666,3,ConfBridge(1,default_bridge,default_user)

;
;CONFERENCE — ADMIN
;
exten => 777,1,Progress()
exten => 777,2,Wait(1)
exten => 777,3,ConfBridge(1,default_bridge,admin_user)

В нашем примере было создано пользовательское расширение 100.

В нашем примере было создано расширение пользователя 200.

В нашем примере конференционное расширение 777 должно использоваться администратором конференции для создания конференц-вызова.

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

Удалите содержимое конфигурационного файла confbridge.conf.

# echo > /etc/asterisk/confbridge.conf

Отредактируйте конфигурационный файл confbridge.conf.

# vi /etc/asterisk/confbridge.conf

Вот содержимое файла.

[general]

[admin_user]

type=user
pin=5555
marked=yes
admin=yes
music_on_hold_when_empty=yes
announce_user_count=yes

[default_user]

type=user
pin=1234
wait_marked=yes
end_marked=yes
music_on_hold_when_empty=yes
announce_user_count=yes

[default_bridge]

type=bridge
max_members=10

В нашем примере было создано два пользователя.

Первым созданным пользователем был администратор с паролем PIN 5555.

Созданный второй пользователь был обычным пользователем, у которого есть пароль PIN 1234.

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

# service asterisk stop
# service asterisk start
# service asterisk status

Ниже приведен пример вывода статуса службы Asterisk.

● asterisk.service — LSB: Asterisk PBX
Loaded: loaded (/etc/init.d/asterisk; bad; vendor preset: enabled)
Active: active (running) since Thu 2018-05-03 11:16:27 -03; 4s ago
Docs: man:systemd-sysv-generator(8)
Process: 28268 ExecStop=/etc/init.d/asterisk stop (code=exited, status=0/SUCCESS)
Process: 28318 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS)
Tasks: 82
Memory: 34.1M
CPU: 645ms
CGroup: /system.slice/asterisk.service
└─28332 /usr/sbin/asterisk

Теперь вы можете использовать VoIP-клиент SIP для подключения к серверу Asterisk.

Мне нравится использовать VoIP-клиент Zoiper.

• Имя пользователя — 100
• Пароль — pass100
• Host — IP-адрес сервера Asterisk
• Домен — IP-адрес сервера Asterisk

Время проверки вашего конференц-моста Asterisk.

Используйте расширение 100 для вызова 666 и введите PIN 5555, чтобы создать мост конференции.

Используйте расширение 200 для вызова 777 и введите PIN 1234, чтобы присоединиться к конференц-вызову.

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

# service asterisk stop
# asterisk -vvvvvv -g -dddddd -c