Beispiel #1
0
        /// <summary> Получить настройки пользователя </summary>
        public static ModelUserSettings GetModelUserSettings()
        {
            var userSettings = Logic.GetUserSettings();

            var deviceSettings = Logic.GetDeviceSettings();

            var listModelUserAccount = new List <ModelUserAccount>();

            foreach (var serverSettingModelManaged in deviceSettings.ServerSettings.Where(obj => obj.ServerType == ServerSettingTypeManaged.Sip))
            {
                var modelUserAccount = new ModelUserAccount
                {
                    Name    = serverSettingModelManaged.AuthUserName,
                    Domain  = serverSettingModelManaged.Domain,
                    Default = serverSettingModelManaged.Default
                };

                listModelUserAccount.Add(modelUserAccount);
            }

            var defaultModelUserAccount = listModelUserAccount.FirstOrDefault(obj => obj.Domain.Equals(userSettings.DefaultVoipServer, StringComparison.InvariantCultureIgnoreCase)) ?? listModelUserAccount.FirstOrDefault(obj => obj.Default);

            var result = new ModelUserSettings
            {
                AutoLogin          = userSettings.Autologin,
                Autostart          = userSettings.Autostart,
                GuiAnimation       = userSettings.GuiAnimation,
                TraceMode          = userSettings.TraceMode,
                VideoEnabled       = userSettings.VideoEnabled,
                GuiFontSize        = userSettings.GuiFontSize,
                DoNotDesturbMode   = userSettings.DoNotDesturbMode,
                ModelLanguageObj   = ModelLanguage.GetModelLanguage(userSettings.GuiLanguage),
                ModelEnumThemeObj  = ModelEnumTheme.GetModelEnum(userSettings.GuiThemeName),
                UserExtendedStatus = userSettings.UserExtendedStatus,
                ModelEnumEchoCancellationModeObj = ModelEnumEchoCancellationMode.GetModelEnum((int)userSettings.EchoCancellationMode),
                ModelEnumUserBaseStatusObj       = ModelEnumUserBaseStatus.GetModelEnum((int)userSettings.UserBaseStatus),
                ModelEnumVideoSizeCellObj        = ModelEnumVideoSizeCell.GetModelEnum((int)userSettings.VideoSizeCell),
                ModelEnumVideoSizeWifiObj        = ModelEnumVideoSizeWifi.GetModelEnum((int)userSettings.VideoSizeWifi),
                ListModelUserAccount             = listModelUserAccount,
                DefaultModelUserAccountObj       = defaultModelUserAccount,
                ModelEnumVoipEncryptionObj       = ModelEnumVoipEncryption.GetModelEnum((int)userSettings.VoipEncryption),
                ListModelCodecSettingsAudioWifi  = deviceSettings.CodecSettings.Where(obj => obj.Type == CodecTypeManaged.Audio && obj.ConnectionType == CodecConnectionTypeManaged.Wifi).Select(obj => new ModelCodecSettings {
                    CodecSettingModelManagedObj = obj
                }).ToList(),
                ListModelCodecSettingsAudioCell = deviceSettings.CodecSettings.Where(obj => obj.Type == CodecTypeManaged.Audio && obj.ConnectionType == CodecConnectionTypeManaged.Cell).Select(obj => new ModelCodecSettings {
                    CodecSettingModelManagedObj = obj
                }).ToList(),
                ListModelCodecSettingsVideo = deviceSettings.CodecSettings.Where(obj => obj.Type == CodecTypeManaged.Video).Select(obj => new ModelCodecSettings {
                    CodecSettingModelManagedObj = obj
                }).ToList()
            };

            return(result);
        }
 /// <summary> Конвертировать CallHistoryEntryModelManaged в ModelCallHistoryEntry </summary>
 private static ModelCallHistoryEntry ConvertCallHistoryEntryModelManagedToModelCallHistoryEntry(CallHistoryEntryModelManaged callHistoryEntryModelManaged)
 {
     return(new ModelCallHistoryEntry
     {
         Id = callHistoryEntryModelManaged.Id,
         StartTime = callHistoryEntryModelManaged.StartTime,
         DurationSec = callHistoryEntryModelManaged.DurationSec,
         ModelEnumHistoryAddressTypeObj = ModelEnumCallHistoryAddressType.GetModelEnum((int)callHistoryEntryModelManaged.AddressType),
         ModelEnumCallDirectionObj = ModelEnumCallDirection.GetModelEnum((int)callHistoryEntryModelManaged.Direction),
         ModelEnumVoipEncryptionObj = ModelEnumVoipEncryption.GetModelEnum((int)callHistoryEntryModelManaged.Encription),
         ModelEnumCallEndModeObj = ModelEnumCallEndMode.GetModelEnum((int)callHistoryEntryModelManaged.EndMode),
         ModelEnumCallHistorySourceTypeObj = ModelEnumCallHistorySourceType.GetModelEnum((int)callHistoryEntryModelManaged.HistorySource),
         ModelEnumCallHistoryStatusTypeObj = ModelEnumCallHistoryStatusType.GetModelEnum((int)callHistoryEntryModelManaged.HistoryStatus)
     });
 }
        /// <summary> Конвертировать CallModelManaged в ModelCall </summary>
        private static ModelCall ConvertCallModelManagedToModelCall(CallModelManaged callModelManaged)
        {
            var result = new ModelCall
            {
                Id                          = callModelManaged.Id,
                Duration                    = callModelManaged.Duration,
                Identity                    = callModelManaged.Identity,
                ModelContactObj             = DataSourceContact.GetModelContactFromContactModelManaged(callModelManaged.Contact),
                ModelEnumCallDirectionObj   = ModelEnumCallDirection.GetModelEnum((int)callModelManaged.Direction),
                ModelEnumCallAddressTypeObj = ModelEnumCallAddressType.GetModelEnum((int)callModelManaged.AddressType),
                ModelEnumVoipEncryptionObj  = ModelEnumVoipEncryption.GetModelEnum((int)callModelManaged.Encription),
                ModelEnumCallStateObj       = ModelEnumCallState.GetModelEnum((int)callModelManaged.State)
            };

            return(result);
        }