Mendukung penemuan perangkat

Jalur fulfillment lokal dibuat saat Google mencocokkan perangkat yang dapat dikontrol secara lokal dengan perangkat yang ditampilkan dalam respons SYNC dari fulfillment cloud Anda.

Agar Google dapat menemukan perangkat Anda di jaringan lokal dan membuat jalur fulfillment lokal, Anda harus menambahkan informasi penemuan di Konsol Actions. Anda juga perlu mengupdate respons SYNC dari fulfillment cloud untuk memberi tahu Google tentang perangkat yang dapat dikontrol secara lokal.

Menyiapkan informasi konfigurasi pemindaian

Untuk menentukan informasi penemuan, ikuti langkah-langkah berikut:

  1. Buka integrasi Cloud-to-cloud di Google Home Developer Console:

    Buka Konsol Developer.

  2. Buka Project > Cloud-to-cloud di sisi kiri layar, lalu pilih Edit untuk integrasi. Di halaman Penyiapan dan konfigurasi, scroll ke Pemenuhan lokal dan aktifkan setelannya. Masukkan URL berikut ke dalam setiap kolom URL pengujian, masukkan project ID Anda, lalu klik Simpan:

    https://<project-id>.web.app/local-home/index.html

  3. Klik + Add scan configuration di bagian Device discovery untuk menambahkan konfigurasi pemindaian baru.

  4. Pilih jenis protokol pencocokan pemindaian dari menu drop-down dan masukkan nilai yang akan dipindai Google.

Tabel berikut menunjukkan atribut yang dapat Anda tambahkan, berdasarkan protokol yang Anda inginkan agar Google gunakan untuk memindai perangkat Anda:

mDNS
Atribut Deskripsi Nilai Contoh
Nama Layanan Wajib. Nama layanan yang dipublikasikan oleh perangkat dalam format service.domain. _http._tcp.local
Nama

Wajib. Filter untuk instance layanan unik dalam format instance.service.domain.

Platform memperlakukan nilai ini sebagai ekspresi reguler dan menampilkan perangkat yang cocok.
my-device-[0-9]{4}\._http\._tcp\.local
UPnP
Atribut Deskripsi Nilai Contoh
Jenis Layanan Wajib. ID layanan UPnP yang sepenuhnya memenuhi syarat dalam format domain:service:type:version. schemas-upnp-org:service:SwitchPower:1
OUI

Opsional. ID Unik Organisasi.

Nilai 24-bit yang mengidentifikasi produsen perangkat. Biasanya, tiga oktet pertama alamat MAC perangkat.
1A:2B:3C
UDP
Atribut Deskripsi Nilai Contoh
Alamat Discovery Wajib. Alamat IP tujuan untuk siaran UDP. 255.255.255.255
Port Penyiaran Wajib. Port tujuan untuk siaran UDP. 5555
Port Pendengar Wajib. Port pendengar untuk respons penemuan UDP. 5556
Paket Penemuan

Wajib. Payload yang akan dikirim dalam siaran UDP.

Diformat sebagai string byte berenkode heksadesimal.
48454C4C4F

Memperbarui respons SYNC di pemenuhan cloud

Intent SYNC melaporkan ke Asisten perangkat yang dikontrol pengguna dan kemampuannya.

Untuk mendukung fulfillment lokal, platform Local Home memeriksa respons SYNC dari fulfillment cloud Action smart home Anda dan mencoba mencocokkan ID perangkat di kolom otherDeviceIds dengan ID verifikasi yang ditampilkan oleh handler IDENTIFY. Entri perangkat tanpa kolom otherDeviceIds akan dikecualikan dari pemenuhan lokal.

Di kolom otherDeviceIds respons SYNC, Anda perlu menetapkan ID perangkat smart home yang dapat dikontrol secara lokal. Kolom ini muncul di tingkat device dalam respons. Google dapat membuat jalur fulfillment lokal di perangkat mana pun dengan ID tertentu.

Gunakan kolom customData untuk menentukan data tambahan yang diperlukan Google untuk terhubung ke perangkat mandiri, atau untuk menargetkan perangkat akhir menggunakan hub (misalnya, nomor port dan informasi khusus protokol lainnya).

Contoh

Cuplikan berikut menunjukkan cara membuat handler SYNC.

Mandiri/Hub
{
  "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": "..."
      }
    }]
  }
}