我目前正在尝试将chatbot添加到我的网站。 我在用于我们的lIne bot的代理上集成了web演示。 哪些响应由lambda webhook处理。
我问的是,我们可以使用lambda发送对网络演示的回复吗? 如果可以,那我该如何发送? 假设有一些身份证?我们使用HTTP post请求发送它们吗? 我找不到一个例子。
并且对于某些具有多个对话流处理响应的意图,它只能发送其中一个。 这是为什么?我该怎么办才能通过对话流发送所有这些内容?
答案 0 :(得分:0)
是的,它可以实现,您可以参考为此提供NodeJs代码,
const express = require("express");
const bodyParser = require("body-parser");
const apiai = require("apiai");
const request = require("request");
const app = express();
app.use(bodyParser.json());
app.set("port", process.env.PORT || 5000);
app.post("/", (req, res) => {
//console.log(req.body)
const action = req.body.result.action;
if (!req.body || !req.body.result || !req.body.result.parameters) {
return res.status(400).send("Bad Request");
}
console.log("--------------------------------");
console.log("Action =>", action);
console.log("--------------------------------");
switch (action) {
case "price.search":
const webhookReply = `Sorry NO book found in store.`;
res.status(200).json({
source: "webhook",
speech: webhookReply,
displayText: webhookReply
});
break;
default:
break;
}
});
app.listen(app.get("port"), function() {
console.log("* Webhook service is listening on port:" + app.get("port"));
});
对于每个intent
,我们必须在dialogFlow中定义action
。
因此,当用户输入任何查询时,您的webhook将被触发 进入开关盒找到特定的动作并形成这种情况,你可以将重播发送回你的机器人。