Score:1

How to hangup Freeswitch/Sofia SIP-Calls at a 3CX correctly?

ar flag

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:

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

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
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY
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!

Score:0
ar flag

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)

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.