ยินดีต้อนรับสู่ศูนย์นักพัฒนาซอฟต์แวร์ Google Home ซึ่งเป็นจุดหมายใหม่เกี่ยวกับวิธีพัฒนาการดําเนินการสําหรับบ้านอัจฉริยะ หมายเหตุ: คุณจะสร้างการดําเนินการต่างๆ ต่อไปในคอนโซลการดําเนินการ

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

เส้นทางการดําเนินการตามพื้นที่จะเกิดขึ้นเมื่อ Google จับคู่อุปกรณ์ที่ควบคุมได้กับอุปกรณ์เข้ากับการตอบสนองของ SYNC จากการตอบสนองในระบบคลาวด์

คุณต้องเพิ่มข้อมูลการค้นพบในคอนโซล Actions เพื่อให้ Google ค้นพบอุปกรณ์ของคุณในเครือข่าย LAN และสร้างเส้นทางดําเนินการตามในเครื่อง นอกจากนี้ คุณยังต้องอัปเดตการตอบสนองของ SYNC จากการดําเนินการตามระบบคลาวด์เพื่อให้ 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
ยูวี

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

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

ต้องระบุ เปย์โหลดสําหรับส่งการออกอากาศ UDP

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

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

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

แพลตฟอร์ม Home ในพื้นที่จะตรวจสอบการตอบสนอง SYNC จาก Fulfillment ของ Cloud Action ของสมาร์ทโฮมและพยายามจับคู่รหัสอุปกรณ์ในช่อง 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": "..."
      }
    }]
  }
}