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

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

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

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

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

  1. เปิดโปรเจ็กต์สมาร์ทโฮมในคอนโซล Actions
  2. คลิกการดำเนินการในการนำทางด้านซ้าย
  3. ในส่วนกำหนดค่า SDK ของบ้านในพื้นที่ (ไม่บังคับ) > เพิ่มการกำหนดค่าการสแกนอุปกรณ์ ให้คลิกการกำหนดค่าการสแกนใหม่
  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
Discovery Packet

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

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

อัปเดตการตอบสนองการซิงค์ในการจำหน่ายสินค้าผ่านระบบคลาวด์

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

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

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

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

ตัวอย่าง

ข้อมูลโค้ดต่อไปนี้แสดงวิธีสร้างตัวแฮนเดิล 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": "..."
      }
    }]
  }
}