Jautājums: Использование функции BLF на IP-телефонах D-Link

Atbilde: 

Что такое BLF
Функция BLF (Busy Lamp Field) – это возможность отслеживать состояние линий других абонентов в реальном времени на “системном” телефоне, обычно расположенном у секретаря. Как правило, секретарь (или директор) могут не только пассивно наблюдать за состоянием линий, но и активно вмешиваться в разговор, перехватывать звонок и т.д. Для реализации этих возможностей офисные мини-АТС комплектуются специальными системными телефонами с расширенным набором кнопок и/или возможностью подключения дополнительных панелей кнопок. Кроме достаточно высокой цены эти аппараты обладают существенным ограничением: они могут работать только с определёнными моделями мини-АТС в линейке производителя. И если требуется переход на более мощную и новую станцию, то стандартная практика - это замена всего комплекса “мини-АТС – системные телефоны”.

Современные возможности VoIP

Так выглядит современный IP-телефон

Переход на IP-телефонию унифицировал сигнализацию между IP-АТС и IP-телефонами. Был принят единый протокол для разнообразных VoIP-устройств различных производителей. Покупатель теперь не ограничен в выборе типа IP-АТС и VoIP-оборудования: любые устройства обязаны “понимать” друг друга в рамках единого протокола IP-телефонии. В данный исторический момент победителем и самым широко применимым является протокол SIP.

BLF не относится к основному и необходимому функционалу IP-АТС. Однако это приятное дополнение, как и в старых мини-АТС, должно поддерживаться и IP-АТС, и IP-телефоном. Различие лишь в том, что к любой IP-АТС можно подключить любой IP-телефон с возможностью отображения BLF. И такая система должна функционировать.

Много клавиш не бывает

Модуль расширения клавиш DPH-400EDM

Компания D-Link выпускает модуль расширения клавиш DPH-400EDM (http://dlink.ru/ru/products/8/1703.html), который можно использовать также для функций BLF. Все 26 клавиш на модуле перепрограммируемые и позволяют выбрать около двух десятков функций. Данный модуль совместим как со старшими моделями IP-телефонов – DPH-400S/SE (http://dlink.ru/ru/products/8/1704.html), так и с младшими – DPH-150S/SE (http://dlink.ru/ru/products/8/1777.html). К каждому телефонному аппарату можно подключить одновременно до 5-ти таких модулей. Таким образом, общее количество функциональных клавиш может достигать 130-ти. Телефоны поддерживают протокол SIP.

IP-АТС: что по чём

Телефонных станций, работающих по протоколу SIP, уже множество. Есть как программные, так и аппаратные решения. Как платные, так и бесплатные. Рассмотрим самое распространённое решение – бесплатную программную IP-АТС – Asterisk (www.asterisk.org). Впечатляющий функционал превосходит многие платные решения. Мало того, во многих из них в качестве базы используется именно бесплатный (freeware) Asterisk. Минусом Asterisk-а можно считать настройку. Она производится путем описания работы системы в текстовом виде в нескольких конфигурационных файлах. Тем не менее, это вполне по силам системному администратору. Настройка же обычной офисной мини-АТС по гарантийным условиям производителя, как правило, требует работы сертифицированного специалиста за дополнительную оплату.

Настроим Asterisk

Рассмотрим последние (на момент написания статьи) релизы Asterisk: 1.8.25.0 и 11.7.0. В них (и более ранних версиях) произошли небольшие изменения в параметрах настроек. Нас, в первую очередь, интересует файл конфигурации sip.conf. В новых версиях Asterisk-а появился параметр “callcounter”, который активирует возможность использования значения “DEVICE_STATE”. По умолчанию, строка “call-counter=yes” закомментирована символом “;”, который надо удалить. Если вы не хотите разрешать этот параметр глобально, то его можно прописать только для конкретных аккаунтов в соответствующих учётных записях – экстеншенах. Для удобства настройки и использования опции BLF лучше выделить её в отдельный контекст в правилах звонков (dialplan) – extensions.conf. По умолчанию параметр “allowsub-scribe=yes” активен. Убедитесь, что это так. В настройке экстеншена для поддержки BLF создайте отдельный контекст – subscribecontext. Приведу пример этих дополнительных параметров в sip.conf:

[general]

callcounter=yes
allowsubscribe=yes

[Phone_with_BLF]

context = Ph_w_BLF
subscribecontext = Func_BLF

При использовании такой записи к правилу (dialplan) Func_BLF можно будет обращаться одновременно из нескольких экстеншенов.

Прописываем диалплан в extensions.conf:
[Ph_w_BLF]
exten => _.,1,Dial(SIP/${EXTEN}) ;                      в общем виде

[Func_BLF]
exten => _.,hint,SIP/${EXTEN} ;                            вывод состояния для всех номеров

Для отработки функционала BLF этого, в принципе, достаточно. Однако кнопки модуля расширения пока остаются пассивными: нажатие на них ни к чему не приведёт. Добавим правило, согласно которому будет осуществляться перехват звонка – PickUp. Примем условие, согласно которому целевой (не групповой) перехват звонка будет происходить при наборе двух звёздочек и номера, с которого требуется “снять” входящий звонок: “**+№”. В файле extensions.conf в разделе [Ph_w_BLF] добавим правило:

exten => _**.,1,PickupChan(SIP/${EXTEN:2}) ;                    в общем виде

Осталось только перегрузить модули Asterisk.

На этом настройка нашей IP-АТС завершена. Хочу заметить, что это демонстрационный пример настроек. Например, шаблоны диалплана лучше указывать как “_XXX” – все 3-хзначные номера – вместо “_.”; использовать завершающую функцию “Hangup()” и т.д.

Настройка Add-On microPBX на DNS-325/DNS-327L

Приложение для сетевого накопителя DNS-325 или DNS-327L – microPBX – основано на Asterisk. Оно изначально настроено для работы с BLF. Требуется настроить лишь IP-телефоны.

Настройка IP-телефона

Приступим к настройке телефонного аппарата. В web-меню телефона надо перейти на страницу “Phone->Ext. Key”. С помощью выбранной web-страницы происходит управление модулем расширения, в котором можно задать индивидуальную настройку для каждой клавиши. Задайте значения как на скриншоте.

Пример настройки модуля расширения клавиш

Пояснение требует, наверно, только поле “Subtype”. Логично было бы выбрать параметр “BLF”. Однако в этом случае не отображается состояние отключённого абонента – индикатор продолжает гореть зелёным. В случае выбора значения “Presence” (наличие, присутствие) индикатор получает ещё одно состояние: погашено в случае отсутствия регистрации абонента. Последнее поле – номер с двумя звёздочками – для целевого перехвата звонка согласно правилу, прописанному нами выше в диалплане Asterisk-а.

Если всё настроено правильно, то после регистрации телефона на IP-АТС модуль расширения клавиш начнёт отображать состояние выбранных абонентов в виде:

  • индикатор не горит – абонент отключён / не зарегистрирован на IP-АТС;
  • индикатор светится зелёным – абонент активен и свободен (можно ему звонить этой клавишей);
  • индикатор моргает красным – абоненту идёт вызов (можно перехватить звонок);
  • индикатор горит красным – абонент занят.

Итого

Поддержка BLF — это ещё один шаг от обычной цифро-аналоговой телефонии к полностью цифровой “компьютерной” IP-телефонии. Достаточно произвести дополнительные несложные настройки, и IP-телефон получает возможности, которые до недавнего времени были присущи специализированным решениям – мини-АТС. Совместимость программно-аппаратного VoIP-комплекса по единому протоколу SIP позволяет подключать разнообразное VoIP-оборудование, что ведёт к существенному упрощению и унифицированию системы телекоммуникаций компании.