Google dialogflow api v2 库上的操作获取未定义的位置

Actions on Google dialogflow api v2 library gets location undefined

我制作 AoG 动作已有一段时间了。我被位置问题困住了。我正在请求位置和名称的权限,如下面的代码所示。

const functions = require('firebase-functions');
const { dialogflow, Permission, Confirmation } = require('actions-on-google');


const app = dialogflow({clientId:CLIENT_ID);
  app.intent('ask.for.permission', (conv) => {
  const options = 
  {
    context: 'To address you by name and know your location',
    permissions: ['NAME', 'DEVICE_PRECISE_LOCATION'],
  };
  conv.ask(new Permission(options));
});

app.intent('ask.for.permission.confirmation', (conv, params, confirmationGranted) => {
  const {name} = conv.user;
  const {loc} = conv.device.location;
  console.log(name);
  console.log(loc);
  if (confirmationGranted) {
    if (name) {
      conv.ask(`I'll send your orders ${name.display}.`);
    }
  }
});

然而,每当我 运行 这个,即使我试图在日志中显示它们,它也会说 'undefined'。我可以获得用户名,但位置仍未定义。我认为这是因为我正在使用 dialogflow 库,但我不知道如何找到解决方案。除了使用 actionssdk 之外,我愿意听取有关获取位置的建议,或者我可以同时使用它们吗?

可能是因为它 returns 位置作为 LatLng 对象。尝试 conv.device.location.coordinates.latitude / conv.device.location.coordinates.longitude