/// <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); }