• Архив

    «   Июль 2020   »
    Пн Вт Ср Чт Пт Сб Вс
        1 2 3 4 5
    6 7 8 9 10 11 12
    13 14 15 16 17 18 19
    20 21 22 23 24 25 26
    27 28 29 30 31    

Linksys SPA3102 и сигнал отбоя (Disconnect Tone)

При использовании голосового адаптера Linksys SPA3102 возникает проблема обнаружения адаптером сигнала "занято". Если адаптер не может его определить, он не повесит трубку и линия может "подвиснуть" и будет занята, пока вы не вмешаетесь в ситуацию.
В настройках SPA3102 есть опция Disconnect Tone. Она отвечает за характеристики сигнала, по которым адаптер определяет состояние, когда надо "положить трубку". Disconnect Tone отличается от страны к стране, от производителя к производителю. Если погуглить, то для нашей страны чаще всего можно встретить такие значения:
425@-30,425@-30;3(.35/.35/1+2)
Если вам не подошли эти значения, их нужно определить самостоятельно (или узнать у вашего оператора).

Формула для расчета:
X@-30,X@-30;Y(A/B/1+2),
где
X — частота в Hz;
Y — число повторений;
А — время звучания сигнала в ms;
B — время тишины в ms;
Y — число повторений.

-30 - уровень сигнала, в данном случае минус 30 Db,
1+2 - 3102 поддерживает две частоты для определения (X@-30,X@-30), такая запись означает сравнивать первую и вторую одновременно (тут я возможно ошибаюсь, поскольку документация по этой опции скудная).

Для определения характеристик частоты и времени, нужно записать сигнал "занято" с вашей линии и проанализировать его. Записать сигнал проще всего позвонив с программного sip-телефона (например zoiper для Windows или SFLphone для linux) через вашу аналоговую линию на свой мобильный, включить запись разговора, сбросить звонок, послушать некоторое время "занято".
Полученный файл проанализируйте в удобном для вас аудио редакторе.
Подробная инструкция: http://adminote.blogspot.com/2009/08/spa3102-busy-detection.html

Подставьте значения в формулу. Если частота определяется достаточно точно, укажите одинаковое значение в двух вариантах. Если нет - поэкспериментируйте со вторым значением. Уровень сигнала можно тюнинговать для лучшего обнаружения.
Y - число повторений сигнал+тишина. Для предотвращения ложных срабатываний - увеличивайте, если качество линии плохое - уменьшайте.

В случае с одним из наших клиентов, для аналоговых линий от оператора Билайн у нас получилось так:
Disconnect Tone: 425@-40,425@-40;2(0.5/0.5/1+2)
Источники:
http://adminote.blogspot.com/2009/08/spa3102-busy-detection.html
http://asterisk-pbx.ru/wiki/doku.php/disconnect