Управление Asterisk конференцией из 1С





Пример интеграции 1С и Asterisk для управления конференциями.

Условия.

У нас есть 1С (версия 8.Х) и Linux-сервер (в моем случае ubuntu server 15.04 ) c Asterisk (1.8.28.2) на борту. Для интеграции использовал ВК от Simplit ROM-Asterisk.dll (полностью свободная, но снятая с техподдержки). Про интеграцию можно почитать здесь:

//infostart.ru/public/95691/

//infostart.ru/public/125719/

http://wiki.simplit.info/doku.php/community/rom-asterisk

Цель.

Управление Asterisk-конференциями из 1С. Минимальные задачи, которые я определил для себя:

  1. организация конференции,
  2. добавление и исключение участников конференции,

  3. Управление микрофоном участника конференции.

Конференции в Asterisk.

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

http://asterisk.ru/knowledgebase/asterisk+cmd+meetme

Настройка Asterisk

Для начала создадим одну конференцию (2345), для этого добавляем следующую строку в meetme.conf:

conf => 2345,,321

И правим dialplan (extension.conf):

;meetme – собственно сама конференция

exten => 2345,1,MeetMe(2345,TMx)

;meetme kick all – выгнать всех из конференции

exten => _*0*XXXX*1,1,MeetMeAdmin(${EXTEN:3:4},K)

;meetme kick user (id in conference) – выгнать участника из конференции

exten => _*0*XXXX*1*!,1,MeetMeAdmin(${EXTEN:3:4},k,${EXTEN:10})

Сбор конференции осуществляется организацией звонков с внутреннего номера абонента на номер нашей конференции 2345.

Настройка со стороны 1С

Во обработке Asterisk_ПанельIPтелефонииКонференции в Модуде Формы в функции ПодключениеКСерверуAsterisk() изменяем переменные:

Адрес="...";

Порт="5038";

Логин="...";

Пароль="...";

ПутьКФайлуВК="c:....";

ПоказыватьСобытияAsterisk=Истина;

В справочнике Asterisk_Внутренние_телефоны записаны внутренние абоненты, и принадлежность их к той или иной конференции (н/р общая планерка , региональная планерка). Cравочник Asterisk_Конференции содержит информацию о самих конференциях (Название, id).

 

Принцип работы.

Запускаем обработку →выбираем конференцию (подгружается список участников) →кликаем на кнопу Собрать конференцию (происходит обзвон всех участников).

 

Отключить/подключить участника можно, кликнув по иконке статуса.

 

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

 

Что планируется сделать:

  1. Вести запись конференций (на стороне Asterisk), с возможностью прослушивания их на стороне 1С, с логированием участников и прочих данных.

  2. Добавление пользователя в активную конференцию, которого нет в списке этой конференции.

  3. Разделение конференций по комнатам

6 Comments

  1. Pashkaa

    Компонента же не работает в последних релизах платформы или что то изменилось?

    Reply
  2. lakhnov.alexander

    Ничего не изменилось… Проблемы с компонентой начались с релизов 8.3.6 (самому правда не довелось проверить)

    Reply
  3. V1V

    1С:Предприятие 8.3.6.2076 компонента работает на клиенте без проблем

    Reply
  4. kraspila

    1С:Предприятие 8.3 (8.3.8.2027) и старших компонента падает в ошибку с памятью

    Reply
  5. MICK77

    есть ли альтернатива?

    Reply
  6. user740364

    Я с 1с на вы, потому вопрос может звучать несколько странно.

    Возможно ли сделать автоматическое отключение микрофона пользователей, которые «вылетают» во время конференц связи, что бы участники не слышали уведомлений типа — аппарат вызываемого абонента находится вне зоны действия сети?

    Reply

Leave a Comment

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