Microsoft Bot V4 Skill Bot在SendActivityAsync函数中回复到Root Bot时,响应为500(内部错误)

时间:2020-08-06 07:34:45

标签: c# botframework chatbot

我正在通过调用由我开发的Master Bot的Microsoft Sample EchoSkillBot尝试使用Master和Skill机器人功能。呼叫已从Master到达Skill bot,但在Skill bot回复Master时收到异常“ InternalServerError”。附加说明我正在使用LUIS将对话路由到相应的Skill和QnA。

代码:(此代码引发异常)

await turnContext.SendActivityAsync(
           MessageFactory.Text(messageText, 
                               messageText, 
                               InputHints.IgnoringInput), 
           cancellationToken);

错误:

“ {” type“:” https://tools.ietf.org/html/rfc7231#section-6.6.1“,” title“:”在处理您的请求时发生错误。“,”状态“: 500,“ traceId”:“ XXXXX”}“

“操作返回了无效的状态代码'InternalServerError'”

1 个答案:

答案 0 :(得分:0)

我找到了导致异常的根本原因。在startup.cs中,我使用了Bot框架适配器作为 IBotFrameworkHttpAdapter放在一个地方,而BotFrameworkHttpAdapter放在另一个地方。修复此技能后,回复效果很好。

   // Create the Bot Framework Adapter with error handling enabled.
   //services.AddSingleton<IBotFrameworkHttpAdapter, AdapterWithErrorHandler>();
     services.AddSingleton<BotFrameworkHttpAdapter, AdapterWithErrorHandler>();
     services.AddSingleton<BotAdapter>(sp => sp.GetService<BotFrameworkHttpAdapter>());  //Added for Skill bot