示例#1
0
        private void Save()
        {
            if (Domain.Text.Contains(":"))
            {
                if (Proxy.Text.Length == 0)
                {
                    Proxy.Text = Domain.Text;
                }
                Domain.Text = Domain.Text.Split(':')[0];
            }

            _settings.Username      = Username.Text;
            _settings.UserId        = UserId.Text;
            _settings.Password      = Password.Password;
            _settings.Domain        = Domain.Text;
            _settings.Proxy         = Proxy.Text;
            _settings.OutboundProxy = OutboundProxy.IsChecked;
            _settings.DisplayName   = DisplayName.Text;
            _settings.Transport     = Transport.SelectedItem.ToString();
            _settings.Expires       = Expires.Text;
            _settings.AVPF          = AVPF.IsChecked;
            _settings.Save();

            if (linphoneAccount)
            {
                NetworkSettingsManager networkSettings = new NetworkSettingsManager();
                networkSettings.Load();
                networkSettings.MEncryption = networkSettings.EnumToMediaEncryption[MediaEncryption.SRTP];
                networkSettings.FWPolicy    = networkSettings.EnumToFirewallPolicy[FirewallPolicy.UseIce];
                networkSettings.StunServer  = "stun.linphone.org";
                networkSettings.Save();
            }
        }
示例#2
0
        public void ConfigureTunnel()
        {
            NetworkSettingsManager settings = new NetworkSettingsManager();

            settings.Load();
            ConfigureTunnel(settings.TunnelMode);
        }
        public AdvancedSettings()
        {
            this.InitializeComponent();
            SystemNavigationManager.GetForCurrentView().BackRequested += back_Click;

            _callSettings.Load();
            _networkSettings.Load();
            _chatSettings.Load();
            _settings.Load();

            rfc2833.IsOn = (bool)_callSettings.SendDTFMsRFC2833;
            sipInfo.IsOn = (bool)_callSettings.SendDTFMsSIPInfo;
            //vibrator.IsOn = (bool) _chatSettings.VibrateOnIncomingMessage;
            //resizeDown.IsOn = (bool) _chatSettings.ScaleDownSentPictures;

            List <string> mediaEncryptions = new List <string> {
                ResourceLoader.GetForCurrentView().GetString("MediaEncryptionNone")
            };

            if (LinphoneManager.Instance.Core.MediaEncryptionSupported(MediaEncryption.SRTP))
            {
                mediaEncryptions.Add(ResourceLoader.GetForCurrentView().GetString("MediaEncryptionSRTP"));
            }
            if (LinphoneManager.Instance.Core.MediaEncryptionSupported(MediaEncryption.DTLS))
            {
                mediaEncryptions.Add(ResourceLoader.GetForCurrentView().GetString("MediaEncryptionDTLS"));
            }
            if (LinphoneManager.Instance.Core.MediaEncryptionSupported(MediaEncryption.ZRTP))
            {
                mediaEncryptions.Add(ResourceLoader.GetForCurrentView().GetString("MediaEncryptionZRTP"));
            }


            mediaEncryption.ItemsSource  = mediaEncryptions;
            mediaEncryption.SelectedItem = _networkSettings.MEncryption;

            ICE.IsOn = LinphoneManager.Instance.Core.NatPolicy.IceEnabled;

            Stun.Text = _networkSettings.StunServer;

            List <string> tunnelModes = new List <string>
            {
                ResourceLoader.GetForCurrentView().GetString("TunnelModeDisabled"),
                ResourceLoader.GetForCurrentView().GetString("TunnelMode3GOnly"),
                ResourceLoader.GetForCurrentView().GetString("TunnelModeAlways"),
                ResourceLoader.GetForCurrentView().GetString("TunnelModeAuto")
            };

            tunnelMode.ItemsSource  = tunnelModes;
            tunnelMode.SelectedItem = _networkSettings.TunnelMode;
            tunnelPort.Text         = _networkSettings.TunnelPort;
            tunnelServer.Text       = _networkSettings.TunnelServer;
            IPV6.IsOn = LinphoneManager.Instance.Core.Ipv6Enabled;

            TunnelPanel.Visibility = LinphoneManager.Instance.Core.Tunnel != null ? Visibility.Visible : Visibility.Collapsed; //Hidden properties for now

            Debug.IsOn          = _settings.DebugEnabled;
            SendLogs.IsEnabled  = _settings.DebugEnabled;
            ResetLogs.IsEnabled = _settings.DebugEnabled;
        }
示例#4
0
        /// <summary>
        /// Public constructor.
        /// </summary>
        public AdvancedSettings()
        {
            InitializeComponent();
            BuildLocalizedApplicationBar();

            _callSettings.Load();
            _networkSettings.Load();
            _chatSettings.Load();
            _settings.Load();

            rfc2833.IsChecked    = _callSettings.SendDTFMsRFC2833;
            sipInfo.IsChecked    = _callSettings.SendDTFMsSIPInfo;
            vibrator.IsChecked   = _chatSettings.VibrateOnIncomingMessage;
            resizeDown.IsChecked = _chatSettings.ScaleDownSentPictures;

            List <string> mediaEncryptions = new List <string>
            {
                AppResources.MediaEncryptionNone,
                AppResources.MediaEncryptionSRTP,
            };

            MediaEncryption.ItemsSource  = mediaEncryptions;
            MediaEncryption.SelectedItem = _networkSettings.MEncryption;

            List <string> firewallPolicies = new List <string>
            {
                AppResources.FirewallPolicyNone,
                AppResources.FirewallPolicyStun,
                AppResources.FirewallPolicyIce
            };

            FirewallPolicy.ItemsSource  = firewallPolicies;
            FirewallPolicy.SelectedItem = _networkSettings.FWPolicy;

            Stun.Text = _networkSettings.StunServer;

            List <string> tunnelModes = new List <string>
            {
                AppResources.TunnelModeDisabled,
                AppResources.TunnelMode3GOnly,
                AppResources.TunnelModeAlways,
                AppResources.TunnelModeAuto
            };

            tunnelMode.ItemsSource  = tunnelModes;
            tunnelMode.SelectedItem = _networkSettings.TunnelMode;
            tunnelPort.Text         = _networkSettings.TunnelPort;
            tunnelServer.Text       = _networkSettings.TunnelServer;

            TunnelPanel.Visibility = LinphoneManager.Instance.LinphoneCore.TunnelAvailable && Customs.IsTunnelEnabled ? Visibility.Visible : Visibility.Collapsed; //Hidden properties for now

            Debug.IsChecked     = _settings.DebugEnabled;
            SendLogs.IsEnabled  = _settings.DebugEnabled;
            ResetLogs.IsEnabled = _settings.DebugEnabled;
        }
        private void Save()
        {
            if (Domain.Text.Contains(":"))
            {
                if (Proxy.Text.Length == 0)
                {
                    Proxy.Text = Domain.Text;
                }
                Domain.Text = Domain.Text.Split(':')[0];
            }

            _settings.Username      = Username.Text;
            _settings.UserId        = UserId.Text;
            _settings.Password      = Password.Password;
            _settings.Domain        = Domain.Text;
            _settings.Proxy         = Proxy.Text;
            _settings.OutboundProxy = OutboundProxy.IsOn;
            _settings.DisplayName   = DisplayName.Text;
            _settings.Transports    = Transport.SelectedItem.ToString();
            _settings.Expires       = Expires.Text;
            _settings.AVPF          = AVPF.IsOn;
            _settings.ICE           = IceSwitch.IsOn;

            _settings.Save();

            if (linphoneAccount)
            {
                NetworkSettingsManager networkSettings = new NetworkSettingsManager();
                networkSettings.Load();
                networkSettings.MEncryption = "SRTP";

                networkSettings.FWPolicy   = true;
                networkSettings.StunServer = "stun.linphone.org";
                networkSettings.Save();
            }
        }