google-cloud-platform - 通过对话流代理从 Google Cloud Datastore 读取数据
问题描述
我是聊天机器人领域的新手。我需要开发一个对话流聊天机器人,它可以将从用户收集的数据存储到谷歌云数据存储实体(不是 Firebase 实时数据库),并在用户想要搜索时将其取回。
我可以将从用户收集的数据写入数据存储。但我正在努力检索数据。我正在对话框流内联编辑器中编写函数。
写函数:
function order_pizza(agent) {
var pizza_size = agent.parameters.size;
var pizza_topping = agent.parameters.pizza_topping;
var date_time = agent.parameters.size;
const taskKey = datastore.key('order_item');
const entity = {
key: taskKey,
data: {
item_name: 'pizza',
topping: pizza_topping,
date_time: date_time,
order_time: new Date().toLocaleString(),
size: pizza_size }
};
return datastore.save(entity).then(() => {
console.log(`Saved ${entity.key.name}: ${entity.data.item_name}`);
agent.add(`Your order for ${pizza_topping} pizza has been placed!`);
});
}
其中“order_item”是存储数据的种类(数据存储中的表)。它正在成功存储数据。
读取数据:(功能不工作)
function search_pizza(agent){
const taskKey = datastore.key('order_item');
var orderid = agent.parameters.id;
const query = datastore.createQuery('taskKey').filter('ID','=', orderid);
return datastore.runQuery(query).then((result) =>{
agent.add(result[0]);
});
}
这是我到目前为止所尝试的!无论我在哪里搜索,我都可以找到 firebase 实时数据库的结果。但找不到谷歌数据存储的解决方案!遵循了许多教程。但不能完全正确!请帮忙!
解决方案
推荐阅读
- r - curl :: curl_fetch_memory(url,handle = handle)中的错误:发送失败:连接已重置(RStudio.cloud)
- xcode - Xcode 11.2 未更新
- c++ - 在 Desktop Duplication API 中获取帧之间的 CPU 使用率高,超时间隔不同
- python - 根据 pandas 中的其他数据框过滤一个数据框
- node.js - ES5如何在数据类上实现.Net IEqualityComparer进行比较?
- java - Spring data mongo GridFsOperation.findOne 没有先找到
- csv - 错误:curl:尝试“curl --help”或“curl --manual”以获取更多信息
- c++ - 基类需要引用尚未构造的派生类成员
- python - 定义文件名并在各种循环和函数中调用文件名
- go - 将字符串时间转换为 int