接收 UDP 扫描数据的类型错误

Receiving a TypeError for UDP scan data

使用 Google 助手的 Local Home SDK 开发者预览版,我在 IDENTIFY 期间从我的应用程序收到了一个 TypeError,该应用程序之前工作正常。当我尝试解码有效负载时,错误声称 UdpScanData 不是有效字符串。

示例代码:

const device = identifyRequest.inputs[0].payload.device;
const response = Buffer.from(device.udpScanData, "hex");

如何访问 UDP 发现负载?

在开发者预览版 SDK 的 0.2.0 更新中,我们已将 UdpScanData 参数迁移为接口,而不仅仅是 [= 的类型别名13=](请参阅更新后的 reference docs)以提高与其他扫描数据类型的一致性。

要访问最新 SDK 中 UDP 扫描的响应负载,请更新您的 package.json 依赖项以使用 v0.2.0:

{
  ...
  "dependencies": {
    "@google/local-home-sdk": "^0.2.0"
  }
}

然后,使用新的 data 属性:

访问负载
const device = identifyRequest.inputs[0].payload.device;
const scanData = device.udpScanData;
const response = Buffer.from(scanData.data, "hex");