Рейтинг:1

Как правильно повесить SIP-вызовы Freeswitch/Sofia на 3CX?

флаг ar

Мы запускаем экземпляр FreeSwitch на хосте A, который выполняет исходящие вызовы на экземпляр 3CX, работающий на хосте B, используя модуль SOFIA.

Все работает нормально, за исключением зависания: Пакет BYE, отправленный хостом А, не принимается 3CX-хостом с неизвестным пользователем 404.

После первого (рабочего) звонка больше нельзя инициировать звонки, так как линия занята, пока мы не перезапустим весь freeswitch-сервис.

Шлюз настроен так:

<include>
        <gateway name="default">

                <param name="realm" value="<host B>:5059"/>
                <param name="username" value="59"/>
                <param name="password" value="<the password>"/>
                <param name="register-transport" value="udp"/>
                <param name="extension" value="59"/>

                <param name="from-user" value="59"/>
                <param name="expire-seconds" value="800"/>
                <param name="register" value="true"/>
                <param name="register-transport" value="udp"/>
                <param name="context" value="public"/>
                <param name="caller-id-in-from" value="false“/>
                <param name="extension-in-contact" value="true"/>
                <param name="cid-type" value="rpid"/>
        </gateway>
</include>

Авторизация работает на всех остальных пакетах, кроме BYE. Также мы включили SIP-трассировку и проверили правильность установки заголовка Proxy-Athorization:

ПОКА sip:<номер назначения>@<хост B>:5059 SIP/2.0
Через: SIP/2.0/UDP <host A>:5059;rport;branch=z9hG4bKpB6QZ9aU643pH
Максимальное количество нападающих: 70
От кого: "pi" <sip:59@<host B>:5059>;tag=jXU3S8avD9tQH
Кому: <sip:<номер назначения>@<хост B>:5059>;tag=4442ed0d
Идентификатор вызова: fac6951d-4ab5-123a-0d9b-dca632517e68
CSeq: 37449519 ПОКА
Агент пользователя: FreeSWITCH-mod_sofia/1.10.6-release-7-1ff9d0a60e~32bit
Разрешить: ПРИГЛАШАТЬ, ПОДТВЕРЖДАТЬ, ПОКА, ОТМЕНА, ВАРИАНТЫ, СООБЩЕНИЕ, ИНФОРМАЦИЯ, ОБНОВЛЕНИЕ, РЕГИСТРАЦИЯ, РЕФЕР, УВЕДОМЛЕНИЕ
Поддерживается: таймер, путь, замена
Прокси-авторизация: дайджест username="59", realm="3CXPhoneSystem", nonce="414d535960cc5fda38:061e13fce3696c0ade88da4c548cab3a", алгоритм=MD5, uri="sip:<номер назначения>@<хост B>:5059", response=" 9d75bd5d59cc7b2111e005259d04aa65"
Причина: Q.850;cause=16;text="NORMAL_CLEARING"
Длина содержимого: 0

Проверяя SIP-пакеты на стороне 3CX, нам сказали, что пакет BYE вообще не нужно авторизовать, чтобы он заработал.

Поэтому мы добавили следующую настройку в используемый профиль:

<param name="auth-all-packets" value="false"/>

Но София (или Freeswitch?) тем не менее разрешает пакет BYE.

Кто-нибудь может нам помочь? Это было бы здорово!

Рейтинг:0
флаг ar

Для нашего сценария проблема может быть решена на стороне 3CX:

наша точка расширения была настроена как «конечная точка факса». После переключения на «общую конечную точку voip» все заработало, как и ожидалось. (не уверен в правильности терминологии 3CX здесь)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.