I am developing a softphone using jain sip which is about to complete except the following problem: I am using restcomm-android-sdk on android-jain-sip-ri-1.2.233.jar and the problem is let say two clients are client A and client B,
If client A and client B are using 3G/4G , then everything is working fine as they both can call each other and can here each others voice properly.
If client A is using 3G/4G network and clent B is on public WiFi then both can call each other but only client A can hear voice of Client B, client B cannot hear anything.
I think is something relating to routing and nat, here is my android manifest
<uses-permission android:name="android.permission.USE_SIP" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_CALL_LOG" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-feature android:name="android.hardware.telephony" android:required="true"/>
<uses-feature android:name="android.hardware.sip.voip" android:required="true" />
<uses-feature android:name="android.hardware.wifi" android:required="true" />
<uses-feature android:name="android.hardware.microphone" android:required="true" />
Could anyone please help in solving this problem?