ระบบจะสร้างเส้นทางการดำเนินการในพื้นที่เมื่อ Google จับคู่อุปกรณ์ที่ควบคุมได้ในพื้นที่
กับอุปกรณ์ที่ส่งคืนในคำตอบ SYNC
จากการดำเนินการในระบบคลาวด์
หากต้องการให้ Google ค้นพบอุปกรณ์ในเครือข่าย LAN และสร้าง
เส้นทางการประมวลผลในพื้นที่ คุณต้องเพิ่มข้อมูลการค้นพบในคอนโซล Actions
นอกจากนี้ คุณยังต้องอัปเดตการตอบกลับ SYNC
จากการดำเนินการตามคำสั่งบนระบบคลาวด์เพื่อให้ Google ทราบเกี่ยวกับอุปกรณ์ที่ควบคุมได้ในพื้นที่
ตั้งค่าข้อมูลการกำหนดค่าการสแกน
หากต้องการระบุข้อมูลการค้นพบ ให้ทำตามขั้นตอนต่อไปนี้
ไปที่Cloud-to-cloudการผสานรวมในGoogle Home Developer Console
ไปที่โปรเจ็กต์ > Cloud-to-Cloud ทางด้านซ้ายของหน้าจอ แล้ว เลือกแก้ไขสำหรับการผสานรวม ในหน้าการตั้งค่าและการกำหนดค่า ให้เลื่อนไปที่การจัดการคำสั่งซื้อในร้าน แล้วเปิดการตั้งค่า ป้อน URL ต่อไปนี้ลงในช่อง URL ทดสอบแต่ละช่อง แทรกรหัสโปรเจ็กต์ แล้วคลิกบันทึก
https://<project-id>.web.app/local-home/index.html
คลิก + เพิ่มการกำหนดค่าการสแกนในส่วนการค้นพบอุปกรณ์เพื่อเพิ่มการกำหนดค่าการสแกนใหม่
เลือกประเภทโปรโตคอลการจับคู่การสแกนจากเมนูแบบเลื่อนลง แล้วป้อนค่าเพื่อให้ Google สแกน
ตารางต่อไปนี้แสดงแอตทริบิวต์ที่คุณเพิ่มได้โดยอิงตามโปรโตคอล ที่ต้องการให้ Google ใช้เพื่อสแกนหาอุปกรณ์
แอตทริบิวต์ | คำอธิบาย | ค่าตัวอย่าง |
---|---|---|
ชื่อบริการ |
ต้องระบุ ชื่อบริการที่อุปกรณ์เผยแพร่ในรูปแบบ
service.domain
|
_http._tcp.local |
ชื่อ |
ต้องระบุ กรองอินสแตนซ์บริการที่ไม่ซ้ำกันในรูปแบบ
|
my-device-[0-9]{4}\._http\._tcp\.local |
แอตทริบิวต์ | คำอธิบาย | ค่าตัวอย่าง |
---|---|---|
ประเภทบริการ |
ต้องระบุ ตัวระบุที่ตรงตามเกณฑ์ทั้งหมดของบริการ UPnP ในรูปแบบ
domain:service:type:version
|
schemas-upnp-org:service:SwitchPower:1 |
OUI |
ไม่บังคับ ตัวระบุที่ไม่ซ้ำกันระดับองค์กร ค่า 24 บิตที่ระบุผู้ผลิตอุปกรณ์ โดยปกติแล้วจะเป็น 3 อ็อกเทตแรกของที่อยู่ MAC ของอุปกรณ์ |
1A:2B:3C |
แอตทริบิวต์ | คำอธิบาย | ค่าตัวอย่าง |
---|---|---|
ที่อยู่ Discovery | ต้องระบุ ที่อยู่ IP ปลายทางสำหรับการออกอากาศ UDP | 255.255.255.255 |
พอร์ตการออกอากาศ | ต้องระบุ พอร์ตปลายทางสำหรับการออกอากาศ UDP | 5555 |
พอร์ตที่กำลังรอการเชื่อมต่อ | ต้องระบุ พอร์ตฟังสำหรับการตอบกลับการค้นหา UDP | 5556 |
แพ็กเกจ Discovery | ต้องระบุ เพย์โหลดที่จะส่งในการออกอากาศ UDP จัดรูปแบบเป็นสตริงของไบต์ที่เข้ารหัสฐานสิบหก |
48454C4C4F |
อัปเดตการตอบกลับ SYNC ในการดำเนินการตามคำสั่งบนระบบคลาวด์
รายงานความตั้งใจของ 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": "..." } }] } }