สนับสนุนการค้นพบอุปกรณ์

ระบบจะสร้างเส้นทาง Fulfillment ภายในเมื่อ Google จับคู่อุปกรณ์ที่ควบคุมในเครื่องกับอุปกรณ์ที่แสดงผลในการตอบสนอง SYNC จาก Fulfillment ระบบคลาวด์ของคุณ

คุณต้องเพิ่มข้อมูลการค้นพบในคอนโซลการดำเนินการ เพื่อให้ Google ค้นพบอุปกรณ์ในเครือข่าย LAN และสร้างเส้นทาง Fulfillment ภายในเครื่อง นอกจากนี้ คุณยังต้องอัปเดตการตอบสนอง SYNC จาก Fulfillment ระบบคลาวด์เพื่อให้ Google ทราบเกี่ยวกับอุปกรณ์ที่ควบคุมในเครื่องได้

ตั้งค่าข้อมูลการกำหนดค่าการสแกน

หากต้องการระบุข้อมูลการค้นพบ ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิดโปรเจ็กต์สมาร์ทโฮมในคอนโซล Actions
  2. คลิกการดำเนินการที่การนำทางด้านซ้าย
  3. ในส่วนกำหนดค่า SDK ของ Home ในเครื่อง (ไม่บังคับ) > เพิ่มการกำหนดค่าการสแกนอุปกรณ์ ให้คลิกการกำหนดค่าการสแกนใหม่
  4. เลือกประเภทโปรโตคอลที่ตรงกับการสแกนจากเมนูแบบเลื่อนลง แล้วป้อนค่าที่ต้องการให้ Google สแกน

ตารางต่อไปนี้แสดงแอตทริบิวต์ที่คุณเพิ่มได้โดยอิงตามโปรโตคอลที่ต้องการให้ Google ใช้เพื่อสแกนหาอุปกรณ์

mDNS
แอตทริบิวต์ คำอธิบาย ค่าตัวอย่าง
ชื่อบริการ ต้องระบุ ชื่อบริการที่เผยแพร่โดยอุปกรณ์ในรูปแบบ service.domain _http._tcp.local
ชื่อ

ต้องระบุ กรองอินสแตนซ์บริการที่ไม่ซ้ำกันในรูปแบบ instance.service.domain

แพลตฟอร์มจะถือว่าค่านี้เป็นนิพจน์ทั่วไปและแสดงผลอุปกรณ์ที่ตรงกัน
my-device-[0-9]{4}\._http\._tcp\.local
UPnP
แอตทริบิวต์ คำอธิบาย ค่าตัวอย่าง
ประเภทบริการ ต้องระบุ ตัวระบุที่มีคุณสมบัติครบถ้วนของบริการ UPnP ในรูปแบบ domain:service:type:version schemas-upnp-org:service:SwitchPower:1
หน่วย OUI

ไม่บังคับ ตัวระบุที่ไม่ซ้ำกันขององค์กร

ค่า 24 บิตที่ระบุผู้ผลิตอุปกรณ์ โดยปกติแล้วจะเป็น 3 อ็อกเท็ตแรกของที่อยู่ MAC ของอุปกรณ์
1A:2B:3C
UDP
แอตทริบิวต์ คำอธิบาย ค่าตัวอย่าง
ที่อยู่ในการบรอดแคสต์ข้อความ ต้องระบุ ที่อยู่ IP ปลายทางสำหรับการออกอากาศ UDP 255.255.255.255
พอร์ตออกอากาศ ต้องระบุ พอร์ตปลายทางสำหรับการกระจายข้อมูล UDP 5555
พอร์ตสำหรับฟัง ต้องระบุ พอร์ตฟังสำหรับการตอบสนองการค้นพบ UDP 5556
แพ็กเก็ตการค้นพบ

ต้องระบุ เพย์โหลดที่จะส่งในการออกอากาศ UDP

จัดรูปแบบเป็นสตริงไบต์ที่เข้ารหัสเลขฐาน 16
48454C4C4F

อัปเดตการตอบสนอง SYNC ใน Fulfillment ระบบคลาวด์

Intent ของ SYNC จะรายงานให้ Assistant ทราบถึงอุปกรณ์ที่ผู้ใช้ควบคุมและความสามารถของพวกเขา

แพลตฟอร์ม Local Home จะตรวจสอบการตอบสนองของ SYNC จากการ Fulfillment ระบบคลาวด์ของการดำเนินการสมาร์ทโฮมและพยายามจับคู่รหัสอุปกรณ์ในช่อง otherDeviceIds กับรหัสยืนยันที่แสดงโดยเครื่องจัดการ IDENTIFY เพื่อรองรับ Fulfillment ภายในเครื่อง รายการอุปกรณ์ที่ไม่มีช่อง otherDeviceIds จะไม่รวมอยู่ใน Fulfillment ภายในเครื่อง

ในช่อง otherDeviceIds ของการตอบสนอง SYNC คุณต้องตั้งค่ารหัสอุปกรณ์ของอุปกรณ์สมาร์ทโฮมที่ควบคุมในเครื่องได้ ช่องนี้จะปรากฏในระดับ device ในการตอบกลับ Google สร้างเส้นทางการดำเนินการตามคำสั่งซื้อในพื้นที่ในอุปกรณ์ใดก็ได้ที่มีรหัสที่กำหนด

ใช้ช่อง customData เพื่อระบุข้อมูลเพิ่มเติมที่ Google จำเป็นต้องเชื่อมต่อกับอุปกรณ์แบบสแตนด์อโลน หรือเพื่อกำหนดเป้าหมายอุปกรณ์ปลายทางผ่านฮับ (เช่น หมายเลขพอร์ตและข้อมูลอื่นๆ เฉพาะโปรโตคอล)

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีการสร้างเครื่องจัดการ SYNC

สแตนด์อโลน/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": "..."
      }
    }]
  }
}