如何构建一个简单的智能家居应用程序来连接物联网?

How to build a simple smart home app to connect IOT?

我想使用 Actions SDK 创建一个智能家居应用 Google Home。现在,我有一个云服务器和它的OAuth 2.0 API 和一些真正的物联网设备,所有的云环境都准备好了。当我浏览了Smart Home的文档时,我感到很困惑,我编辑了一个json文件并用gaction上传到我的google项目中,还没有完成?如果是,如何处理SNYC、QUERY 和EXECUTE 的响应json?非常感谢。

在您项目的 Actions on Google console 中,应该有一个 webhook 字段。您放置 HomeGraph 将调用的 URL。在您的 webhook 中,您将收到一个 JSON 负载,其中包含 intent 和您要处理的其他参数。

let reqdata = request.body;
let input = reqdata.inputs[0];
let intent = input.intent;
switch (intent) {
    case "action.devices.SYNC":
      console.log('post /ha SYNC');
      // Do sync
      break;
    case "action.devices.QUERY":
      console.log('post /ha QUERY');
      // Do query
      break;
    case "action.devices.EXECUTE":
      console.log('post /ha EXECUTE');
      // Do execute
      break;
    default:
      response.status(401).set({
        'Access-Control-Allow-Origin': '*',
        'Access-Control-Allow-Headers': 'Content-Type, Authorization'
      }).json({error: "missing intent"});
      break;
  }

您应该 return 一个 JSON 负载作为响应。

调整物联网设备的实际方式完全取决于您的服务器和设备实施。

您可以查看 the sample project 了解更多信息。