我在整合LiveAgent(客户支持/票务Web应用程序)和MS BotFramework时遇到问题。
Azure中的botframework运行良好,随时可以与它集成。
https://<ms_azure_link>/api/messages
)执行HTTP POST(它们具有API)api/messages
或称为DirectLine API 3.0的内容?实际上DirectLine API会返回如下内容:
{
"conversationId": "3M3TeaDtc3uArxXwlna7AG",
"token": "<My token>",
"expires_in": 1800,
"streamUrl": "wss://directline.botframework.com/v3/directline/conversations/3M3TeaDtc3uArxXwlna7AG/stream?watermark=-&t=ubeJVCXqb9I.dAA.MwBNADMAVABlAGEARAB0AGMAMwB1AEEAcgB4AFgAdwBsAG4AYQA3AEEARwA.7UpMr6Tm0wE.9RmCM_XyjII.CQbU7viSec2P7CtznrijQwou0A8N0GynOvnsUmNT04o",
"referenceGrammarId": "669c7246-bc5c-f25f-aae7-0ad7f39e25b4"
}
如您所见,在使用DirectLine进行连接后,您需要继续使用WebSocket。
那么如何使用LiveAgent连接到这个WebSocket呢?有关您的信息,LiveAgent仅支持HTTP GET / POST到自定义URL。
如果我们不使用DirectLine API,那么我将使用MS Azure Bot Endpoint。现在问题变成:应该将什么传递给此端点,以便LiveAgent可以授权自己并使用Bot作为通常?有什么例子吗? DirectLine API Example似乎没有谈论这个。
非常感谢您提前。我知道这个问题可能没有很好地说明,但希望你能理解。
如果您有任何疑问,请告诉我,我很高兴澄清一下。
再次感谢你的帮助。
答案 0 :(得分:5)
如果您希望将LiveAgent视为僵尸客户端,并向您的bot应用程序发出一些请求。我们建议您利用DirectLine API。
要通过Node.js实现DirectLine API,您可以从https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/core-DirectLine/DirectLineClient
处的示例开始特别针对您的第二个问题,要与bot保持对话,不需要Web套接字流,除非您想要Receive activities via WebSocket stream
您可以参考官方DL代码示例中的code block,它不会保留Web套接字流,只会利用conversationId
和token
来生成HTTP请求反对机器人应用程序。
答案 1 :(得分:2)
我们使用Windows自助服务主机服务使用不带DirectLine的MS BOT Chat SDK进行了类似的解决方案。我们是从左侧到MS BOT以及从右侧到另一个CRM的接口。你什么时候说LiveAgent - 它是Salesforce解决方案吗?