最近,当在C#中使用Lex时,我引用了AWSCore.dll和AWSLex.dll,并且仍在尝试获取一种方法,该方法公开了我在Aamazon服务器中创建的所有可用Lexchatbot。
var amazonPostRequest = new Amazon.Lex.Model.PostContentRequest();
var amazonPostResponse = new Amazon.Lex.Model.PostContentResponse();
使用这两种方法来获取所有其他信息。请求机器人名称和别名的方法是用于设置的,没有方法来响应以获取服务器中可用的Lexchatbot。
答案 0 :(得分:0)
我不认为Lex SDK直接支持此调用。
使用AWS Lex REST API来获取机器人列表:
GET https://<your aws region endpoint>/bots/
答案 1 :(得分:0)
经过长时间的研究,我找到了解决问题的答案,这可能会帮助他人。
首先,我们需要通过Nuget添加AWSSDK.LexModelBuildingService。这将添加对DLL的引用。
所有已经公开的方法。我们需要同时创建GetBotsRequest和GetBotsResponse方法。
var botRequest = new Amazon.LexModelBuildingService.Model.GetBotsRequest();
var botResponse = new Amazon.LexModelBuildingService.Model.GetBotsResponse();
然后我们需要致电lex模型构建服务客户端
var amazonmodel = new AmazonLexModelBuildingServiceClient("YourAccesKeyId","YourSecretAccessKey",Amazon.RegionEndpoint.USEast1);
之后,我们可以获得GetBots()的内置方法的响应
botResponse = amazonmodel.GetBots(botRequest);
我们将获得机器人元数据列表
List<Amazon.LexModelBuildingService.Model.BotMetadata> bots = botResponse.Bots;
有关所创建的每个机器人的每个详细信息,将在机器人列表列表中提供 几乎所有方法都可以从LexModelBuildingService dll中的Lex配置中获取详细信息