Слышимость ARI snoop в режиме whisper

В Asterisk интерфейсы ARI предоставляют набор примитивов, позволяющих реализовывать собственные приложения, задавая собственную гибкую логику.

Например мы можем сделать сложные «конференции», в которых выборочно ограничивать слышимость между участниками или добавляя индивидуальные оповещения её участникам. Сделать это можно используя ARI endpoint /snoop

Читать далее«Слышимость ARI snoop в режиме whisper»

Запись разговоров на RAM-диск во FreePBX

В интернете есть много статей, говорящих о том как сделать перекодирование записей разговоров в MP3, но не менее актуальным вопросом в нагруженной системе является экономия ресурсов при записи изначального wav файла.

Разумным выходом является запись файла на RAM диск и последующее перекодирование и сохранение записи на примонтированный внешний ресурс. Однако FreePBX используя штатные опции пишет и читает записи из одного и того же места.

Для того чтобы начать писать записи в отдельную папку, при том что читать FreePBX в CDR reports продолжит из той же папки /var/spool/asterisk/monitor достаточно поместить такое дополнение в extensions_custom.conf:

[globals](+)
MIXMON_DIR=/var/spool/asterisk/monitorRAM/

PS. Если перекодировать файлы записей, то лучше кодировать их в mp4, а не mp3. Так как mp4 штатно поддерживается в CDR Reports, а mp3 — нет.

PPS. Еще одной полезной опцией будет cache_record_files в asterisk.conf. Она позволяет писать файл во временную папку, а перемещать в постоянное только после завершения записи.

Задание нескольких proxy в chan_pjsip

В процессе разработки относительно сложных конфигураций нам потребовалось добавить свой промежуточный SIP proxy в систему, где транки с операторами уже используют Outbound Proxy.

Основная страница где говорится о работе с proxy из chan_pjsip не говорит нам ничего о такой конфигурации и показывает как задать один Proxy. Но на самом деле можно задать всю цепочку используемых Proxy прямо из конфигурации chan_pjsip.

Конфигурация FreePBX
Route заголовки отправленные chan_pjsip

Переменные sip протокола при переходе на pjsip

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

  • Что: переменная SIPCALLID
  • Замена: вызов функции CHANNEL(pjsip,callid)

Положительным моментом является то, что данный вызов является более логичным и документация по нему доступна при просмотре помощи по функции CHANNEL. callid совершаемого вызова доступен до отправки INVITE в pre-dial процедуре, вызываемой приложением Dial()

  • Что: приложение SipAddHeader()
  • Замена: функция PJSIP_HEADER()

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

Также хотелось отметить, что все такие заметки мы начинаем собирать о обобщать в нашей базе знаний — https://kb.iqtek.ru, надеемся она сможет стать полезным ресурсом наравне с другими зарекомендовавшими себя сайтами по теме Asterisk и VoIP.

Настройка транка с регистрацией в chan_pjsip и FreePBX

Наша компания уже в течении последнего года использует в настройке всех новых систем на Asterisk канал chan_pjsip для работы с SIP протоколом. Часто появляются вопросы, в которых пользователи спрашивают о том, как настроить ту или иную конфигурацию по аналогии с chan_sip.

Читать далее«Настройка транка с регистрацией в chan_pjsip и FreePBX»

Смешанный режим. Делаем эффективный КЦ еще более эффективным.

Традиционно колл-центры являются центрами приема входящих звонков, ведь в каждой более-менее крупной компании существует отдел принимающий звонки клиентов. Примеров можно привести массу: горячая линия банков, техническая поддержка провайдеров, регистратуры медицинских учреждений. На долю исходящих вызовов приходится меньшая часть всех звонков колл-центров, по разным оценкам их доля составляет от 9 до 12%.

Читать далее«Смешанный режим. Делаем эффективный КЦ еще более эффективным.»

Сравнение стратегий обзвона

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

Читать далее«Сравнение стратегий обзвона»

Система предиктивного обзвона IqDialer

На страницах нашего блога есть видео с докладом, посвященным продукту, который разрабатывается нашими специалистами уже на протяжении двух лет – системе предиктивного обзвона «IqDialer». С момента последнего упоминания прошло больше года и, как часто бывает с программным обеспечением, в «IqDialer» появились существенные изменения и дополнения. В этой статье мы готовы кратко описать все основные части программы, ее преимущества и направление развития всей системы. Начнем с общих понятий, которые помогут быстро погрузить читателя в реалии: система предиктивного обзвона – это программное обеспечение, с помощью которого любой Call-центр может эффективнее провести свою работу.

Читать далее«Система предиктивного обзвона IqDialer»

SQL из диалплана

По следам прошедшей конференции AsterConf’2017 мы решили опубликовать несколько простых советов, которые оказались полезными участникам конференции.

Первый относится к использованию SQL запросов в системах, которые построены при помощи написания диалплана без применения графических оболочек вроде FreePBX. Для работы c SQL из диалплана чаще всего используют возможности модуля func_odbc. Однако часто оказывается неудобным то, что для каждого запрос а требуется редактирование отдельного файла. Ниже описание того, как этого избежать и задавать все запросы в диалплане.

Читать далее«SQL из диалплана»

Что нового в Asterisk 15

Совсем скоро должна появиться релизная версия Asterisk 15. В новой версии Asterisk Digium провели массивное изменение ядра системы, что вызвало отхождение от принципов нумерации и выпуска LTS релизов. Таким образом:

  • Asterisk 15 становится не-LTS релизом со сроком поддержки 2 года
  • Поддержка Asterisk 13 продляется до 2021 года

Основными нововведениями при этом являются:

  • Поддержка мульти-поточности в работе с RTP (в основном для WebRTC в chan_pjsip)
  • Внедрение API для абстракции при работе с SDP
  • Реализация спецификации BUDLE для передачи нескольких RTP потоков единым транспортом

Более подробный список изменений под катом.

Читать далее«Что нового в Asterisk 15»