【问题标题】:Need to catch HTTP request error in Composer需要在 Composer 中捕获 HTTP 请求错误
【发布时间】:2021-08-06 23:32:32
【问题描述】:
我在 Composer 1.3 中有一个机器人,我始终使用“发送 HTTP 请求”。一切正常。
但是,如果机器人无法到达端点,它会向用户发送一条消息,说“无法建立连接,因为目标机器主动拒绝了它。”对话结束。在下面的sn-p中,当web服务不可用时,没有到达第二个trace事件。
对于最终用户来说,这是非常难以理解的。
有没有办法捕捉到这个错误,以便我能够以更用户友好的方式响应用户?我宁愿说系统现在已关闭或无法访问。
【问题讨论】:
标签:
botframework
bot-framework-composer
【解决方案1】:
您可以使用“发生错误”对话框触发器来捕获任何运行时错误。在该触发器中,您可以发送自定义响应。
【解决方案2】:
如果您需要向用户返回有关错误的更多信息,请使用对话框错误事件触发器。
您可以从触发器内部的turn.dialogEvent 获取错误的详细信息,例如:
Error: ${turn.dialogEvent.value.name}
Details: ${turn.dialogEvent.value.message}
这是在 Bot Framework Composer v2.1 中测试并运行的