การยืนยันผู้ใช้รองช่วยให้คุณเพิ่มความปลอดภัยจากปัจจัยที่ 2 ในคําสั่งด้วยเสียงได้ วิธีนี้จะช่วยให้คุณเพิ่มความปลอดภัยให้กับการดําเนินการบางอย่างได้ เช่น ปิดกล้องรักษาความปลอดภัยหรือเปิดประตู การยืนยันรองของผู้ใช้ไม่ได้เชื่อมโยงกับคุณลักษณะของอุปกรณ์ใดอุปกรณ์หนึ่ง ซึ่งช่วยให้คุณตัดสินใจได้ว่าจะ Google Assistant มีปัญหาเมื่อใด ตัวอย่างเช่น คุณสามารถเลือกออกกฎสําหรับลักษณะเฉพาะของ OnOFF สําหรับกล้องรักษาความปลอดภัย แต่จะไม่ท้ายปัญหาของรูปแบบ OnOFF สําหรับแสงไฟ นอกจากนี้ คุณยังอาจมีปัญหาAssistant ในบางสถานการณ์ในการดําเนินการเดียวกัน เช่น คุณขอให้ Assistant ออกคําขอเปิดประตูได้ หากคีย์ NFC ของ NFC ไม่ได้อยู่ในระยะใกล้ประตูนั้น แต่อย่าออกชาเลนจ์หากมีปุ่มกดอยู่
Assistant ทําภารกิจได้ 2 ประเภท ได้แก่
การรับทราบอย่างชัดแจ้งหรือหมายเลขประจําตัวส่วนบุคคล (PIN) การดําเนินการนี้จะเพิ่มการบล็อกภารกิจไปยัง QUERY
และ Intent ของ EXECUTE
ที่ส่งจาก Assistant กลับไปยังการดําเนินการของคุณ และยอมรับการตอบกลับข้อผิดพลาด challengeNeeded
จากนั้น Assistant จะส่งคําขอความตั้งใจกลับไปยังการดําเนินการของคุณด้วยข้อมูลภารกิจในบล็อกภารกิจ จากนั้นคุณจะตรวจสอบความถูกต้องของข้อมูลคําถามได้เพื่อดูว่าผู้ใช้ให้คําตอบด้านความปลอดภัยที่ถูกต้องหรือไม่
Assistant ใช้กล่องโต้ตอบเพื่อออกภารกิจ แต่หากคุณใช้ Assistant ในแพลตฟอร์มที่ไม่ใช่เสียง ระบบจะป้อน PIN และการยืนยันบนหน้าจอ
อุปกรณ์ที่รองรับ
อุปกรณ์ทุกเครื่องรองรับการยืนยันผู้ใช้รอง
ลักษณะเฉพาะของอุปกรณ์ที่รองรับ
การยืนยันอุปกรณ์รองรองรับฟีเจอร์ทั้งหมดของอุปกรณ์
ประเภทคําถามที่รองรับ
คําถามรองเกี่ยวกับการยืนยันผู้ใช้รองที่รองรับมีดังนี้
- ไม่มีภารกิจ - คําขอและคําตอบที่ไม่ได้ใช้ภารกิจการยืนยันผู้ใช้รอง
- 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
เพื่อหรี่ไฟและการยืนยันเพื่อหรี่ไฟ
ผู้ใช้ | หรี่ไฟห้องนั่งเล่น |
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" }] } }
ackจําเป็นต้องใช้กับสถานะลักษณะเฉพาะ
การตรวจสอบสิทธิ์การรับทราบผู้ใช้รองที่ใช้สถานะสําหรับลักษณะเฉพาะได้
ตัวอย่างเช่น หากคุณทํางานด้วยลักษณะเฉพาะของ TemperatureSettings และได้ตั้งค่าทั้ง thermostatMode
และ thermostatTemperatureSetpoint
ไว้
Assistant สามารถถามว่า คุณแน่ใจไหมว่าต้องการตั้งค่าความร้อนในเครื่องปรับอากาศเป็น 28 องศา
คุณระบุสถานะไว้ในการตอบสนองเพื่อให้ Assistant ดําเนินการที่เจาะจงตามคําขอได้ด้วย
สถานะและรัฐต่อไปนี้รองรับ ackNeeded
ที่มีลักษณะเฉพาะ รายชื่อของลักษณะหนึ่งๆ บ่งบอกว่ารัฐทั้งหมดรองรับ
- คลังแสง
currentArmLevel
currentStatusReport
- เติม
- LockLock
- ปิด
on
- OpenClosed
- ฉาก
- การตั้งค่าอุณหภูมิ
thermostatMode
thermostatTemperatureSetpoint
thermostatTemperatureSetpointHigh
thermostatTemperatureSetpointLow
ตัวอย่างนี้แสดงคําขอและการตอบกลับที่มีภารกิจ ackNeeded
ที่ใช้สถานะลักษณะเฉพาะ เปลี่ยนโหมดเครื่องปรับอากาศให้ทําความร้อนและตั้งค่าอุณหภูมิเป็น 28 องศา จากนั้น Assistant จะขอให้ผู้ใช้รับทราบเพื่อเปิดเครื่องทําความร้อนและตั้งอุณหภูมิเป็น 28 องศาเนื่องจากระบบแสดง thermostatTemperatureSetpoint
ของ 28
เป็นสถานะของการตอบสนอง
ผู้ใช้ | ตั้งค่าโหมด AC เป็นโหมดทําความร้อน |
Google Assistant | แน่ใจไหมว่าต้องการตั้งค่าทําความร้อนในเครื่องปรับอากาศเป็น 28 องศา |
ผู้ใช้ | ได้ |
Google Assistant | กําลังตั้งค่าความร้อนในเครื่องปรับอากาศเป็น 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 } }] } }
ต้องใช้ PIN
ภารกิจ 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" } }] } }
การตอบกลับข้อผิดพลาด
รหัสข้อผิดพลาดบางส่วนที่ส่งคืนพร้อมคําตอบได้มีดังนี้
challengeFailedNotSetup
- การดําเนินการนี้ต้องใช้รหัสความปลอดภัย แต่ยังไม่ได้ตั้งรหัสดังกล่าวในแอปของอุปกรณ์tooManyFailedAttempts
- ขออภัย พยายามไม่สําเร็จหลายครั้งเกินไป โปรดไปที่แอปของอุปกรณ์เพื่อดําเนินการดังกล่าวให้เสร็จสิ้นpinIncorrect
- ขออภัย รหัสความปลอดภัยไม่ถูกต้องuserCancelled
- ตกลง
ดูรายการข้อผิดพลาดและข้อยกเว้นทั้งหมด