คุณสามารถเพิ่มลักษณะให้กับรุ่นอุปกรณ์ของคุณได้มากตามต้องการ ลักษณะเหล่านี้ไม่ได้เชื่อมโยงกับอุปกรณ์เพียงประเภทเดียว คุณนำไปใช้ได้ตามต้องการ
ขั้นตอนในการเพิ่มลักษณะและจัดการคําสั่งขาเข้ามีดังนี้
กำหนดลักษณะที่คุณต้องการเพิ่ม
เปิดไฟล์
hotword.py
cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
nano hotword.py
เพิ่มโค้ดบล็อกต่อไปนี้ในส่วนที่มีอยู่ที่จัดการคำสั่ง
action.devices.commands.OnOff
(อย่าลบโค้ดบล็อกที่มีอยู่)if command == "action.devices.commands.command-name": if params['parameter-name']: if conditional: print('Something happened.') else: print('Something else happened.')
ค้นหาข้อมูลที่คุณต้องการสำหรับแต่ละตัวแปรในโค้ดบล็อกด้านบน
command-name
ไปที่หน้าลักษณะที่เฉพาะเจาะจงจากขั้นตอนที่ 1 (เช่น ColorTemperature) ใช้คำสั่งจากตารางคำสั่งของอุปกรณ์ parameter-name
ให้ดูที่ตารางคำสั่งของอุปกรณ์ในหน้าลักษณะอีกครั้ง แต่ละคำสั่งจะมีพารามิเตอร์ที่เกี่ยวข้องอย่างน้อย 1 รายการ รายการเหล่านี้จะแสดงอยู่ใน "params"
ใน JSON ของคำขอ EXECUTE ใช้ชื่อพารามิเตอร์ที่ตรงกัน โปรดทราบว่าพารามิเตอร์บางรายการเหล่านี้เป็นออบเจ็กต์ที่มีพารามิเตอร์อื่นๆ เพียงใช้ออบเจ็กต์ระดับบนสุดconditional
คุณไม่จำเป็นต้องใช้เงื่อนไขแบบมีเงื่อนไขในโค้ดของตัวแฮนเดิล แต่การบอกความแตกต่างของวิธีเรียกใช้คำสั่งในอุปกรณ์อาจช่วยได้ ต่อไปนี้เป็นตัวอย่างลักษณะความสว่างและ ColorTemperature
if command == "action.devices.commands.BrightnessAbsolute": if params['brightness']: if params['brightness'] > 50: print('brightness > 50') else: print('brightness <= 50') if command == "action.devices.commands.ColorAbsolute": if params['color']: if params['color'].get('name') == "blue": print('The color is blue.') else: print('The color is not blue.')
อัปเดตรุ่นอุปกรณ์ด้วยลักษณะที่คุณเพิ่มไว้ในขั้นตอนที่ 1
เรียกใช้ซอร์สโค้ดที่แก้ไขแล้ว
cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
python hotword.py --device-model-id my-model
ลองใช้คำค้นหา
Ok Google ตั้งความสว่างเป็น 65%
Ok Google ทำให้เป็นสีน้ำเงิน