2

У меня есть Ekiga, выступающая в качестве софтфона для моей учетной записи VOIP. Я позвонил на автоматический коммутатор, который потребовал от меня "нажать 2 для продолжения". Я попытался нажать "2" на панели клавиатуры, но звук DTMF или "тональный сигнал" не был отправлен, и я не смог продолжить работу с коммутатором.

Интересно, что когда я звоню на свой мобильный телефон, я слышу, как отправляются тоны DTMF.

Как я могу заставить DTMF/ сенсорные тоны работать со всеми коммутаторами?

2 ответа2

2

DTMF являются двухтональными аналоговыми сигналами, аналоговые телефоны могут легко отправлять / транспортировать / получать их, потому что сигналы находятся в частотном диапазоне, который способны обрабатывать телефонные системы.

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

Некоторые из кодеков не сжимают аудио, но большинство из них делают.

Когда вы берете звук (обычно человеческий голос), сжимаете его, чтобы он проходил через IP-сеть, а с другой стороны распаковываете его, результат не совсем совпадает с оригиналом. Однако наши слуховые органы очень терпимы и способны распознавать голоса и человеческую речь, хотя она и была слегка изменена.

в случае тонов DTMF, например: ключ 2 - это сочетание частот 1336 Гц и 697 Гц. Если мы пропустим его через сжатие и распаковку, то конечный результат не будет совпадать с двумя частотами, что не позволит принимающей стороне понять, какая клавиша была нажата.

Есть 3 способа преодолеть эту проблему в системах VoIP:

  • In-Band: отправить тоны как есть. Работает только с несжимающими кодеками.(G.711)
  • Информация SIP: отправка тонов DTMF в виде событий в пути SIP.
  • RFC2833: отправьте тональные сигналы в виде данных в голосовой тракт.

RFC2833 является рекомендуемым способом в большинстве случаев.

Чтобы это работало, ваш программный телефон, УАТС и клиент, получающий тональные сигналы, должны быть настроены на RFC2833. Микширование не работает, и большинство систем не могут автоматически определить используемый метод.

1

Я изменил «Правка -> Настройки -> Протоколы -> Настройки SIP -> Режим DTMF» на "RFC2833", и затем он сработал при последующем вызове.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .