I manage to make a very simple configuration for basic phone to phone calls using FreeSwitch, When i Calls A -> B (and B answered), A can hear B instantly, but B cannot hear A, after waiting for 20-30 seconds finally B can hear A , is there something missed so when the calls answered B can hear A without waiting for long seconds?
Click here to see picture of more detailed flow of calls
Im using Zoiper for both phone, and using these configuration
Dialplan :
<context name="dialAndalabs">
<extension name="666">
<condition field="destination_number" expression="^666$">
<action application="set_audio_level" data="read 4" />
<action application="set_audio_level" data="write 2" />
<action application="ring_ready"/>
<action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/>
<action application="sleep" data="1000"/>
<action application="bridge" data="user/hp-andalabs"/>
</condition>
</extension>
<extension name="667">
<condition field="destination_number" expression="^667$">
<action application="set_audio_level" data="read 4" />
<action application="set_audio_level" data="write 2" />
<action application="ring_ready"/>
<action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/>
<action application="sleep" data="1000"/>
<action application="bridge" data="user/wira"/>
</condition>
</extension>
<extension name="777">
<condition field="destination_number" expression="^777$">
<!--<action application="bridge" data="user/777"/>-->
<action application="answer"/>
<action application="sleep" data="10000"/>
<action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/>
</condition>
</extension>
</context>
SIP Profile :
<profile name="exampleTestAndalabs">
<settings>
<!--<param name="alias" value="sip:$${local_ip_v4}:5062"/>-->
<param name="shutdown-on-fail" value="true"/>
<param name="user-agent-string" value="FreeSWITCH v1.6 Andalabs 2016"/>
<param name="debug" value="0"/>
<param name="sip-trace" value="yes"/>
<param name="context" value="dialAndalabs"/>
<param name="use-rtp-timer" value="true"/>
<param name="sip-port" value="5062"/>
<param name="dialplan" value="XML"/>
<param name="inbound-codec-prefs" value="$${global_codec_prefs}"/>
<param name="outbound-codec-prefs" value="$${global_codec_prefs}"/>
<!--<param name="rtp-ip" value="192.168.7.157"/>-->
<param name="sip-ip" value="192.168.7.157"/>
<param name="log-auth-failures" value="true"/>
</settings>
</profile>
Directory :
<domain name="$${domain}">
<user id="wira">
<params>
<param name="password" value="$${default_password}"/>
<param name="dial-string" value="${sofia_contact(${dialed_user}@${dialed_domain})}"/>
</params>
</user>
<user id="hp-andalabs">
<params>
<param name="password" value="$${default_password}"/>
<param name="dial-string" value="${sofia_contact(${dialed_user}@${dialed_domain})}"/>
</params>
</user>
</domain>
Best Answer
what's the network topology between the phones and FreeSWITCH server? Maybe there's a firewall that is doing NAT or SIP intelligence. Also if you run packet captures, it would help to determine where the delay is occurring.