Установка и настройка потокового шлюза Dana. Интеграция с Asterisk
В последнее время большим спросом пользуются видео встречи и видеоконференции. Для того, чтобы это заработало, необходимо настроить правильно Астериск и поставить прослойку, которая будет обрабатывать видеопотоки. Поэтому в этой статья рассмотрим такой сервис, который называется Dana. Этот продукт был создан компанией Nimble Ape, как фронт энд для Asterisk (Selective Forwarding Unit). Установка Dana На моей […]
В последнее время большим спросом пользуются видео встречи и видеоконференции. Для того, чтобы это заработало, необходимо настроить правильно Астериск и поставить прослойку, которая будет обрабатывать видеопотоки. Поэтому в этой статья рассмотрим такой сервис, который называется Dana. Этот продукт был создан компанией Nimble Ape, как фронт энд для Asterisk (Selective Forwarding Unit).
Установка Dana
На моей системе не было установлено ни nodejs ни yarn, поэтому ниже опишем инструкцию по установке этих пакетов. Начнем с nodejs. Для начала подключим репозитории с 12 версией nodejs.
# curl -sL https://rpm.nodesource.com/setup_12.x | sudo bash -
Теперь имея репозитории установим nodejs с помощью менеджера пакетов yum
# yum install nodejs
NodeJS установлен, теперь нам надо установить yarn. Для этого также подключим его репозитории
# curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
# rpm --import https://dl.yarnpkg.com/rpm/pubkey.gpg
Добавили репозитории и устанавливаем yarn из реп.
# yum install yarn
Теперь скачаем с git в директорию, где будут находиться Dana, исходники. В моем случае, я использовал путь /usr/src. И перейдем в скачанную папку.
# cd /usr/src/
# git clone https://github.com/nimbleape/dana-the-stream-gatekeeper.git
# cd dana-the-stream-gatekeeper
Установим все зависимости, выполнив следующую команду
# yarn
И завершим локальную сборку Dana.
# yarn build
На этом установка Dana завершена. Перейдем к следующему разделу.
Настройка WebRTC на Астериск
Установку кодека opus вы сможете найти по этой ссылке.
После пересборки asterisk с нужными модулями, необходимо перейти к созданию сертификатов. Создадим директорию для сертификатов.
# mkdir /etc/asterisk/keys
И сгенерируем сертификаты для Астериск.
# /usr/src/asterisk-17.5.1/contrib/scripts/ast_tls_cert -C example.voxlink.com -O "Voxlink" -b 2048 -d /etc/asterisk/keys
Когда сгенерированы серты, перейдем к настройке http.conf в конфигурационных файлах asterisk. Откроем его любым текстовым редактором и внесем изменения.
[general]
enabled=yes
bindaddr=0.0.0.0
bindport=8088
tlsenable=yes
tlsbindaddr=0.0.0.0:8089
tlscertfile=<path_to_your_cert_file>
tlsprivatekey=<path_to_your_key_file>
tlscafile=<path_to_your_ca_cert_file>
enablestatic = yes
redirect=/ /static/dana/index.html
Теперь настроим внутренние PJSIP номера с транспортом wss. Для этого открываем файл pjsip.conf любым текстовым редактором.
[wss]
type=transport
protocol=wss
[webrtc-endp]
type=endpoint
aors=webrtc-aors
auth=webrtc-auth
dtls_auto_generate_cert=yes
webrtc=yes
context=videobridge
disallow=all
allow=opus,g722,ulaw,vp9,vp8,h264
max_audio_streams = 1
max_video_streams = 15
[webrtc-aors]
type=aor
max_contacts=100
remove_existing=yes
[webrtc-auth]
type=auth
auth_type=userpass
username=150
password=veryhardpassword
Теперь необходимо добавить в confbridge.conf следующие строки:
[default_bridge]
type=bridge
video_mode=sfu
Поскольку, мы в настройках экстеншена мы указали context=videobrige то надо добавить в диалплан этот контекст:
[videobridge]
exten=>testing,1,ConfBridge(${EXTEN},default_bridge,default_user,sample_user_menu)
На этом настройка Asterisk закончена, перейдем к конфигурированию Dana.
Настройка Dana для Asterisk
Чтобы все настроить перейдем в скачанную ранее директорию с Dana, там, где com выполняли команду yarn
# cd /usr/src/dana-the-stream-gatekeeper
И внесем правки в файл packages.json добавив ниже поля “name” следующую строку:
"homepage" : "https://YOUR_DOMAIN_NAME:8089/static/dana",
Теперь относительно папки, в которой вы находитесь, отредактируем файл src/components/Routes.js и заменим следующее:
<Route exact path="/" component={Login} />
на
<Route exact path="/static/dana/index.html" component={Login} />
Остался последний шаг. Скопировать директорию build по следующем направлению /var/lib/asterisk/static-http/ переименовав в dana:
# cp build /var/lib/asterisk/static-http/dana
Остались вопросы?
Я - Компаниец Никита, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
VoIP оборудование
ближайшие курсы
Новые статьи
10 доводов в пользу Asterisk
Распространяется бесплатно.
Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.
Безопасен в использовании.
Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.
Надежен в эксплуатации.
Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.
Гибкий в настройке.
Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.
Имеет огромный функционал.
Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.
Интегрируется с любыми системами.
То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.
Позволяет телефонизировать офис за считанные часы.
В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.
Отличная масштабируемость.
Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.
Повышает управляемость бизнеса.
Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.
Снижает расходы на связь.
Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.