การยืนยันผู้ใช้รองให้คุณเพิ่มการรักษาความปลอดภัยด้วยปัจจัยที่สองในคำสั่งเสียง ซึ่งจะช่วยให้คุณเพิ่มความปลอดภัยสำหรับการดำเนินการบางอย่างได้ เช่น การปิดกล้องรักษาความปลอดภัยหรือเปิดประตู การยืนยันผู้ใช้รองไม่ได้เชื่อมโยงกับลักษณะเฉพาะของอุปกรณ์ ซึ่งจะช่วยให้คุณตัดสินใจได้ว่าควรให้ Google Assistant ออกคำถามเมื่อใด เช่น คุณอาจเลือกที่จะใช้ชาเลนจ์กับลักษณะ OnOff สำหรับกล้องรักษาความปลอดภัย แต่ไม่ออกชาเลนจ์สำหรับลักษณะ OnOff สำหรับแสงไฟ คุณอาจมีการยืนยันปัญหา Assistant ในบางสถานการณ์สำหรับการดำเนินการเดียวกันได้ด้วย ตัวอย่างเช่น คุณสามารถขอให้ Assistant ส่งคำขอท้าให้เปิดประตูหากคีย์รีโมต NFC ไม่ได้อยู่ในระยะใกล้ประตูนั้น แต่ไม่ขอให้ออกคำสั่งแทนหากมีกุญแจรีโมต
Assistant สามารถออกการยืนยันตัวตนได้ 2 ประเภท ได้แก่ การรับทราบที่ชัดแจ้งหรือหมายเลขประจำตัวส่วนบุคคล (PIN) การดำเนินการนี้จะเพิ่มการบล็อกภารกิจใน QUERY
และ Intent EXECUTE
ที่ส่งจาก Assistant กลับไปที่การดำเนินการ และยอมรับการตอบกลับข้อผิดพลาด challengeNeeded
จากนั้น Assistant จะส่งคำขอ Intent ย้อนกลับไปยังการดำเนินการของคุณพร้อมข้อมูลภารกิจในบล็อก จากนั้นคุณจะตรวจสอบข้อมูลของระบบทดสอบเพื่อดูว่าผู้ใช้ให้การตอบสนองด้านความปลอดภัยที่ถูกต้องหรือไม่
Assistant ใช้กล่องโต้ตอบเพื่อออกคำถาม แต่หากคุณใช้ Assistant บนแพลตฟอร์มที่ไม่ใช่เสียง PIN และการยืนยันจะเสร็จสิ้นบนหน้าจอ
ประเภทอุปกรณ์ที่รองรับ
อุปกรณ์ทุกประเภทรองรับการยืนยันผู้ใช้รอง
Trait ของอุปกรณ์ที่รองรับ
รองรับการยืนยันผู้ใช้รองสำหรับทุกลักษณะของอุปกรณ์
ประเภทคำถามที่รองรับ
ประเภทการยืนยันตัวตนผู้ใช้รองที่รองรับมีดังนี้
- ไม่มีคำถาม - คำขอและคำตอบที่ไม่ใช้คำท้าการยืนยันผู้ใช้รอง
- ackNeeded - การยืนยันผู้ใช้รองที่ต้องมีการตอบรับอย่างชัดแจ้ง (ใช่หรือไม่ใช่) และสามารถใช้สถานะเป็นความคิดเห็นตอบกลับได้ ไม่แนะนำให้ใช้ชาเลนจ์ประเภทนี้ กับอุปกรณ์และลักษณะการรักษาความปลอดภัย
- pinNeeded - การยืนยันผู้ใช้รองที่ต้องใช้หมายเลขประจำตัวส่วนบุคคล (PIN) ซึ่งเหมาะสำหรับอุปกรณ์และลักษณะด้านความปลอดภัย
ไม่มีคำท้า
ตัวอย่างนี้แสดงคำขอและการตอบกลับ EXECUTE
ที่สำเร็จโดยไม่มีปัญหาในการเปิดไฟ
ผู้ใช้ | เปิดไฟ |
Google Assistant | โอเค กำลังเปิดไฟ 3 ดวง |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.OnOff", "params": { "on": true } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS", "states": { "on": true, "online": true } }] } }
ackNeeded
การตรวจสอบสิทธิ์การรับทราบของผู้ใช้รองที่สามารถใช้หลายสถานะสำหรับลักษณะหรือการตรวจสอบสิทธิ์การรับทราบแบบง่าย
มีการทดสอบ ackNeeded
ประเภทต่อไปนี้
รับทราบอย่างง่าย
ตัวอย่างนี้แสดงคำขอและคำตอบง่ายๆ ที่มีชาเลนจ์ ackNeeded
ให้หรี่ไฟและการยืนยันให้หรี่ไฟ
ผู้ใช้ | หรี่ไฟห้องนั่งเล่น |
Google Assistant | กำลังหรี่ไฟห้องนั่งเล่น แน่ใจใช่ไหม |
ผู้ใช้ | ใช่ |
Google Assistant | กำลังหรี่ไฟห้องนั่งเล่น |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 12 } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "ackNeeded" } }] } }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 12 }, "challenge": { "ack": true } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS" }] } }
ต้องการสถานะลักษณะ
การตรวจสอบสิทธิ์การรับทราบของผู้ใช้รองที่ใช้สถานะสำหรับลักษณะได้
ตัวอย่างเช่น หากคุณใช้งานลักษณะ TemperatureSetting และตั้งค่าทั้ง thermostatMode
และ thermostatTemperatureSetpoint
แล้วAssistant จะถามว่าแน่ใจไหมว่าต้องการตั้งค่าความร้อนของเครื่องปรับอากาศเป็น 28 องศา
นอกจากนี้ คุณยังใส่สถานะในการตอบกลับเพื่อให้ Assistant ดำเนินการที่เฉพาะเจาะจงตามคำขอได้ด้วย
ลักษณะและสถานะต่อไปนี้รองรับ ackNeeded
ที่มีสถานะของลักษณะ ข้อมูลลักษณะเฉพาะบ่งชี้ว่าระบบรองรับทุกรัฐของพื้นที่
- ArmDisarm
currentArmLevel
currentStatusReport
- Fill
- LockUnlock
- OnOff
on
- OpenClose
- Scene
- TemperatureSetting
thermostatMode
thermostatTemperatureSetpoint
thermostatTemperatureSetpointHigh
thermostatTemperatureSetpointLow
ตัวอย่างนี้แสดงคำขอและการตอบกลับที่มีชาเลนจ์ ackNeeded
ที่ใช้สถานะลักษณะ ปรับโหมดเครื่องปรับอากาศเป็นทำความร้อน และตั้งค่าอุณหภูมิเป็น 28 องศา จากนั้น Assistant จะขอให้ผู้ใช้รับทราบเพื่อเปิดการทำความร้อน และตั้งค่าอุณหภูมิเป็น 28 องศา เนื่องจาก thermostatTemperatureSetpoint
ของ 28
จะแสดงผลเป็นสถานะในการตอบกลับ
ผู้ใช้ | ตั้งค่าโหมด AC เป็นทำความร้อน |
Google Assistant | แน่ใจไหมว่าต้องการตั้งความร้อนของเครื่องปรับอากาศเป็น 28 องศา |
ผู้ใช้ | ใช่ |
Google Assistantnt | กำลังตั้งค่าความร้อนในเครื่องปรับอากาศเป็น 28 องศา |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.TemperatureSetting", "params": { "thermostatMode": "heat" } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "states": { "thermostatMode": "heat", "thermostatTemperatureSetpoint": 28 }, "errorCode": "challengeNeeded", "challengeNeeded": { "type": "ackNeeded" } }] } }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.TemperatureSetting", "params": { "thermostatMode": "heat" }, "challenge": { "ack": true } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS", "states": { "thermostatMode": "heat", "thermostatTemperatureSetpoint": 28 } }] } }
pinNeeded
ขอแนะนำภารกิจ pinNeeded
สำหรับอุปกรณ์รักษาความปลอดภัย
ตัวอย่างนี้แสดงคำขอและคำตอบเริ่มต้นพร้อมคำถาม pinNeeded
ตัวอย่างนี้แสดงคำตอบพร้อมชาเลนจ์ pinNeeded
ดังนั้น Assistant จึงขอ PIN ในขั้นตอนนี้ ผู้ใช้สามารถระบุ
PIN ที่ไม่ถูกต้องหรือใช้งานได้
ตัวอย่างคำขอและการตอบกลับสำหรับ PIN ที่ไม่ถูกต้องหรือถูกต้อง
ผู้ใช้ | ปลดล็อกประตู |
Google Assistant | ขอทราบรหัสความปลอดภัยหน่อย |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.LockUnlock", "params": { "lock": false } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "pinNeeded" } }] } }
PIN ไม่ถูกต้อง
ตัวอย่างนี้แสดงคำขอและคำตอบพร้อมคำถาม challengeFailedPinNeeded
ควรใช้ชาเลนจ์นี้หลังจากภารกิจ pinNeeded
ครั้งแรกไม่สำเร็จ
เมื่อระบบแสดงผลประเภท challengeFailedPinNeeded
Assistant จะขอรหัสความปลอดภัยอีกครั้ง หากผู้ใช้พยายามดำเนินการที่ล้มเหลวหลายครั้งเกินไป คุณจะแสดงการตอบสนองข้อผิดพลาด tooManyFailedAttempts
ได้ โปรดดูการตอบกลับข้อผิดพลาด
ผู้ใช้ | 333222 |
Google Assistant | ขอโทษนะ รหัสความปลอดภัยไม่ถูกต้อง ขอทราบรหัสความปลอดภัยหน่อย |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.LockUnlock", "params": { "lock": false }, "challenge": { "pin": "333222" } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "challengeFailedPinNeeded" } }] } }
PIN ถูกต้อง
ตัวอย่างนี้แสดงคำขอและการตอบกลับ PIN ที่ถูกต้อง
ผู้ใช้ | 333444 |
Google Assistant | กำลังปลดล็อกประตู |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.LockUnlock", "params": { "lock": false }, "challenge": { "pin": "333444" } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "SUCCESS", "states": { "isLocked": false, "isJammed": false } }] } }
ผู้ใช้ | หรี่ไฟห้องนั่งเล่น |
Google Assistant | ขอทราบรหัสความปลอดภัยหน่อย |
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [{ "intent": "action.devices.EXECUTE", "payload": { "commands": [{ "devices": [{ "id": "123" }], "execution": [{ "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 12 } }] }] } }] }
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [{ "ids": ["123"], "status": "ERROR", "errorCode": "challengeNeeded", "challengeNeeded": { "type": "pinNeeded" } }] } }
การตอบกลับข้อผิดพลาด
รหัสข้อผิดพลาดเหล่านี้อาจได้รับกลับมาพร้อมกับคำตอบ
- tooManyFailedAttempts - ขออภัย พยายามไม่สำเร็จหลายครั้งเกินไป โปรดไปที่แอปของอุปกรณ์เพื่อดําเนินการดังกล่าวให้เสร็จสิ้น
- pinIncorrect - ขออภัย รหัสความปลอดภัยไม่ถูกต้อง
- userCancelled - ตกลง
ดูรายการข้อผิดพลาดและข้อยกเว้นทั้งหมด