2017-02-16 97 views
1

我是否需要让我的Bot托管才能使用嵌入式Web聊天选项使用Iframe? (https://webchat.botframework.com/embed/botme?s=YOUR_SECRET_HERE'>)Bot框架需要托管?

我想用localhost和embed做一些测试。主要是演示。

最好的问候。

+0

感谢您的帮助。我一直得到的问题是“POST https://directline.botframework.com/v3/directline/conversations 403(Forbidden)”我使用ngrok配置端点,并使用C#运行机器人(试验nodejs结果相同)。我不知道我是否错过了一些东西。在模拟器上它工作得很好。 –

+0

嗨,通过使用Direct Line中提供的密钥来解决问题,而不是网络聊天中提供的密钥。不知道为什么,但它的工作。谢谢你的帮助。 –

回答

0

演示的最简单方法是使用the bot framework emulator,https://github.com/Microsoft/BotFramework-Emulator,您可以在本地运行您的bot代码。

模拟器看起来与网络聊天相同。

如果你想使用真正的网络聊天,你仍然可以在本地托管你的机器人,但使用ngrok提供一个临时的公共URL到机器人框架。所以,你应该注册你的机器人,并设置从ngrok获得的机器人网址,获取秘密,并在你的网络聊天中使用它。

作为替代方案,您可以使用免费托管托管您的机器人代码之一。对于NodeJs版本,您可以使用像heroku这样的服务。

+0

其实我不同意“模拟器看起来和网络聊天相同”的说法。 。嵌入式聊天看起来有点不同,并且更具错误(特别是在显示卡片和附件时) –

+0

您可以将https://github.com/Microsoft/BotFramework-WebChat连接到模拟器(需要一些编程工作),所以您获得确切的本地网络聊天。 –

+0

我实际上注册了bot使用的ngrok并提供了消息端点上的链接,它在网站上运行良好,例如(https://dev.botframework.com/bots?id=botme) 但是当我使用嵌入(或只是来源,我得到POST https://directline.botframework.com/v3/directline/conversations 403(禁止)) 使用新生成的密码。 机器人必须发布吗?我一直在想我失去了一些东西.. –

0

如果你的机器人已经在Dev Portalregistered和端点已经设置,则在本地测试嵌入聊天,而无需任何的网站最简单的方法就是贴这是在任何浏览器网址:

data:text/html, <iframe style="height:480px; width:400px" src='https://webchat.botframework.com/embed/botme?s=YOUR_SECRET_HERE'></iframe> 

是的,它可能看起来很奇怪,但只要将它粘贴到浏览器的地址栏上,然后按Enter即可。另一个快速选项是将该iframe放到您的机器人的default.htm页面(应该存在于您的解决方案中),因此当您运行项目并且浏览器自动打开时,您会在那里看到嵌入式聊天控件。