Add configuration parameter to enable ICE.

This commit is contained in:
Ghislain MARY 2012-08-14 17:06:47 +02:00
parent e2049ddff8
commit 264781cab6
5 changed files with 21 additions and 2 deletions

View file

@ -78,6 +78,7 @@
<string name="pref_codec_silk24_key">pref_codec_silk24_key</string>
<string name="pref_codecs_key">pref_codecs_key</string>
<string name="pref_stun_server_key">pref_stun_server_key</string>
<string name="pref_ice_enable_key">pref_ice_enable_key</string>
<string name="pref_video_codec_vp8_key">pref_video_codec_vp8_key</string>
<string name="pref_media_encryption_key">pref_media_encryption_key</string>
<string name="pref_media_encryption_key_none">none</string>

View file

@ -214,6 +214,8 @@
<string name="pref_echo_cancellation_summary">Removes the echo heard by other end (not recommended)</string>
<string name="pref_echo_limiter_summary">Removes the echo heard by other end (brute force method)</string>
<string name="pref_stun_server">Stun server</string>
<string name="pref_ice_enable">Enable ICE</string>
<string name="pref_ice_enable_summary">A STUN server must be configured to use ICE</string>
<string name="ec_calibrating">Calibrating...</string>
<string name="ec_calibrated">Calibrated [%s ms]</string>
<string name="failed">failed</string>

View file

@ -52,7 +52,15 @@
<EditTextPreference
android:title="@string/pref_stun_server"
android:key="@string/pref_stun_server_key"/>
<SwitchPreference
android:title="@string/pref_ice_enable"
android:summary="@string/pref_ice_enable_summary"
android:key="@string/pref_ice_enable_key"
android:switchTextOn="@string/yes"
android:switchTextOff="@string/no"
android:defaultValue="false"/>
</PreferenceCategory>
<PreferenceCategory

View file

@ -34,6 +34,9 @@
<EditTextPreference android:title="@string/pref_stun_server"
android:key="@string/pref_stun_server_key"></EditTextPreference>
<CheckBoxPreference android:title="@string/pref_ice_enable"
android:key="@string/pref_ice_enable_key" android:defaultValue="false"></CheckBoxPreference>
</PreferenceCategory>

View file

@ -688,8 +688,13 @@ public final class LinphoneManager implements LinphoneCoreListener {
//stun server
String lStun = getPrefString(R.string.pref_stun_server_key, null);
boolean useICE = getPrefBoolean(R.string.pref_ice_enable_key, false);
mLc.setStunServer(lStun);
mLc.setFirewallPolicy((lStun!=null && lStun.length()>0) ? FirewallPolicy.UseStun : FirewallPolicy.NoFirewall);
if (lStun!=null && lStun.length()>0) {
mLc.setFirewallPolicy(useICE ? FirewallPolicy.UseIce : FirewallPolicy.UseStun);
} else {
mLc.setFirewallPolicy(FirewallPolicy.NoFirewall);
}
//accounts
try {