SIPSorcery.SIPProviderDetailsControl.Add C# (CSharp) Méthode

Add() private méthode

private Add ( ) : void
Résultat void
        private void Add()
        {
            try
            {
                SIPProvider sipProvider = null;

                ProviderTypes providerType = (m_providerTypeSIPRadio.IsChecked != null && m_providerTypeSIPRadio.IsChecked.Value) ? ProviderTypes.SIP : ProviderTypes.GoogleVoice;
                string providerName = m_providerName.Text.Trim();
                string providerUsername = m_providerUsername.Text.Trim();
                string providerPassword = m_providerPassword.Text.Trim();

                if (providerType == ProviderTypes.SIP)
                {
                    SIPURI providerServer = (!m_providerServer.Text.IsNullOrBlank()) ? SIPURI.ParseSIPURIRelaxed(m_providerServer.Text.Trim()) : null;
                    bool registerEnabled = m_providerRegister.IsChecked.Value;
                    bool sendMWISubscribe = m_providerSendMWISubscribe.IsChecked.Value;
                    SIPURI registerContact = (!m_providerRegisterContact.Text.IsNullOrBlank()) ? SIPURI.ParseSIPURIRelaxed(m_providerRegisterContact.Text.Trim()) : null;
                    string authUsername = m_providerAuthUsername.Text.Trim();
                    string providerFrom = m_providerFromHeader.Text.Trim();
                    string registerRealm = m_providerRegisterRealm.Text.Trim();
                    SIPURI registerServer = (!m_providerRegisterServer.Text.IsNullOrBlank()) ? SIPURI.ParseSIPURIRelaxed(m_providerRegisterServer.Text.Trim()) : null;

                    int registerExpiry = m_defaultRegisterExpiry;
                    Int32.TryParse(m_providerRegisterExpiry.Text, out registerExpiry);

                    string customHeaders = null;
                    if (m_providerCustomHeaders.Items.Count > 0)
                    {
                        foreach (string customHeader in m_providerCustomHeaders.Items)
                        {
                            customHeaders += (m_sipProvider.CustomHeaders != null && m_sipProvider.CustomHeaders.Trim().Length > 0) ? m_customHeadersSeparator.ToString() : null;
                            customHeaders += customHeader;
                        }
                    }

                    sipProvider = new SIPProvider()
                    {
                        ID = Guid.NewGuid().ToString(),
                        ProviderType = ProviderTypes.SIP.ToString(),
                        Owner = m_owner,
                        ProviderName = providerName,
                        ProviderUsername = providerUsername,
                        ProviderPassword = providerPassword,
                        ProviderServer = (providerServer != null) ? providerServer.ToString() : null,
                        ProviderFrom = providerFrom,
                        CustomHeaders = customHeaders,
                        RegisterContact = (registerContact != null) ? registerContact.ToString() : null,
                        RegisterExpiry = registerExpiry,
                        RegisterServer = (registerServer != null) ? registerServer.ToString() : null,
                        ProviderAuthUsername = authUsername,
                        RegisterRealm = registerRealm,
                        RegisterEnabled = registerEnabled,
                        SendMWISubscribe = sendMWISubscribe,
                        RegisterAdminEnabled = true,
                        Inserted = DateTime.Now.ToString("o"),
                        LastUpdate = DateTime.Now.ToString("o")
                    };
                }
                else
                {
                    //string gvCallbackNumber = m_gvCallbackNumber.Text;
                    //string gvCallbackPattern = m_gvCallbackNumber.Text;
                    //GoogleVoiceCallbackTypes callbackType = (GoogleVoiceCallbackTypes)Enum.Parse(typeof(GoogleVoiceCallbackTypes), ((TextBlock)m_gvCallbackType.SelectedValue).Text, true);

                    //sipProvider = new SIPProvider(ProviderTypes.GoogleVoice, m_owner, providerName, providerUsername, providerPassword, null, null, null, null,
                    //    null, 0, null, null, null, false, true, gvCallbackNumber, gvCallbackPattern, callbackType);

                    sipProvider = new SIPProvider()
                    {
                        ID = Guid.NewGuid().ToString(),
                        ProviderType = ProviderTypes.GoogleVoice.ToString(),
                        Owner = m_owner,
                        ProviderName = providerName,
                        ProviderUsername = providerUsername,
                        ProviderPassword = providerPassword,
                        GVCallbackNumber = m_gvCallbackNumber.Text,
                        GVCallbackPattern = m_gvCallbackPattern.Text,
                        GVCallbackType = ((TextBlock)m_gvCallbackType.SelectedValue).Text,
                        Inserted = DateTime.Now.ToString("o"),
                        LastUpdate = DateTime.Now.ToString("o")
                    };
                }

                if (sipProvider.HasValidationErrors)
                {
                    WriteStatusMessage(MessageLevelsEnum.Warn, sipProvider.ValidationErrors.First().ErrorMessage);
                }
                else
                {
                    WriteStatusMessage(MessageLevelsEnum.Info, "Adding SIP Provider please wait...");
                    SIPProviderAdd_External(sipProvider);
                }
            }
            catch (Exception excp)
            {
                WriteStatusMessage(MessageLevelsEnum.Error, "Add SIPProvider Exception. " + excp.Message);
            }
        }