0

我无法从机器人获得响应并将其附加到 MS Botframework 提供的网络聊天中。

这是我到目前为止所做的:

  1. 在https://dev.botframework.com/上创建了一个机器人(没有迁移)

  2. 集成网络聊天和直线

  3. 创建了一个烧瓶监听服务器并使用ngrok生成了 HTTPS

  4. 将创建的服务器地址作为机器人的消息传递端点

在此处输入图像描述

  1. 使用以下代码生成 HTML 页面(在本地运行,无需任何服务器)
<html>
  <head>
    <link href="https://cdn.botframework.com/botframework-webchat/latest/botchat.css" rel="stylesheet" />
  </head>
  <body>
    <div id="bot"/>
    <script src="https://cdn.botframework.com/botframework-webchat/latest/botchat.js"></script>
    <script>
      BotChat.App({
        directLine: { secret: 'direct_line_secret_key' },
        user: { id: 'userid' },
        bot: { id: 'botid' },
        resize: 'detect'
      }, document.getElementById("bot"));
    </script>
  </body>
</html>

现在我能够以用户身份从 UI 发送消息,并能够在烧瓶侦听器服务器中捕获它。
但是我如何从服务器回复,以便消息来自机器人并附加到 UI?

我错过了什么吗?

我已经尝试过https://directline.botframework.com/v3/directline/conversations/ {convoId}/activities 来发布一个请求,但它再次返回到服务器并且不附加到网络聊天。

data = json.dumps({"type": "message","from":{"id":"botid"},"text": "Hii!"})

requests.post('https://directline.botframework.com/v3/directline/conversations/' + r['conversation']['id'] + '/activities', 
headers={"Authorization": "Bearer " + "secret_key", "Content-Type": "application/json", "Content-Length": "512"},data=data

注意:我仅将 botframework 用于网络聊天 UI,没有其他任何内容。

编辑1:

从网络聊天 ui 发送这个

http://bcebb07a.ngrok.io/webhook' [POST]> ************************************ ****************************************** {'type': '消息', ' id': '5DvIa5ImiPF4G6WnGlPYyY|0000002', 'timestamp': '2018-06-05T06:51:45.3174659Z', 'serviceUrl': ' https://directline.botframework.com/ ', 'channelId': 'directline' ,'来自':{'id':'sid'},'对话':{'id':'5DvIa5ImiPF4G6WnGlPYyY'},'收件人':{'id':'one_assist@CrbpWod1mw8','名称':'OneAssist '}, 'textFormat': 'plain', 'locale': 'en-US', 'text': 'hello how are you' , 'channelData': {'clientActivityId':'1528180308547.7414264322396316.5'}} 5DvIa5ImiPF4G6WnGlPYyY

################################################# ################# {'messages': [{'id':

'5DvIa5ImiPF4G6WnGlPYyY|0000000','conversationId':'5DvIa5ImiPF4G6WnGlPYyY','创建':'2018-06-05T06:32:50.9651813Z','来自':'sid','text':'hello','channel' : {'clientActivityId': '1528180308547.7414264322396316.0'}, '图片': [], '附件': []}, {'id': '5DvIa5ImiPF4G6WnGlPYyY|0000001', 'conversationId': '5DvIa5ImiPF4YGlG6Wn' :'2018-06-05T06:47:14.1602925Z','来自':'sid','text':'你好吗','channelData':{'clientActivityId':'1528180308547.7414264322396316.3'},'图像':[],'附件':[]},{'id':'5DvIa5ImiPF4G6WnGlPYyY|0000002','conversationId':'5DvIa5ImiPF4G6WnGlPYyY','created':'2018-06-05T06:51:45.3174659Z','from':'sid','text':'你好','channelData':{'clientActivityId ':'1528180308547.7414264322396316.5'},'图片':[],'附件':[]}],'水印':'2'}

{“错误”:{“代码”:“BotError”,“消息”:“发送活动失败:机器人超时”},“httpStatusCode”:504 } 127.0.0.1 - - [05/Jun/2018 12:22 :12] "POST /webhook HTTP/1.1" 200 - ************************************* ************************************* http://bcebb07a.ngrok.io/webhook' [发布]> *********************************************** ****************************** {'type': 'conversationUpdate', 'id': 'D3XJ6CAaVsc', 'timestamp': '2018 -06-05T06:51:56.7508828Z', 'serviceUrl': ' https://directline.botframework.com/ ', 'channelId': 'directline', 'from': {'id': '5DvIa5ImiPF4G6WnGlPYyY'}, '对话':{'id':'5DvIa5ImiPF4G6WnGlPYyY'},'recipient':{'id':'one_assist@CrbpWod1mw8','name':'OneAssist'},'membersAdded':[{'id':'botid'}]} 5Dvia5ImiPF4G6WnGlPYyY

################################################# ################# {'messages': [{'id':

'5DvIa5ImiPF4G6WnGlPYyY|0000000','conversationId':'5DvIa5ImiPF4G6WnGlPYyY','创建':'2018-06-05T06:32:50.9651813Z','来自':'sid','text':'hello','channel' : {'clientActivityId': '1528180308547.7414264322396316.0'}, '图片': [], '附件': []}, {'id': '5DvIa5ImiPF4G6WnGlPYyY|0000001', 'conversationId': '5DvIa5ImiPF4YGlG6Wn' :'2018-06-05T06:47:14.1602925Z','来自':'sid','text':'你好吗','channelData':{'clientActivityId':'1528180308547.7414264322396316.3'},'图像':[],'附件':[]},{'id':'5DvIa5ImiPF4G6WnGlPYyY|0000002','conversationId':'5DvIa5ImiPF4G6WnGlPYyY','created':'2018-06-05T06:51:45.3174659Z','from':'sid','text':'你好','channelData':{'clientActivityId ':'1528180308547.7414264322396316.5'},'图片':[],'附件':[]}],'水印':'2'}

{“错误”:{“代码”:“BotError”,“消息”:“发送活动失败:机器人超时”},“httpStatusCode”:504 } 127.0.0.1 - - [05/Jun/2018 12:22 :32]“POST /webhook HTTP/1.1”200 -

# 从服务器代码发送这个 ******************************************* ******************************* http://bcebb07a.ngrok.io/webhook' [POST]> *** ****************************************************** ********************* {'type': 'message', 'id': '5DvIa5ImiPF4G6WnGlPYyY|0000003', 'timestamp': '2018-06-05T06 :52:16.6925987Z', 'serviceUrl': ' https://directline.botframework.com/ ', 'channelId': 'directline', 'from': {'id': 'botid'}, 'conversation': {'id':'5DvIa5ImiPF4G6WnGlPYyY'},'recipient':{'id':'one_assist@CrbpWod1mw8','name':'OneAssist'},'text':'嗨!'5Dvia5ImiPF4G6WnGlPYyY

################################################# ################# {'messages': [{'id':

'5DvIa5ImiPF4G6WnGlPYyY|0000000','conversationId':'5DvIa5ImiPF4G6WnGlPYyY','创建':'2018-06-05T06:32:50.9651813Z','来自':'sid','text':'hello','channel' : {'clientActivityId': '1528180308547.7414264322396316.0'}, '图片': [], '附件': []}, {'id': '5DvIa5ImiPF4G6WnGlPYyY|0000001', 'conversationId': '5DvIa5ImiPF4YGlG6Wn' :'2018-06-05T06:47:14.1602925Z','来自':'sid','text':'你好吗','channelData':{'clientActivityId':'1528180308547.7414264322396316.3'},'图像':[],'附件':[]},{'id':'5DvIa5ImiPF4G6WnGlPYyY|0000002','conversationId':'5DvIa5ImiPF4G6WnGlPYyY','created':'2018-06-05T06:51:45.3174659Z','from':'sid','text':'你好','channelData':{'clientActivityId ': '1528180308547.7414264322396316.5'}, '图片': [], '附件': []}, {'id': '5DvIa5ImiPF4G6WnGlPYyY|0000003', 'conversationId': '5DvIa5ImiPF4G6WnGlPYyY|0000003', 'conversationId': '5DvIa5ImiPF4G6WnGlPYy8,-'创建06-05T06:52:16.6925987Z','来自':'botid','文本':'嗨!','图像':[],'附件':[]}],'水印':'3' }'channelData': {'clientActivityId': '1528180308547.7414264322396316.5'}, '图像': [], '附件': []}, {'id': '5DvIa5ImiPF4G6WnGlPYyY|0000003', 'conversationId': '5DvIaY5ImiPF4 '创建':'2018-06-05T06:52:16.6925987Z','来自':'botid','文本':'嗨!','图像':[],'附件':[]}], '水印':'3'}'channelData': {'clientActivityId': '1528180308547.7414264322396316.5'}, '图像': [], '附件': []}, {'id': '5DvIa5ImiPF4G6WnGlPYyY|0000003', 'conversationId': '5DvIaY5ImiPF4 '创建':'2018-06-05T06:52:16.6925987Z','来自':'botid','文本':'嗨!','图像':[],'附件':[]}], '水印':'3'}文本':'嗨!','图像':[],'附件':[]}],'水印':'3'}文本':'嗨!','图像':[],'附件':[]}],'水印':'3'} https://directline.botframework.com/v3/directline/conversations/5DvIa5ImiPF4G6WnGlPYyY/activities/

https://directline.botframework.com/v3/conversations/5DvIa5ImiPF4G6WnGlPYyY/activities {“错误”:{“代码”:“BotError”,“消息”:“发送活动失败:机器人超时”},“httpStatusCode” : 504 }

4

1 回答 1

0

我在使用 ngrok 时遇到了类似的问题,我注意到您的日志中有对 127.0.0.1 的引用。尝试将 -host-header 参数添加到您的 ngrok 命令行。

例如我使用

ngrok http -host-header=localhost:55486 55486

其中 55486 是我的端点所在的端口号。

于 2018-06-05T11:53:37.553 回答