我如何使用 DialogFlow 从数据库 Firebase 读取多个 child?

How i can read multiple child from database Firebase using DialogFlow?

我在读取 Firebase 'real database' 数据时遇到问题。

我使用参数 $nomeProf 创建了一个意图。当我传递一个值并尝试在数据库中查询时,出现“Webhook 调用失败。

Error: 500 Internal Server Error

正在访问数据库,但我无法读取 children。

我正在尝试让电子邮件在 dialogflow 控制台中传递唯一 ID,例如:

'qual o email do faria?', $nomeProf=faria

'faria'和'correa'是我唯一的赞ID:

function getProfessorHandler (agent){
  //let nomeProf = agent.parameters.nomeProf; #I need something like this?
  return admin.database().ref("Professor").once('value').then((snapshot) => {
    const value = snapshot.child("nomeProf").val();
    const email = value.email;  
    if(value !== null){
      agent.add(`O email é:  ${email}`);
    }
  });
}

听起来您想根据 agent.parameters.nomeProf 值从数据库中加载 Professor 的单个子项。

那就是这样的:

return admin.database().ref("Professor").child(agent.parameters.nomeProf).once('value').then((snapshot) => {
  const value = snapshot.val();
  const email = value.email;  
  if(value !== null){
    agent.add(`O email é:  ${email}`);
  }
});