gpt4 book ai didi

node.js - 在 Azure Bot Framework (Nodejs) 中使用 session.send 向对话发送 Webhook 响应

转载 作者:太空宇宙 更新时间:2023-11-04 00:04:56 24 4
gpt4 key购买 nike

当前正在尝试将 Azure Bot Framework 与 Integromat 等外部平台集成。我使用下面的代码片段发送用户提交的名字和手机号码。用户输入被发送到 integromat Webhook,后者发送 Webhook 响应。

bot.dialog('WebTest', function (session) {
session.send('conversation.id: ' + session.message.address.conversation.id);
session.userData.convoID = session.message.address.conversation.id;
// var request = require('request');
// var url = "https://hook.integromat.com/y6d18ahnsfanbkwqfdmygkwd2ft93vr2"
request.post({
headers: { 'content-type': 'application/x-www-form-urlencoded' },
url: 'https://hook.integromat.com/ynwbud77o7up7rrhl3m8tvdriquhtess',
body: 'first=' + session.userData.first + '&mobile=' + session.userData.mobile + '&convoID=' +session.userData.convoID
}).on('response', function (response) {
//session.send(response);
response.on('data', function (data) {
console.log('data: ' + data);
})
// session.send(data)
});
// session.send(data);
//session.send(response);
session.send("This service is still under construction");
}).triggerAction({ matches: /^webby/i })

响应已正确记录在控制台中 /image/XQC8u.png

但是,我不确定如何将其发送回机器人并将其显示给用户。

我已经探索了 Directline API 作为一个选项,获取对话 ID 并遵循文档。我使用了这个链接: https://directline.botframework.com/v3/directline/conversations/ {{1.convoID}}/事件并将以下请求内容作为 json 负载发送,并将授权 key 作为 header 发送:

{
"type": "message",
"from": {
"id": "user1"
},
"text": "hello"
}

尽管如此,我收到了 404 错误,并显示“BadArgument”和“未知对话”错误。

任何能让我朝着正确方向前进的帮助将不胜感激,谢谢!

最佳答案

我不是 100% 确定您想在此函数中具体处理您的数据:

response.on('data', function (data) {
console.log('data: ' + data);
})

但是 session.send(data) 在此之后不起作用的原因应该是由于 data being an object rather than a string 。在这种情况下,您可以执行任何操作来使参数成为字符串,从简单的 JSON.stringify(data) 到使用字段格式化输出。

如果从机器人内部进行直接调用,它很可能会成功触发,因为您可以通过该 API 在机器人之间进行通信;但如果 conversationID 解析为当前正在使用的机器人中的一个(或者根本不存在),则预计会出现错误。

关于node.js - 在 Azure Bot Framework (Nodejs) 中使用 session.send 向对话发送 Webhook 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52754527/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com