使用DialogFlow Javascript SDK无法获得丰富的响应

时间:2018-01-18 20:51:04

标签: google-cloud-functions dialogflow

我使用' api-ai-javascript'为我的机器人构建了一个自定义视图/网页SDK。一切都很好,但我无法从我的履行中获得RichResponse(云功能)。以下是使用' actions-on-google'

的履行代码
 const { DialogflowApp } = require('actions-on-google');
 ...
 if(hasScreen){
 //hasScreen = app.hasSurfaceCapability(app.SurfaceCapabilities.SCREEN_OUTPUT)

      app.tell(app.buildRichResponse()
      .addSimpleResponse('We found the perfect item for you! ' + product.title)
      .addBasicCard(app.buildBasicCard( 'Your item is ' + product.title )
          .setTitle('Your perfect item!')
          .addButton('View Item', 'https://retailer.com/item/' + product.id)
          .setImage(product.imgurl, 'Product Image')
          .setImageDisplay('CROPPED')
        )
      )
    } else  if (hasAudio){
     //hasAudio = app.hasSurfaceCapability(app.SurfaceCapabilities.AUDIO_OUTPUT)
      app.tell('No screen buy yes audio.)
    } else {
      app.tell('No screen no audio.')
      }

但出于某种原因,在浏览器中进行测试时,我总是得到最后的回复“没有屏幕没有音频。”#39;这是我使用api-ai-javascript(版本1)的客户端代码。

import {ApiAiClient} from "api-ai-javascript";
...
client.textRequest(text)
     .then((response) => {
     //here I only receive 'No scree no audio'
     //I need the rich response here
     })

我在Google上测试屏幕时效果很好,但在我的网站上没有。我怎样才能获得RichResponse?

1 个答案:

答案 0 :(得分:1)

“在谷歌上操作”库仅用于处理Google智能助理发送的消息 - 例如Google Home等扬声器设备或移动设备上的助手应用。

听起来您正在使用Dialogflow Web Demo集成或使用Dialogflow API直接发送查询,然后您不会发送助理平台特有的其他信息。因此,当您使用Dialogflow处理自然语言处理时,您无法利用通过智能助理平台提供的功能。