เอกสารนี้แสดงข้อผิดพลาดและข้อยกเว้นที่รองรับอย่างเป็นทางการสําหรับอุปกรณ์ในบ้านอัจฉริยะ โปรดใช้ข้อผิดพลาดที่กําหนดและรหัสข้อยกเว้นเหล่านี้ในการตอบสนองความตั้งใจ หรือในการแจ้งเตือนในกรณีที่คุณใช้งาน Google Assistant จะแจ้งเตือนผู้ใช้ปลายทางถึงปัญหาที่เกี่ยวข้องกับคําสั่งหรือสถานะของอุปกรณ์ที่ระบุ หากการตอบสนองมีรูปแบบที่ไม่ถูกต้องหรือ
errorCode
Google Assistant จะแสดงข้อความแสดงข้อผิดพลาดทั่วไปแก่ผู้ใช้ เช่น
"ขออภัย อุปกรณ์ไม่พร้อมใช้งานในขณะนี้"
ข้อผิดพลาด
คุณควรแสดงรหัสข้อผิดพลาดเมื่อมีปัญหาที่ทําให้ดําเนินการหรือคําขอการค้นหาไม่สําเร็จ เช่น หากล็อกประตูติดขัดและล็อกหรือปลดล็อกไม่ได้ ระบบควรส่งข้อผิดพลาดเกี่ยวกับสถานะนี้ให้กับผู้ใช้
อาจแนบรหัสข้อผิดพลาดที่ระดับอุปกรณ์หรือที่ระดับส่วนกลาง ตัวอย่างเช่น หากผู้ใช้มีไฟหลายดวงจากผู้ให้บริการ 1 ราย และพวกเขาควบคุมโดยฮับ เมื่อผู้ใช้ขอปิดไฟทุกดวง ผู้ให้บริการอาจแสดงข้อผิดพลาดระดับอุปกรณ์หากไฟดวงเดียวออฟไลน์ หรือข้อผิดพลาดระดับสากล หากไฟทั้งดวงออฟไลน์และไม่ได้ควบคุมหลอดไฟ หากอุปกรณ์ทั้งหมดออฟไลน์อยู่ ก็ไม่จําเป็นต้องใช้ข้อผิดพลาดระดับสากลหรืออุปกรณ์ระดับเดียวกัน เมื่ออุปกรณ์ออฟไลน์ คุณควรรายงานสถานะ {"online": false}
ใน reportState แม้ว่าจะส่งคืนรหัสข้อผิดพลาด deviceOffline
ก็ตาม
บทสรุปมีดังนี้
- ข้อผิดพลาดระดับส่วนกลาง: อุปกรณ์ทั้งหมดในการตอบกลับมีข้อผิดพลาดเหมือนกัน
- ข้อผิดพลาดระดับท้องถิ่น: การตอบสนองผสมกับข้อผิดพลาดและเคสที่ประสบความสําเร็จ
ข้อผิดพลาดระดับส่วนกลาง
ข้อมูลโค้ด JSON ต่อไปนี้แสดงวิธีแสดงข้อผิดพลาดระดับโลกในการตอบสนอง QUERY หรือ EXECUTE
ตัวอย่างข้อผิดพลาดระดับโลก deviceOffline
เนื่องจากฮับออฟไลน์
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "errorCode": "deviceOffline", "status" : "ERROR" } }
ตัวอย่างข้อผิดพลาดระดับโลก inSoftwareUpdate
เนื่องจากฮับกําลังอัปเดต:
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "errorCode": "inSoftwareUpdate", "status" : "ERROR" } }
ข้อผิดพลาดระดับอุปกรณ์
การตอบกลับ QUERY
ข้อมูลโค้ด JSON ต่อไปนี้แสดงวิธีแสดงข้อผิดพลาดระดับอุปกรณ์ในการตอบกลับ QUERY
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": { "device-id-1": { "errorCode": "deviceOffline", "status" : "ERROR" }, "device-id-2": { "errorCode": "deviceOffline", "status" : "ERROR" } } } }
การตอบสนอง EXECUTE
ข้อมูลโค้ด JSON ต่อไปนี้แสดงวิธีแสดงข้อผิดพลาดระดับอุปกรณ์ในการตอบกลับ
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "device-id-1" ], "status": "ERROR", "errorCode": "deviceOffline" }, { "ids": [ "device-id-2" ], "status": "SUCCESS", "states": { "on": true, "online": true } } ] } }
การแจ้งเตือนที่มีข้อผิดพลาด
การแจ้งเตือนเชิงรุก
ข้อมูลโค้ด JSON ต่อไปนี้แสดงวิธีรายงานข้อผิดพลาดระดับอุปกรณ์ในการแจ้งเตือนเชิงรุก
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "agentUserId": "agent-user-id-1", "eventId": "unique-event-id-1", "payload": { "devices": { "notifications": { "device-id-1": { "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceDoorOpen" } } } } } }
การตอบกลับติดตามผล
ข้อมูลโค้ด JSON ต่อไปนี้แสดงวิธีรายงานข้อผิดพลาดระดับอุปกรณ์ในการตอบสนองติดตามผล
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "agentUserId": "agent-user-id-1", "eventId": "unique-event-id-1", "payload": { "devices": { "notifications": { "device-id-1": { "LockUnlock": { "priority": 0, "followUpResponse": { "status": "FAILURE", "errorCode": "deviceJammingDetected", "followUpToken": "PLACEHOLDER" } } } } } } }
รายการข้อผิดพลาด
ข้อผิดพลาดต่อไปนี้จะสร้าง TTS ที่เกี่ยวข้องในอุปกรณ์
- ข้างต้นMaxLightEffectsDuration : มากกว่าระยะเวลาสูงสุดที่ 1 ชั่วโมง โปรดลองอีกครั้ง
- ที่ด้านบนตัวจับเวลาสูงสุด : ฉันตั้งค่า <อุปกรณ์(สูงสุด) ได้ไม่เกิน <ระยะเวลา>
- actionNotavailable : ขอโทษด้วย ตอนนี้ดูเหมือนจะทําแบบนั้นไม่ได้
- actionUnavailable AlongRunning : <device(s)> <is/are> กําลังทํางานอยู่ ก็เลยเปลี่ยนแปลงอะไรไม่ได้
- เผยแพร่แล้ว : <device(s)> <is/are> มีอาวุธแล้ว
- กําหนดค่าแล้ว : <device(s)> <is/are> ตั้งค่าเป็นอุณหภูมิสูงสุดแล้ว
- มีอยู่แล้วที่ : <device(s)> <is/are> ตั้งค่าเป็นอุณหภูมิต่ําสุดแล้ว
- ปิดแล้ว : <device(s)> <is/are> ปิดไปแล้ว
- ปิดระบบแล้ว : <device(s)> <is/are> ปิดระบบแล้ว
- แท่นชาร์จแล้ว : <device(s)> <is/are> อยู่บนแท่นชาร์จแล้ว
- alreadyInState : <device(s)> <is/are> อยู่ในสถานะดังกล่าวอยู่แล้ว
- ล็อกอยู่แล้ว : <device(s)> <is/are> ล็อกอยู่แล้ว
- ปิดแล้ว : <device(s)> <is/are> ปิดแล้ว
- เปิดอยู่ : <device(s)> <is/are> เปิดอยู่
- เปิดอยู่แล้ว : <device(s)> <is/are> เปิดอยู่แล้ว
- หยุดชั่วคราวแล้ว : <device(s)> <is/are> หยุดชั่วคราวแล้ว
- เริ่มต้นแล้ว : <device(s)> <is/are> เริ่มแล้ว
- หยุดแล้ว : <device(s)> <is/are> หยุดทํางานแล้ว
- ปลดล็อกแล้ว : <device(s)> <is/are> ปลดล็อกแล้ว
- ambigrossZoneName : ขออภัย <device(s)> ไม่สามารถระบุโซนที่คุณอยู่ได้ โปรดตรวจสอบว่าโซนมีชื่อไม่ซ้ํากันและลองอีกครั้ง
- amountAboveLimit : มากกว่าที่ <device(s)> รองรับได้
- appLaunchFailed : ขออภัย เปิดใช้ <app name> ใน <device(s)> ไม่สําเร็จ
- ArmFailure : <device(s)> เปิดระบบไม่ได้
- ArmLevelneeded : ฉันไม่แน่ใจว่าจะตั้งค่า <device(s)> เป็นระดับใด ลองพูดว่า "ตั้งค่า <อุปกรณ์> เป็น <ความปลอดภัยต่ํา>" หรือ "ตั้ง <อุปกรณ์> เป็น <ความปลอดภัยสูง>"
- authFailure : ฉันดูเหมือนจะเข้าถึง <device(s)> ไม่ได้ ลองตรวจสอบแอปดูว่าตั้งค่า <device/devices> <is/are> ครบถ้วนแล้ว
- BagFull : <device(s)> <has/have> <a Fullสัมภาระ/fullสัมภาระ> โปรดเว้นว่างไว้ <it/them> แล้วลองอีกครั้ง
- Underต่ําสุดLightEffectsDuration : น้อยกว่าระยะเวลาขั้นต่ําที่ 5 นาที โปรดลองอีกครั้ง
- ต่ํากว่าระยะเวลาต่ําสุด : ฉันตั้งเวลา <อุปกรณ์) ไม่ได้เป็นเวลาสั้นๆ โปรดลองอีกครั้ง
- binFull : <device(s)> <has/have> <a Full bin/full bins>
- cancelArmingRestricted : ขออภัย ฉันยกเลิกการเปิดใช้งาน <device(s)> ไม่ได้
- cancelTooLate : ขออภัย คุณยกเลิกไม่ทันแล้ว ใช้ <device(s)> หรือแอปแทน
- channelSwitchFailed : ขออภัย การเปลี่ยนไปใช้ช่อง <channel name> ไม่ได้ โปรดลองอีกครั้งในภายหลัง
- ปัญหาที่ชาร์จ : ดูเหมือนว่าอุปกรณ์ <device(s)> <has/have> <aแสดงถึงที่ชาร์จ/ปัญหาเกี่ยวกับที่ชาร์จ>
- CommandInsertFailed : ประมวลผลคําสั่งสําหรับ <device(s)> ไม่ได้
- แบตเตอรี่หมด : <device(s)> <has/have> <a dead dead/adadแบตเตอรี่s>
- องศานอกช่วง : องศาที่ขออยู่นอกช่วงของ <device(s)>
- deviceAlertNeedsAssistance : <device(s)> <has/have> ซึ่งเป็นการแจ้งเตือนที่ใช้งานอยู่และ <need(s)> ที่คุณให้ความช่วยเหลือ
- deviceAtExtremeTemperature : <device(s)> <is/are> ที่ <anไม่มีให้บริการอุณหภูมิสูงสุด/อุณหภูมิสูงสุด>
- deviceไม่ว่าง : ขออภัย ดูเหมือนว่า <device(s)> ได้ดําเนินการบางอย่างแล้วตอนนี้
- การชาร์จอุปกรณ์ : ขออภัย ดูเหมือนว่า <device(s)> จะทําเช่นนั้นไม่ได้เนื่องจากการชาร์จ (ha_shared.ItsYoure size=$item.devices.total_device_count)
- deviceCloged : ขออภัย ดูเหมือนว่า <device(s)> อุดตัน
- อุปกรณ์ที่กําลังจ่ายอยู่ : <device(s)> กําลังจ่ายอาหารอยู่แล้วในขณะนี้
- deviceDoorOpen : ประตูเปิดอยู่ใน <device(s)> โปรดปิดแล้วลองอีกครั้ง
- deviceHandleClosed : แฮนเดิลปิดใน <device(s)> โปรดเปิดแล้วลองอีกครั้ง
- deviceJammingDetected : <device(s)> <is/are> ติดขัด
- deviceLidOpen : ฝาเปิดอยู่ใน <device(s)> โปรดปิดแล้วลองอีกครั้ง
- deviceneedsRepair : <device(s)> <need(s)> ต้องซ่อม โปรดติดต่อตัวแทนจําหน่ายที่ให้บริการในพื้นที่
- deviceNotDock : ขออภัย ดูเหมือนว่าอุปกรณ์ <device(s)> <isn't/aren't> บนแท่นชาร์จแล้ว โปรดชาร์จ <it/them> แล้วลองอีกครั้ง
- deviceNotFound : <device(s)> <is/are> ไม่พร้อมใช้งาน คุณอาจต้องลองตั้งค่า <it/them> อีกครั้ง
- deviceNotMounted : ขออภัย ดูเหมือนว่าอุปกรณ์ <device(s)> จะทําเช่นนั้นไม่ได้เนื่องจาก <it/you> <is/are> ไม่ได้ติดตั้ง
- deviceNotReady : <device(s)> <is/are>ยังไม่พร้อม
- deviceStuck : <device(s)> <is/are> ค้างอยู่และต้องการความช่วยเหลือของคุณ
- เปลี่ยนอุปกรณ์ : <device(s)> <has/have> มีการเปลี่ยนแปลง
- deviceThermalShutdown : ขออภัย ดูเหมือนว่า <device(s)> ปิดลงเพราะมีอุณหภูมิสูงหรือต่ําเกินไป
- directResponseOnlyUnreachable : <device(s)> <don's/don't> รองรับรีโมตคอนโทรล
- disarmFailure : ปิดระบบ <device(s)> ไม่ได้
- discreteOnlyOpenClosed : ขออภัย <device(s)> เปิดหรือปิดได้ตลอด
- dispenseAmountAboveLimit : <device(s)> ไม่สามารถจ่ายปริมาณมากได้
- dispenseAmountด้านล่างLimit : <device(s)> ไม่สามารถจ่ายจํานวนเงินน้อยได้
- dispenseAmountRemainingExceeded : <device(s)> มี <dispense item> ไม่เพียงพอที่จะดําเนินการ
- dispenseFractionalAmountNotSupported : <device(s)> ไม่สามารถจ่ายเศษส่วนของ <dispense item>
- dispenseFractionalUnitNotSupported : <device(s)> ไม่รองรับเศษส่วนของหน่วยนั้นสําหรับ <dispense item>
- dispenseUnitNotSupported : <device(s)> ไม่รองรับหน่วยนั้นสําหรับ <dispense item>
- ประตูที่ปิดไปแล้ว : คุณไม่ได้เปิดอุปกรณ์ <device(s)> มาระยะหนึ่งแล้ว โปรดเปิดประตู ดูให้แน่ใจว่ามีของอยู่ในนั้นแล้วลองอีกครั้งนะ
- ฉุกเฉิน: : <device(s)> <is/are> ในโหมดทําความร้อนฉุกเฉิน <it/the> จึงต้องปรับด้วยตัวเอง
- faulty Battery : <device(s)> <has/have> <a Faulty Battery/faulity แบตเตอรี่>
- ราคาพื้นไม่สามารถเข้าถึงได้ : <device(s)> เข้าถึงห้องนั้นไม่ได้ โปรดย้าย <it/them> ไปยังชั้นที่ถูกต้องแล้วลองอีกครั้ง
- ฟังก์ชันไม่รองรับ : จริงๆ แล้ว <device(s)> <notd/don't> รองรับฟังก์ชันนั้น
- GeneralDispenseNotSupported : ฉันอยากทราบว่าคุณต้องการจ่ายอะไร โปรดลองอีกครั้งพร้อมตั้งชื่อสินค้า
- HardError : ขออภัย เกิดข้อผิดพลาดที่ทําให้ควบคุมอุปกรณ์ในบ้านไม่ได้
- HardError : ขออภัย เกิดข้อผิดพลาดที่ทําให้ควบคุมอุปกรณ์ในบ้านไม่ได้
- inAutoMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดอัตโนมัติ หากต้องการปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- inAwayMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดไม่อยู่บ้าน หากต้องการควบคุมตัวควบคุมอุณหภูมิ คุณจะต้องสลับเป็นโหมดอยู่บ้านเองโดยใช้แอป Nest ในโทรศัพท์ แท็บเล็ต หรือคอมพิวเตอร์
- inDryMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดแห้ง หากต้องการปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- inEcoMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดประหยัดพลังงาน หากต้องการปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- inFanOnlyMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดสําหรับแฟนๆ เท่านั้น หากต้องการปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- ใน HeatOrCool : <device(s)> <is/are>ไม่ได้อยู่ในโหมดทําความร้อน/ทําความเย็น
- inHumidifierMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดเครื่องทําความชื้น หากต้องการปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- inOFFMode : <device(s)> <is/are> ปิดอยู่ ถ้าจะปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- inPurifierMode : <device(s)> <is/are> ตั้งค่าเป็นโหมดเครื่องฟอกอากาศ หากต้องการปรับอุณหภูมิ คุณจะต้องเปลี่ยน <it/them> เป็นโหมดอื่น
- inSleepMode : <device(s)> <is/are> ในโหมดสลีป โปรดลองอีกครั้งในภายหลัง
- inSoftwareUpdate : <device(s)> <is/are> อยู่ระหว่างการอัปเดตซอฟต์แวร์
- LockFailure : <device(s)> ล็อกไม่ได้
- lockState : <device(s)> <is/are> ถูกล็อกอยู่ในขณะนี้
- LockToRange : อุณหภูมินั้นอยู่นอกช่วงที่ล็อกใน <device(s)>
- แบตเตอรี่เหลือน้อย : <device(s)> <has/have> แบตเตอรี่เหลือน้อย
- maxsettingReached : <device(s)> <is/are> ตั้งค่าเป็นการตั้งค่าสูงสุด
- maxSpeedReached : <device(s)> <is/are> ตั้งค่าเป็นความเร็วสูงสุดแล้ว
- minsettingReached : <device(s)> <is/are> ตั้งค่าเป็นการตั้งค่าต่ําสุด
- minSpeedReached : <device(s)> <is/are> ตั้งค่าเป็นความเร็วต่ําสุดแล้ว
- MonitoringServiceConnectionLost : <device(s)> <has/have> ขาดการเชื่อมต่อ <its/the> กับบริการตรวจสอบ
- needไฟล์แนบ : ขออภัย ดูเหมือนว่า <device(s)> <is/are> ไม่มีไฟล์แนบที่จําเป็น เปลี่ยนใหม่แล้วลองอีกครั้ง
- needBin : ขออภัย ดูเหมือนว่า <device(s)> <is/are> ไม่มีถังเก็บ เปลี่ยนใหม่แล้วลองอีกครั้ง
- needPads : <device(s)> <need(s)> แผ่นข้อมูลใหม่
- needSoftwareUpdate : <device(s)> <need(s)> การอัปเดตซอฟต์แวร์
- needWater : <device(s)> <need(s)> Water
- networkProfileNotRecognized : ขออภัย ฉันไม่รู้จัก "<network profile>" ใน <device(s)>
- networkSpeedTestInProgress : ฉันทดสอบ <เครือข่าย> <speed/speeds>> อยู่แล้ว
- noAvailableApp : ขออภัย ดูเหมือนว่า <app name> ไม่พร้อมใช้งาน
- noavailableChannel : ขออภัย ดูเหมือนว่าช่อง <channel name> ไม่พร้อมใช้งาน
- noChannelSubscription : ขออภัย คุณยังไม่ได้ติดตามช่อง <channel name> ในขณะนี้
- ไม่มีตัวจับเวลาที่มีอยู่ : ขออภัย ดูเหมือนว่าไม่ได้ตั้งตัวจับเวลาไว้ที่ <อุปกรณ์)>
- ไม่รองรับ : ขออภัย โหมดนี้ไม่พร้อมใช้งานสําหรับ <device(s)>
- obtureionDetected : <device(s)> ตรวจพบสิ่งกีดขวาง
- ออฟไลน์ , อุปกรณ์ออฟไลน์ : ขออภัย ดูเหมือนว่า <อุปกรณ์(>) <is/are>ไม่พร้อมใช้งานในขณะนี้
- onRequiredsMode : โปรดระบุโหมดที่ต้องการเปิด
- รหัสผ่านไม่ถูกต้อง : ขออภัย ดูเหมือนว่า PIN นี้ไม่ถูกต้อง
- เปอร์เซ็นต์ OutOfRange : ขออภัย ฉันตั้งค่า <device(s)> เป็น <percent> ไม่ได้
- PIN ไม่ถูกต้อง : (passการทํางานแบบวลีinvalid)
- RainDetected : ฉันไม่ได้เปิด <device(s)> เนื่องจากตรวจพบฝนตก
- range มากเกินไป : อุณหภูมิเหล่านั้นอยู่ใกล้ช่วงทําความร้อน • ทําความเย็นของ <device(s)> มากกว่านี้ โปรดเลือกช่วงอุณหภูมิที่อยู่ห่างจากช่วงดังกล่าวมากกว่า
- ลิงก์อีกครั้ง : ขออภัย ดูเหมือนว่ามีบางอย่างผิดพลาดกับบัญชีของคุณ ใช้แอป Google Home หรือ Assistant เพื่อลิงก์ <อุปกรณ์> อีกครั้ง
-
RemoteSetSet
:
- พารามิเตอร์ที่ไม่บังคับ
errorCodeReason
currentlyArmed
- ขออภัย เนื่องจากระบบรักษาความปลอดภัยเปิดอยู่แล้ว คุณต้องใช้ <device(s)> หรือแอปเพื่อทําการเปลี่ยนแปลงremoteUnlockNotAllowed
- ขออภัย ฉันปลดล็อก <อุปกรณ์) จากระยะไกลไม่ได้remoteControlOff
- การดําเนินการนั้นปิดอยู่ โปรดเปิดใช้รีโมตคอนโทรลใน <อุปกรณ์> แล้วลองอีกครั้งchildSafetyModeActive
- ระบบจะปิดใช้การดําเนินการนั้นสําหรับ <device(s)> ขณะที่โหมดปลอดภัยของเด็กทํางานอยู่
- พารามิเตอร์ที่ไม่บังคับ
- RoomOnDifferentFloors : <device(s)> เข้าถึงห้องเหล่านั้นไม่ได้เนื่องจากอยู่คนละชั้น
- SafetyShutoff : <device(s)> <is/are> ในโหมดปิดระบบรักษาความปลอดภัย <it/the> จึงต้องปรับด้วยตนเอง
- vibeCannotBeapply : ขออภัย <device(s)> ไม่สามารถใช้ได้
- securityRestriction : <device(s)> <has/have> ข้อจํากัดด้านความปลอดภัย
- SoftwareUpdateNotAvailable : ขออภัย ไม่มีการอัปเดตซอฟต์แวร์ที่พร้อมใช้งานใน <device(s)>
- startRequiredsเวลา : ในการทําเช่นนี้ คุณต้องแจ้งให้เราทราบว่าคุณต้องการเรียกใช้ <device(s)> นานเท่าใด
- ภาพนิ่งCoolingDown : <device(s)> <is/are> ยังคงกําลังเย็นลง
- tillWarmingUp : <device(s)> <is/are> ยังทําความร้อนไม่เสร็จ
- สตรีมไม่พร้อมใช้งาน : ขออภัย ดูเหมือนว่าสตรีมจะไม่พร้อมใช้งานจาก <device(s)> ในขณะนี้
- StreamUnplayable : ขออภัย ตอนนี้ฉันเล่นสตรีมจาก <device(s)> ไม่ได้
- tankempty : <device(s)> <has/have> <anว่างเปล่า ถัง/ถังว่างเปล่า> โปรดกรอก <it/them> แล้วลองอีกครั้ง
- targetAlreadyReached : ขออภัย ดูเหมือนว่าอุณหภูมิดังกล่าวเป็นอุณหภูมิปัจจุบัน
- ตัวจับเวลาValueOutOfRange : <device(s)> ไม่สามารถตั้งค่าได้สําหรับระยะเวลานั้น
- การทดสอบล้มเหลวหลายครั้งเกินไป : ขออภัย คุณพยายามไม่สําเร็จหลายครั้งเกินไป โปรดไปที่แอปของอุปกรณ์เพื่อดําเนินการดังกล่าวให้เสร็จสิ้น
- transientError : ขออภัย เกิดข้อผิดพลาดบางอย่างในการควบคุม <device(s)> โปรดลองอีกครั้ง
- turnOFF , deviceTurnedOFF : <device(s)> <is/are> ปิดอยู่ในขณะนี้
- ล้มเหลวสําหรับตําแหน่งของอุปกรณ์ : ฉันหา <device(s)> ไม่เจอ
- UnknownFoodPreset : <device(s)> ไม่รองรับการตั้งค่าอาหารล่วงหน้านั้น
- ปลดล็อกไม่สําเร็จ : ปลดล็อกอุปกรณ์ไม่ได้ <device(s)>
- unpaoptState : <device(s)> หยุดชั่วคราวไม่ได้ในตอนนี้
- userCancelled : ok
- valueOutOfRange : <device(s)> ไม่สามารถตั้งค่าเป็นอุณหภูมินั้นได้
ข้อยกเว้น
คุณควรส่งคืนข้อยกเว้นเมื่อมีปัญหาหรือการแจ้งเตือนที่เกี่ยวข้องกับคําสั่ง คําสั่งอาจประสบความสําเร็จหรือล้มเหลว
หากคําสั่งสําเร็จ (สถานะ = "สําเร็จ") ให้รายงานข้อยกเว้นโดยใช้ลักษณะเฉพาะ StatusReport
(สําหรับอุปกรณ์อื่นที่ไม่ใช่เป้าหมาย) หรือโดยส่งคืน exceptionCode
ที่เหมาะสม (สําหรับอุปกรณ์เป้าหมาย)
เช่น หากหน้าจอที่มีเศษใยผ้าแห้งเต็มแล้ว ผู้ใช้ยังคงเริ่มอบแห้งได้ แต่อาจต้องเตือนผู้ใช้เกี่ยวกับสถานะนี้ ในทํานองเดียวกัน เมื่อแบตเตอรี่ของอุปกรณ์เหลือแบตเตอรี่น้อย คุณยังคงใช้คําสั่งได้ แต่อุปกรณ์ควรทราบว่าแบตเตอรี่ของอุปกรณ์เหลือน้อย
หากคําสั่งไม่สําเร็จเนื่องจากข้อยกเว้น สถานะควรเป็น "EXCEPTIONS" และควรรายงานข้อยกเว้นโดยใช้ลักษณะเฉพาะ StatusReport
ข้อยกเว้นการบล็อก (สําเร็จ) เกี่ยวกับอุปกรณ์เป้าหมาย
ตัวอย่างสําหรับการล็อกประตูมีดังนี้
ล็อกประตูหน้ามีแบตเตอรี่เหลือน้อย กําลังล็อกประตูหน้า
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["device-id-1"], "status": "SUCCESS", "states": { "on": true, "online": true, "isLocked": true, "isJammed": false, "exceptionCode": "lowBattery" } }] } }
ข้อผิดพลาดที่ไม่ถูกบล็อก (สําเร็จ) เกี่ยวกับอุปกรณ์อีกเครื่องหนึ่งโดยใช้ ReportReport
ตัวอย่างสําหรับการใช้ระบบรักษาความปลอดภัยคือการเปิดระบบรักษาความปลอดภัยให้ หน้าต่างด้านหน้าเปิดอยู่
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["device-id-1"], "status": "SUCCESS", "states": { "on": true, "online": true, "isArmed": true, "currentArmLevel": "L2", "currentStatusReport": [{ "blocking": false, "deviceTarget": "sensor_id1", "priority": 0, "statusCode": "deviceOpen" }] } }] } }
การบล็อกข้อยกเว้นเกี่ยวกับอุปกรณ์อื่นโดยใช้สถานะรายงาน
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": { "device-id-1": { "on": true, "online": true, "status": "EXCEPTIONS", "currentStatusReport": [{ "blocking": true, "deviceTarget": "device-id-1", "priority": 0, "statusCode": "lowBattery" }, { "blocking": true, "deviceTarget": "front_window_id", "priority": 1, "statusCode": "deviceOpen" }, { "blocking": true, "deviceTarget": "back_window_id", "priority": 1, "statusCode": "deviceOpen" } ] } } } }
รายการข้อยกเว้น
ข้อยกเว้นต่อไปนี้จะสร้าง TTS ที่เกี่ยวข้องในอุปกรณ์
- BagFull : <device(s)> <has/have> <a Fullสัมภาระ/fullสัมภาระ> โปรดเว้นว่างไว้ <it/them> แล้วลองอีกครั้ง
- binFull : <device(s)> <has/have> <a Full bin/full bins>
- CarbonMonoxideDetected : ตรวจพบคาร์บอนมอนอกไซด์ใน <ชื่อบ้าน>
- deviceAtExtremeTemperature : <device(s)> <is/are> ที่ <anไม่มีให้บริการอุณหภูมิสูงสุด/อุณหภูมิสูงสุด>
- deviceJammingDetected : <device(s)> <is/are> ติดขัด
- ย้ายอุปกรณ์ : <device(s)> <was/were> ย้ายแล้ว
- deviceOpen : <device(s)> <is/are> เปิดอยู่
- เปลี่ยนอุปกรณ์ : <device(s)> <has/have> มีการเปลี่ยนแปลง
- ถอดปลั๊กอุปกรณ์ : <device(s)> <is/are> ไม่ได้เสียบปลั๊ก
- ราคาพื้นไม่สามารถเข้าถึงได้ : <device(s)> เข้าถึงห้องนั้นไม่ได้ โปรดย้าย <it/them> ไปยังชั้นที่ถูกต้องแล้วลองอีกครั้ง
- hardwareFailure : <device(s)> <has/have> มีปัญหาเกี่ยวกับฮาร์ดแวร์
- inSoftwareUpdate : <device(s)> <is/are> อยู่ระหว่างการอัปเดตซอฟต์แวร์
- isBypassed : <device(s)> <is/are> ถูกข้ามในขณะนี้
- แบตเตอรี่เหลือน้อย : <device(s)> <has/have> แบตเตอรี่เหลือน้อย
- motionDetected : <device(s)> <detect(s)> การเคลื่อนไหว
- needPads : <device(s)> <need(s)> แผ่นข้อมูลใหม่
- needSoftwareUpdate : <device(s)> <need(s)> การอัปเดตซอฟต์แวร์
- needWater : <device(s)> <need(s)> Water
- networkJammingDetected : การเชื่อมต่อเครือข่ายในบ้านกับ <device(s)> ทํางานไม่ถูกต้อง
- noISSUEsReported : <device(s)> ไม่มีปัญหา
- RoomOnDifferentFloors : <device(s)> เข้าถึงห้องเหล่านั้นไม่ได้เนื่องจากอยู่คนละชั้น
- RunCycleFinished : <device(s)> <has/have> ทํางานเสร็จแล้ว
- securityRestriction : <device(s)> <has/have> ข้อจํากัดด้านความปลอดภัย
- smokeDetected : ตรวจพบควันใน <ชื่อบ้าน>
- tankempty : <device(s)> <has/have> <anว่างเปล่า ถัง/ถังว่างเปล่า> โปรดกรอก <it/them> แล้วลองอีกครั้ง
- โดยใช้ฟีเจอร์ใช้อินเทอร์เน็ตมือถือเป็นเครือข่ายสํารอง : <device(s)> <is/are> โดยใช้ฟีเจอร์ใช้อินเทอร์เน็ตมือถือเป็นเครือข่ายสํารอง
- WaterLeakDetected : <device(s)> <detect(s)> น้ํารั่ว