Организация конференц-связи на базе Asterisk

Skip to end of metadata
Go to start of metadata

Организация конференц-связи на базе Asterisk
Система Asterisk поддерживает функцию конференц-связи с неограниченным (искусственными лимитами) числом пользователей. Выполняет данную стандратное приложение астериск Организация конференц-связи на базе Asterisk (app_meetme.so).

Возможности

Перечень осноынх фич перечислен ниже:

  • динамическое создание конференций;
  • зашита конференции паролем, набираемым через dtmf;
  • разделение ролей (админ, полноправный участник, слушаетель);
  • Обяъвления о числе участников конференции, входе и выходе из конферененции;
  • поддержка музыки-на-удержании (music-on-hold, MoH);
  • запись конференции в внешний аудио-файл (wav, mp3, ogg и др);
  • обнаружение говорящего (talker detection);
  • предоставление меню для навигации при помощи dtmf;
  • и др.;

Установка

Для того, чтобы на вашем Asterisk заработала Конференция (Meetme) вам необходимо:

Установить Zaptel (нужен ztdummy в случае если нет Digium железа. Если есть Digium железо meetme берет тайминг от карты.)

1. Подгрузить модули (modprobe zaptel ztdummy) и проврить lsmod:

crc_ccitt               6337  1 zaptel и  zaptel                181284  73 ztdummy,zttranscode

2. Установить/пересобрать Asterisk, так как если в момент установки не было zaptel, приложение meetme не соберется. Для asterisk 1.4 надо использовать make menuselect.
3. Убедитесь, что в modules.conf нет запрета на загрузку модуля канала DAHDI. (Присутствует autoload=yes и отсутствует noload => chan_dahdi.so) Без этого модуля приложение конференций Организация конференц-связи на базе Asterisk работает некорректно.

Настройка

Файл настройки конференций (meetme.conf)

;
; этот файл срабатывает (считывается) всегда при выполнение команды app meetme()
[general]
;audiobuffers=32        ; буферизация звука
; Минимальная величина - 2,; максимальная величина - 32.
[rooms] ;комнаты для конференции
;

;для создания комнаты нам нужно использовать

;conf=>номер конференции, код, код админа

;Это файл конфигурации конференций (Default)

Пример meetme.conf

[general]
audiobuffers=32
[rooms]
conf=>2000,1234, 5889465

Итак, в файле конфигурации добавили комнату для конференции. Теперь надо звонок направить на комнату в extensions.conf используя команду Организация конференц-связи на базе Asterisk.

Опции

  • '1' — не произносить фразу "you are currently the only person in this conference" (вы являетесь первым участником телеконференции) первому подключившемуся к конференции пользователю.
  • 'a' — войти в режиме администратора конференции.
  • 'A' — включить мод главного юзера.
  • 'b' — выполнить AGI скрипт указанные в ${MEETME_AGI_BACKGROUND} Default: conf-background.agi Это не работает с non-Zap каналы на ту же конференцию.
  • 'd' — Добавить конференцию динамично.
  • 'D' — Добавить конференцию динамично , без использования кода.
  • 'e' — выбрать свободную конференцию.
  • 'E' — выбрать свободную конференцию без кода.
  • 'I' – анонсировать о заходе юзера в конференцию.
  • 'M' — включить Музыку заднего фона, если нет обсуждения в конференции.
  • 'm' — включить запись.
  • 'p' — выгрузить всех юзеров из конференции с помощью '#'.
  • 'q' — тихи способ (не проигрывается оповещения (вход /выход юзера)).
  • 'r' — Запись конференции (использовать с ${MEETME_RECORDINGFILE} формат файла ${MEETME_RECORDINGFORMAT}). По умолчанию meetme-conf-rec-${CONFNO}-${UNIQUEID} и ормат wav.
  • 's' — Дать возможность пользователям входить в меню (юзера или админа) с помощью '*'.
  • 't' — разрешить только разговор (не слышно).
  • 'T' — использовать детектор разговора.
  • 'v' — разрешить использование видео.
  • 'w' — ждать пока главный юзер не зайдет в конференцию.
  • 'x' — закрыть конференцию если главный юзер вышел.

Пример extensions.conf

exten => 2000,1,MeetMe(2000)

Если с любого СИП юзера набрать 2000 то мы попадем в конференцию с номером 2000.

Функциональные блоки

В данном разделе приводится несколько полезных функциональных блоков с использование meetme.

Вызов внешнего абонента из конференции и приглашение его в конференцию

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.