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

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

Далее »

автор igorg

В интернете есть много статей, говорящих о том как сделать перекодирование записей разговоров в 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 — нет.

Оригинал: https://blog.iqtek.ru/?p=304

автор igorg

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

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

Конфигурация FreePBX

Route заголовки отправленные chan_pjsip

Оригинал: https://blog.iqtek.ru/?p=299

автор igorg

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

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

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

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

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

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

Оригинал: https://blog.iqtek.ru/?p=249

автор igorg

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

Далее »

автор igorg \\ теги: , , , ,

В этом году мне удалось принять участие в community-конференции Astricon компании Digium (ныне часть Sangoma), посвященную развитию проекта Asterisk. Данная конференция собирает представляет community со всего мира и позволяет познакомиться с актуальными вопросами, с которыми сталкиваются разработчики VoIP систем.

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

Для начала хочу выразить благодарность семье, которая мужественно вынесла мое отсутствие в течении почти двух недель. Также хочу заметить, что в ссылках на сервисы далее по тексту могут быть использованы промо-ссылки. Если используете и это будет реально полезно — буду только рад. В комментариях задавайте вопросы, буду рад что-то подсказать. Далее »

автор igorg \\ теги: , , , , , ,

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

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

Далее »

автор igorg

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

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

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

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

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

Далее »

автор igorg

 

Браузеры идут вперед семимильными шагами, при этом складывается ситуация, когда обновление браузеров у клиента иногда требует обновления и инфраструктуры.

Мы с толкнулись с тем, что в нашей инфраструктуре не работают новые версии Chrome. Поиск по изменениям показал, что в в 52 версии Chrome перешли на использование только на использование ECDSA алгоритма при согласовании подключения DTLS. Но в версии openssl до 1.0.2 эти алгоритмы не поддерживаются. «Правильный» openssl на Ubuntu можно установить таким способом:

Проверить версию после установки:

После этого достаточно перезапустить freeswitch для работы с правильными версиями библиотеки openssl.

 

Оригинал: http://blog.iqtek.ru/?p=100

автор igorg

1280px-opus_bitratelatency_comparison-svg

Долгое время freeswitch обладал фактически эксклюзивной и первой реализацией кодека OPUS. Для Asterisk существовали решения на gihub, но они имели ряд недостатков — не имели возможности настройки через codecs.conf и не использовали информацию из SDP для своей работы.

Во время проведения Astercon 2016 было объявлено что для asterisk 13 и 14 выпущен официальный модуль кодека OPUS.

Далее »

автор igorg \\ теги: ,