【问题标题】:How i can read multiple child from database Firebase using DialogFlow?我如何使用 DialogFlow 从数据库 Firebase 中读取多个孩子?
【发布时间】:2019-09-18 00:44:36
【问题描述】:

我在读取 Firebase“真实数据库”数据时遇到问题。

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

错误:500 内部服务器错误

对数据库的访问正常,我只是看不懂孩子。

我正在尝试在对话流控制台中获取电子邮件传递唯一 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}`);
    }
  });
}

【问题讨论】:

    标签: javascript firebase firebase-realtime-database dialogflow-es


    【解决方案1】:

    听起来您想根据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}`);
      }
    });
    

    【讨论】:

    • 非常感谢!完美运行。
    猜你喜欢
    • 1970-01-01
    • 2020-03-30
    • 2021-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-11
    相关资源
    最近更新 更多