我正在使用Google Assistant创建自己的操作,因此我是新手。我想使用自己的数据库并保存用户对数据库的响应。有人可以帮我吗?
答案 0 :(得分:0)
早上好,乔塔姆!您的确切实现代码将取决于您选择的数据库和云环境。就我而言,我为Google Assistant构建了an action,该助手在GCP Cloud Firestore NoSQL数据库中创建了一个条目。
此示例代码在我的数据库中创建一个条目:
app.intent('write to the wall', (conv) => {
console.log(conv);
console.log(conv.input.raw);
var userReply = conv.input.raw;
function writeToDb(userReply){
const dialogflowAgentRef = db.collection('dialogflow').doc('agent');
return db.runTransaction(t => {
t.set(dialogflowAgentRef, {entry: userReply});
conv.ask('The wall now reads, ' + userReply + '\n\n');
conv.close("Thanks for visiting!");
return Promise.resolve('Write complete');
}).then(doc => {
console.log(`Wrote "${userReply}" to the Firestore database.`);
}).catch(err => {
console.log(`Error writing to Firestore: ${err}`);
// console.log(`Failed to write "${userReply}" to the Firestore database.`);
});
}
return writeToDb(userReply);
});
您的数据库create
功能可能略有不同,但希望可以帮助您入门...只要您选择使用Actions on Google's codelabs中引入的技术堆栈:Node.js,Dialogflow和Firebase