BLF уведомление о входящем вызове на SIP-транке

Имеется несколько многоканальных SIP-транков. Для того, чтобы была возможность определить с какого транка пришел вызов на телефонах настроен BLF. Но, когда хотя бы один канал на транке занят, то соответствующая BLF кнопка постоянно горит (т.к. передается статус INUSE). Если поступает еще один вызов, то индикация никак не меняется. Понять с какого транка пришел звонок нельзя.

Сделаем так, чтобы при любом входящем звонке соответствующая кнопка BLF мигала.

Внесем изменения в dialplan. Добавим custom hint, которому при входящем вызове будем передовать статус RINGING, а при ответе или отбое передавать статус NOT_INUSE.
Контекст входящих вызовов приводим к следующему виду:

[incoming]
exten => s,1,Set(DEVICE_STATE(Custom:ringingMyTrunk)=RINGING)
exten => s,n,Dial(SIP/101,20,mtTM(noringingMyTrunk))
exten => s,n,Hangup

exten => h,n,Set(DEVICE_STATE(Custom:ringingMyTrunk)=NOT_INUSE)

[macro-noringingMyTrunk]
exten => s,1,Set(DEVICE_STATE(Custom:ringingMyTrunk)=NOT_INUSE)

В контекст BLF добавим Custom:ringingMyTrunk

exten => myTrunk,hint,SIP/myTrunk&Custom:ringingMyTrunk

Добавить комментарий

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