private BotYamlModel ReadFromYamlToObject() { var lexYamlData = new BotYamlModel(); // convert stream to yaml mapping var yaml = new YamlStream(); yaml.Load(_yamlData); var yamlMappingNode = (YamlMappingNode)yaml.Documents[0].RootNode; // get the bot name lexYamlData.BotName = ParseBotName(yamlMappingNode); // get the slots lexYamlData.Slots = ParseSlots(yamlMappingNode); // get the intents lexYamlData.Intents = ParseIntents(yamlMappingNode); // get the error handling information var errorHandling = (YamlMappingNode)yamlMappingNode.Children[new YamlScalarNode("ErrorHandling")]; // get clarification prompt lexYamlData.ClarificationPrompt = ParseClarificationPrompt(errorHandling); // get abort statements lexYamlData.AbortStatement = ParseAbortStatements(errorHandling); // get intents for bot lexYamlData.IntentsForBot = ParseIntentsForBot(yamlMappingNode); // put bot request lexYamlData.PutBotRequest = GeneratePutBotRequest(lexYamlData); return(lexYamlData); }
private PutBotRequest GeneratePutBotRequest(BotYamlModel lexYamlData) { return(new PutBotRequest { Name = lexYamlData.BotName, Locale = "en-US", ChildDirected = false, ClarificationPrompt = lexYamlData.ClarificationPrompt, AbortStatement = lexYamlData.AbortStatement, Intents = lexYamlData.IntentsForBot.ToList() }); }
public ManageBots(ILexBotGeneratorDependencyProvider provider, BotYamlModel lexYamlData) { _provider = provider; _lexYamlData = lexYamlData; }