Dialogflow es 使用Api.ai从Google Actions请求用户位置

Dialogflow es 使用Api.ai从Google Actions请求用户位置,dialogflow-es,actions-on-google,google-home,Dialogflow Es,Actions On Google,Google Home,Google Actions可以为您提供用户的位置、姓名和其他一些详细信息。如果没有nodejs SDK,如何在Api.ai上实现这一点?谷歌的所有示例都使用Nodejs sdk 根据声明,这只是将正确的json放入响应中的问题,但是不清楚如何让Api.ai填充此json 我读过这本书,但还不清楚 对于非nodejs开发人员来说,示例代码或更详细的文档将非常有用。我在Java中工作,但是,一个关于Api.ai如何为Google Actions构建响应json的好解释对所有语言的开发人员都有帮助。

Google Actions可以为您提供用户的位置、姓名和其他一些详细信息。如果没有nodejs SDK,如何在Api.ai上实现这一点?谷歌的所有示例都使用Nodejs sdk

根据声明,这只是将正确的json放入响应中的问题,但是不清楚如何让Api.ai填充此json

我读过这本书,但还不清楚


对于非nodejs开发人员来说,示例代码或更详细的文档将非常有用。我在Java中工作,但是,一个关于Api.ai如何为Google Actions构建响应json的好解释对所有语言的开发人员都有帮助。

你必须学习Api.ai HTTP Api。作为参考,请尝试设置节点示例-这样您可以看到JSON文件的运行情况

有关权限,请尝试以下示例

您即将发布的JSON如下所示:

{
  "contextOut": [
    {
      "lifespan": 100, 
      "name": "_actions_on_google_", 
      "parameters": {}
    }, 
    {
      "lifespan": 1, 
      "name": "requesting_permission", 
      "parameters": {}
    }
  ], 
  "data": {
    "google": {
      "expect_user_response": true, 
      "is_ssml": false, 
      "no_input_prompts": [], 
      "permissions_request": {
        "opt_context": "To send you something", 
        "permissions": [
          "DEVICE_PRECISE_LOCATION"
        ]
      }
    }
  }, 
  "speech": "PLACEHOLDER_FOR_PERMISSION"
}

现在,Java程序员可以在Google上使用Actions了。官方SDK到Java/Kotlin有一个开源端口。API非常相似,因此对于位置,它类似于:

app.askForLocation()

只是无耻的自我推销。。。我们开发了一个工具集来帮助skill和lambda开发。你会发现它很有用。过来看: