歡迎來到 Google Home 開發人員中心,你可以在這裡學習如何學習智慧型住宅動作。注意事項:您將在 Actions 主控台建構動作。

支援裝置探索

當 Google 將本機控制裝置與雲端執行要求中的 SYNC 回應傳回的裝置配對時,就會建立本機執行路徑。

如要讓 Google 透過區域網路探索你的裝置並建立本機執行要求路徑,您必須在 Actions 主控台新增探索資訊。此外,您還必須從雲端執行要求更新 SYNC 回應,讓 Google 知道可由本機控制的裝置。

設定掃描設定資訊

如要指定探索資訊,請按照下列步驟操作:

  1. 在 Actions 主控台開啟智慧型住宅專案。
  2. 在左側導覽面板中,按一下「動作」
  3. 在「Configure local home SDK (Optional)」(設定本機主畫面 SDK (選用)) >「Add device scan configuration」(新增裝置掃描設定) 下方,按一下「New scan config」(新增掃描設定)
  4. 從下拉式選單中選取掃描作業的通訊協定類型,並輸入 Google 要掃描的值。

下表根據 Google 用來掃描您裝置的通訊協定,新增您可能會新增的屬性:

mDNS
屬性 說明 範例值
服務名稱 必要欄位。裝置發布的服務名稱,格式為 service.domain _http._tcp.local
姓名

必要欄位。篩選不重複的服務執行個體,格式為 instance.service.domain

平台會將這個值視為規則運算式,並傳回任何相符的裝置。
my-device-[0-9]{4}\._http\._tcp\.local
UPnP
屬性 說明 範例值
服務類型 必要欄位。UPnP 服務的完整 ID,格式為 domain:service:type:version schemas-upnp-org:service:SwitchPower:1
OUI

選用設定。 機構專屬 ID

用來識別裝置製造商的 24 位元值。通常,裝置 MAC 位址的前三位數
1A:2B:3C
UDP
屬性 說明 範例值
廣播地址 必要欄位。UDP 廣播的目的地 IP 位址。 255.255.255.255
播送通訊埠 必要欄位。UDP 廣播的目的地通訊埠。 5555
聆聽通訊埠 必要欄位。監聽 UDP 探索回應的通訊埠。 5556
探索封包

必要欄位。要在 UDP 廣播中傳送的酬載。

格式化為十六進位編碼的位元組字串。
48454C4C4F

更新雲端執行要求中的 SYNC 回應

SYNC 意圖報告會向 Google 助理控管使用者控管的裝置及其功能。

如要支援本機執行要求,本地主畫面平台會檢查智慧型住宅動作雲端執行要求中的 SYNC 回應,並嘗試將 otherDeviceIds 欄位的裝置 ID 與 IDENTIFY 處理常式傳回的驗證 ID 相符。沒有 otherDeviceIds 欄位的裝置項目會從本機執行要求中排除。

SYNC 回應的 otherDeviceIds 欄位中,設定可在本機控制的智慧住宅裝置裝置 ID。欄位會顯示在回應的 device 層級。Google 可以使用任何具有指定 ID 的裝置,建立本機執行要求路徑。

使用 customData 欄位指定 Google 連接到獨立裝置所需的任何其他資料,或是透過 Hub 指定結束的裝置 (例如通訊埠編號和其他通訊協定專屬資訊)。

範例

下列程式碼片段說明如何建立 SYNC 處理常式。

獨立/中樞
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "agentUserId": "1836.15267389",
    "devices": [{
      "id": "123",
      "type": "action.devices.types.OUTLET",
      "traits": [
        "action.devices.traits.OnOff"
      ],
      "name": {
        "name": "Night light"
      },
      "willReportState": false,
      "otherDeviceIds": [{
        "deviceId": "local-device-id"
      }],
      "customData": {
        "port": 5555,
        "authToken": "..."
      }
    }]
  }
}