12 авг. 2009 г.

SPA3102 - определение сигнала занято (busy detection)

В работе использую две связки Linksys SPA3102 с GSM-шлюзами. Шлюзы разных производителей - Sprut Universal и Eccom Basis. Eccom Basis зарекомендовал себя как более функциональный, Sprut Universal - как более надёжный.

Именно с надёжностью Eccom Basis возникли большие проблемы. Шлюз иногда зависал, в Flash Operator Panel это выглядело как будто никто не положил трубку. Помогала перезагрузка Эккома по питанию. Замена карточки, обновление прошивки и разборки с Basis Data Suite 2 не помогли.

Как оказалось - несмотря на заявленую поддержку Polarity Reversal, Eccom не ложит трубку после окончания звонка. Поэтому я решил прописать на SPA3102 корректное значение Disconnect Tone, с правильными частотами.
Для этого запустил софтфон (пользовался Zoiper) и с помощью стандартной в Windows 7 утилиты Sound Recorder записал сигнал отбоя шлюза.

Далее установил SigView и открыл в нём запись.

Получилась вот такая симпатичная картинка:

С помощью FFT Spectrum Analys посмотрел значение основной частоты гудка.

Далее высчитал время сигнала и время тишины.
После этого округляем получившиеся значения и превращаем их в формулу для Linksys. Формула выглядит так:

X@-30,X@-30;Y(A/B/1+2)

где:
  • X - частота (у меня 464 Герца)
  • Y - количество гудков, которые будет слушать Linksys и оператор перед тем как положить трубку (я задал 4)
  • A - период сигнала гудка (0.350 с)
  • B - период тишины (0.350 с)
Для GSM-шлюза Eccom Basis и оператора Киевстар получилась следующая формула:

464@-30,464@-30;4(.350/.350/1+2)

Её и подставляем в параметр Disconnect Tone. Linksys начал ложить трубку вместо шлюза, а прекратятся ли зависания - покажет время.

По умолчанию стоит следующая формула:

480@-30,620@-30;4(.25/.25/1+2)

18 комментариев:

Unknown комментирует...

Замечательно, теперь будет куда указать на инструкцию по настройке тона. Кстати линксис сам тоже должен понимать смену полярности?

Unknown комментирует...

Спасибо.
Реверс полярности по теххарактеристикам поддерживают оба gsm-шлюза. Но факт остаётся фактом - Sprut Universal ложил трубку, Eccom Basis - нет.
Кстати, первые сутки - полёт нормальный, зависаний нет. Раньше один раз в день шло стабильное зависание.

Анонимный комментирует...
Этот комментарий был удален администратором блога.
Анонимный комментирует...
Этот комментарий был удален администратором блога.
Анонимный комментирует...
Этот комментарий был удален администратором блога.
Анонимный комментирует...

Большое спасибо автору. Помогло со SPA8800.

Unknown комментирует...

Всегда пожалуйста!

От себя добавлю, что не хватает документации по настройке в постСССР-овских реалиях. Приходится играться.

SERg комментирует...

Большое спасибо автору, Пролил свет -)))но проблема другая как прослушать сигнал у http://cgi.ebay.com/NEW-Fixed-Cellular-Terminal-GSM-Gateway-Dual-Band-/250651860709?cmd=ViewItem&pt=AU_Networking&hash=item3a5c03dee5 так как SPA3102 не кладет трубку а не GSM gateway.

Анонимный комментирует...

очень полезная статья
смог посчитать что в Кургане у Ютела следующая получается строка
450@-30,450@-30;4(.35/.35/1+2)

Unknown комментирует...

425@-30,425@-30;3(.35/.35/1+2) comstar Петербург

Анонимный комментирует...

Ebaniy Orange Telecom, MSK:
425@-30,425@-30;3(.35/.35/1+2)

Shakirov комментирует...

А как вы софтфоном с аналоговй линии тон отбоя записывали, я не совсем понял. Можете пояснить?

Unknown комментирует...

Сделал колонки погромче и включил звукозапись. Можно было и технологичнее — перенаправить аудиопоток. Но и так сойдёт.

Анонимный комментирует...

Реально полезная статья. Действительно помогло в связке SPA8800 - 'Siemens HP'.

Unknown комментирует...

Большое спасибо за статью, помогло на SPA8800

Unknown комментирует...
Этот комментарий был удален автором.
Unknown комментирует...
Этот комментарий был удален автором.
Unknown комментирует...

Большое спасибо за статью.
В Asterisk можно настроить запись вызова, и более точно прослушать запись.

Азербайджан, Баку
Disconnect Tone: 450@-30,450@-30;1(.35/.35/1+2)