Firebase 使用dialogflow从数据存储中读取数据
我正在做一个类似于helpdesk(Dialogflow-inlineEditor)的聊天机器人。我能够写入数据存储,但我面临一些数据读取问题,这是查找用户ID的基本操作,但代码尚未启动-请在下面提供帮助代码Firebase 使用dialogflow从数据存储中读取数据,firebase,google-cloud-firestore,integration,dialogflow-es,datastore,Firebase,Google Cloud Firestore,Integration,Dialogflow Es,Datastore,我正在做一个类似于helpdesk(Dialogflow-inlineEditor)的聊天机器人。我能够写入数据存储,但我面临一些数据读取问题,这是查找用户ID的基本操作,但代码尚未启动-请在下面提供帮助代码 const Datastore = require('@google-cloud/datastore'); const datastore = new Datastore({ projectId: 'bot-datastore-mnddjv' }); function
const Datastore = require('@google-cloud/datastore');
const datastore = new Datastore({
projectId: 'bot-datastore-mnddjv'
});
function write(agent) {
var name = agent.parameters.name;
var sur = agent.parameters.sur;
var uid = agent.parameters.uid;
const taskKey = datastore.key('Key');
const entity = {
key: taskKey,
data: {
name: name,
sur: sur,
uid: uid
}
};
return datastore.save(entity).then(() => {
console.log(`Saved ${entity.key.name}: ${entity.data.item_name}`);
agent.add(`Stored ${name},${sur}`); -----> That part is working
});
}
function read(agent){
const query = datastore.createQuery('Key').filter('name');
return datastore.runQuery(query).then(() =>{
const sortA = query.order('name');
const sortD = query.order('name',( {descending:true}));
agent.add("Scores: ",sortA); ----// This funcion is not working
});
}
let intentMap = new Map();
intentMap.set('Default Welcome Intent', welcome);
intentMap.set('Default Fallback Intent', fallback);
intentMap.set('Zapis', write);
intentMap.set('Odczyt', read);
agent.handleRequest(intentMap);
});
问题似乎出在您对
filter()
的使用上
您需要使用诸如=、>等运算符。因此,如果满足该条件,查询将运行
下面是来自的示例代码
您能否更新您的问题,以显示您是如何声明
数据存储的
,以及您可能要导入的任何库?不清楚您使用的是哪种“数据存储”,也不清楚其确切配置。您提供的信息越多,我们就越有可能提供帮助。感谢您的快速审阅,代码已更新。
const query = datastore
.createQuery('Task')
.filter('done', '=', false)
.filter('priority', '>=', 4)
.order('priority', {
descending: true,
});