Страница 1 из 1

Определение сигнала "Занято" (Busytone)

Добавлено: 13 апр 2014 20:03
artis35
Здравствуйте, уважаемые профессионалы и специалисты!

В Вологде, для одного из наших клиентов в настоящий момент реализуем проект по постепенному внедрению IP-телефонии, в связи с чем установили TAU32M.IP.
И у нас сейчас очень остро встал вопрос, связанный с тем, что шлюз TAU32 не определяет Busy Tone. Если быть точным, то не срабатывают настройки, записанные в PBX->Ports->Subscriber Profiles-> Profile 2, поле "Busytone detection parameters:". Мы уже перебрали кучу вариантов, но все равно шлюз "не понимает", что трубка другим абонентом (имеется в виду - внешним абонентом, с которым установлен коннекшен через городскую линию) положена и не кладет трубу.
Вкратце опишу конфигурацию, которую мы строим, а также приложу аудиофайлы с тонами из городской линии, по которым мы определяли сигналы "Ответ станции" и "Занято".

Итак. У нас имеется 1 аналоговая линия, приходящая от провайдера (Ростелеком). Эту линию я завел на FXO1, платы 8FXO, шлюза ТАУ32.
На указанный порт у меня настроен как SIP-профайл (где прописан адрес моего сервера Asterisk), так и Subscriber Profile (где указаны необходимые настройки для FXO-линий). Также на FXO-порту настроен hotline-номер, с помощью которого входящий вызов (от провайдера в офис) я десантирую на Asterisk.
Параметры, настроенные в соответствующем профиле Subscriber Profiles, такие (приведены на скриншоте):
Dialtone detection parameters: 425;0(2000/0/1) (такие были по умолчанию, не менялись)
Busytone detection parameters: 441;2(350/350/1) (попытались определить с помощью звуковой программы)
Ringback tone detection parameters: 425;0(1000/4000/1) (новый параметр, появился после апдейта прошивки)

Как мы определяли Busytone? Записали с линии в аудиофайл поток и потом закинули в программу Audacity (как определять тональные параметры, нашли тут: http://habrahabr.ru/post/135219/, абзац "Настройка disconnect tone на SPA3102").
И соответственно частоту, и интервалы померяли в этой программе (см скриншот). Но даже после этого ничего не поменялось - шлюз все равно не определяет Busytone. В связи с чем большая просьба - помогите это сделать. Либо подскажите как, что можно подкрутить?
К посту прикладываю аудио файл записи сигнала "Занято", выдаваемого на ростелекомовской линии:
1) Аудио файл: http://yadi.sk/d/n9eD_CGRMMYYn
2) Проект в Audacity (вместе с аудиофайлом): http://yadi.sk/d/U5pweYmzMMYYe

Прошу помочь, буду очень признателен!

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 15 апр 2014 14:02
Женя
А можете прислать файл конфигурации TAU32M?

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 17 апр 2014 17:13
Женя
обманул Ваш анализатор похоже, у меня получилось 425 Гц, длительность/пауза 150/150
попробуйте так:
Busytone detection parameters 425;1(150/150/1)

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 17 апр 2014 17:47
artis35
Евгений, приветствую!

Прошу прощения, что не писал в тему - как Вы наверное в курсе, я задействовал еще один канал для решения проблемы через хелпдеск, имеющийся у нашей организации (Вокзал-Инфоком).

Вместе с тем, благодарю за помощь в решении проблемы, но хотел бы уточнить все-таки момент.

Как вы определили такие параметры? Сейчас я получил ответ, что аудио поток вы вытащили из дампа Wireshark и проанализировали его в SoundForge. А не могли бы Вы написать, как вытащить поток из дампа wireshark, чтобы мне можно было написать обстоятельный мануал по данной проблеме (думаю у многих, с нестандартными параметрами тонов в линиях, имеются такие же проблемы)?

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 17 апр 2014 20:10
2life
Я делаю так.
1. Сначала перехватываю пакеты с помощью tcpdump, команда в консоли tcpdump -i any -s0 -nnvvX -w /home/user/fxo.pcap
2. Открываю сохранённый файл в Wireshark'е, далее Telephony - Voip Calls. Нахожу интересующий меня звонок, выбираю Player, далее Decode, воспроизводимый файл, записываю с помощъю того же Audacity.
3. Оцениваю параметры сигнала, с помощъю Audacity.

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 17 апр 2014 23:37
artis35
2life писал(а):Я делаю так.
1. Сначала перехватываю пакеты с помощью tcpdump, команда в консоли tcpdump -i any -s0 -nnvvX -w /home/user/fxo.pcap
2. Открываю сохранённый файл в Wireshark'е, далее Telephony - Voip Calls. Нахожу интересующий меня звонок, выбираю Player, далее Decode, воспроизводимый файл, записываю с помощъю того же Audacity.
3. Оцениваю параметры сигнала, с помощъю Audacity.



Спасибо огромное! Мы тут с коллегой покрутили Wireshark и нашли еще дополнительный (не уверен, что достаточно верный) способ - мы смотрели в параметр Telephony -> RTP -> Stream Analysis. И дальше все так же.

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 18 апр 2014 09:51
Bokrenok
2life писал(а):2. Открываю сохранённый файл в Wireshark'е, далее Telephony - Voip Calls. Нахожу интересующий меня звонок, выбираю Player, далее Decode, воспроизводимый файл, записываю с помощъю того же Audacity.


А можно напрямую из WS экспортнуть в аудио-файл формата .raw или .au (я обычно в .au сохраняю)

Через меню Telephony->RTP->Show all streams ->Analyze -> Save payload.
Можно сохранить как один канал (forward или backward) так и оба (both).

Полученный файл (.au) можно открывать в Audacity/SoundForge.

Re: Определение сигнала "Занято" (Busytone)

Добавлено: 18 апр 2014 10:59
Женя
да именно так и делал
Telephony->RTP->Show all streams ->Analyze -> Save payload.
только нужно выбрать нужный звуковой поток, сохраняете в *.AU
затем в sound forge, там и спектр и длительности можно померить