We are running a FreeSwitch-instance at host A, that is placing outbound calls to a 3CX-instance running at host B, using the SOFIA module.

Everything is working fine except for the hangup: The BYE packet sent by host A is not accepted by the 3CX-host with 404 user unknown.

After the first (working) call, no more calls can be initiated since the line is occupied until we restart the entire freeswitch-service.

The gateway is configured like that:

        <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"/>

The authorization is working on all other packages but the BYE one. We also switched SIP-tracing on and verified that the Proxy-Athorization header is set correctly:

BYE sip:<destination number>@<host B>:5059 SIP/2.0
Via: SIP/2.0/UDP <host A>:5059;rport;branch=z9hG4bKpB6QZ9aU643pH
Max-Forwards: 70
From: "pi" <sip:59@<host B>:5059>;tag=jXU3S8avD9tQH
To: <sip:<dest number>@<host B>:5059>;tag=4442ed0d
Call-ID: fac6951d-4ab5-123a-0d9b-dca632517e68
CSeq: 37449519 BYE
User-Agent: FreeSWITCH-mod_sofia/1.10.6-release-7-1ff9d0a60e~32bit
Supported: timer, path, replaces
Proxy-Authorization: Digest username="59", realm="3CXPhoneSystem", nonce="414d535960cc5fda38:061e13fce3696c0ade88da4c548cab3a", algorithm=MD5, uri="sip:<dest number>@<host B>:5059", response="9d75bd5d59cc7b2111e005259d04aa65"
Reason: Q.850;cause=16;text="NORMAL_CLEARING"
Content-Length: 0

Inspecting the SIP-packages at the 3CX side, we have been told that the BYE package should not be authorized at all to make it work.

So we added the following setting to the profile in use:

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

But Sofia (or Freeswitch?) is authorizing the BYE package nonetheless.

Can anyone help us out? This would be great!


For our scenario, the issue could be resolved at the 3CX-side:

our extension point had been configured as a "fax-endpoint". After switching it to a "common voip endpoint", everything worked as expected. (not sure about the correct 3CX-terminology here)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.