private void InitializeConfig(ToDoSkillState state) { // Initialize PageSize and TaskServiceType when the first input comes. if (state.PageSize <= 0) { var pageSize = 0; if (_settings.Properties.TryGetValue("DisplaySize", out var displaySizeObj)) { int.TryParse(displaySizeObj.ToString(), out pageSize); } state.PageSize = pageSize <= 0 ? ToDoCommonUtil.DefaultDisplaySize : pageSize; } if (state.TaskServiceType == ServiceProviderType.Other) { state.TaskServiceType = ServiceProviderType.Outlook; if (_settings.Properties.TryGetValue("TaskServiceProvider", out var taskServiceProvider)) { if (taskServiceProvider.ToString().Equals(ServiceProviderType.OneNote.ToString(), StringComparison.InvariantCultureIgnoreCase)) { state.TaskServiceType = ServiceProviderType.OneNote; } } } }
private void ExtractListTypeAndTaskContent(ToDoSkillState state) { if (state.HasShopVerb && !string.IsNullOrEmpty(state.FoodOfGrocery)) { if (state.ListType != ToDoStrings.Grocery) { state.LastListType = state.ListType; state.ListType = ToDoStrings.Grocery; state.SwitchListType = true; } } else if (state.HasShopVerb && !string.IsNullOrEmpty(state.ShopContent)) { if (state.ListType != ToDoStrings.Shopping) { state.LastListType = state.ListType; state.ListType = ToDoStrings.Shopping; state.SwitchListType = true; } } if (state.ListType == ToDoStrings.Grocery || state.ListType == ToDoStrings.Shopping) { state.TaskContent = string.IsNullOrEmpty(state.ShopContent) ? state.TaskContentML ?? state.TaskContentPattern : state.ShopContent; } else { state.TaskContent = state.TaskContentML ?? state.TaskContentPattern; if (string.IsNullOrEmpty(state.ListType)) { state.ListType = ToDoStrings.ToDo; } } }
private void InitializeConfig(ToDoSkillState state) { // Initialize PageSize and TaskServiceType when the first input comes. if (state.PageSize <= 0) { var pageSize = 0; if (_settings.DisplaySize != null) { pageSize = _settings.DisplaySize; } state.PageSize = pageSize <= 0 ? ToDoCommonUtil.DefaultDisplaySize : pageSize; } if (state.TaskServiceType == ServiceProviderType.Other) { state.TaskServiceType = ServiceProviderType.Outlook; if (!string.IsNullOrEmpty(_settings.TaskServiceProvider)) { if (_settings.TaskServiceProvider.Equals(ServiceProviderType.OneNote.ToString(), StringComparison.InvariantCultureIgnoreCase)) { state.TaskServiceType = ServiceProviderType.OneNote; } } } }
/// <summary> /// Digest luis result. /// </summary> /// <param name="luisResult">Luis result.</param> /// <param name="userInput">User input.</param> /// <param name="toDoSkillState">To do skill state.</param> public static void DigestLuisResult(ToDo luisResult, string userInput, ref ToDoSkillState toDoSkillState) { var entities = luisResult.Entities; if (luisResult?.Entities?.ContainsAll != null) { toDoSkillState.MarkOrDeleteAllTasksFlag = true; } if (luisResult?.Entities?.ordinal != null) { var index = (int)luisResult.Entities.ordinal[0]; if (index > 0 && index <= 5) { toDoSkillState.ToDoTaskIndex = index - 1; } } if (!string.IsNullOrEmpty(userInput)) { var words = userInput.Split(' '); foreach (var word in words) { if (word.Equals("all", StringComparison.OrdinalIgnoreCase)) { toDoSkillState.MarkOrDeleteAllTasksFlag = true; } } } }
private void InitializeConfig(ToDoSkillState state) { // Initialize PageSize, ReadSize and TaskServiceType when the first input comes. if (state.PageSize <= 0) { int pageSize = 0; if (_services.Properties.TryGetValue("DisplaySize", out object displaySizeObj)) { int.TryParse(displaySizeObj.ToString(), out pageSize); } state.PageSize = pageSize <= 0 || pageSize > ToDoCommonUtil.MaxDisplaySize ? ToDoCommonUtil.MaxDisplaySize : pageSize; } if (state.ReadSize <= 0) { int readSize = 0; if (_services.Properties.TryGetValue("ReadSize", out object readSizeObj)) { int.TryParse(readSizeObj.ToString(), out readSize); } state.ReadSize = readSize <= 0 || readSize > ToDoCommonUtil.MaxReadSize ? ToDoCommonUtil.MaxReadSize : readSize; } if (state.TaskServiceType == ProviderTypes.Other) { state.TaskServiceType = ProviderTypes.Outlook; if (_services.Properties.TryGetValue("TaskServiceProvider", out object taskServiceProvider)) { if (taskServiceProvider.ToString().Equals(ProviderTypes.OneNote.ToString(), StringComparison.InvariantCultureIgnoreCase)) { state.TaskServiceType = ProviderTypes.OneNote; } } } }