दूसरे उपयोगकर्ता की पुष्टि

उपयोगकर्ता की जानकारी की पुष्टि दूसरे तरीके से करने की सुविधा से, अपनी आवाज़ के साथ दूसरे तरीके से सुरक्षा की सुविधा जोड़ी जा सकती है निर्देश देखें. इससे आपको कुछ कार्रवाइयों के लिए अतिरिक्त सुरक्षा जोड़ने की सुविधा मिलती है, जैसे कि सुरक्षा कैमरा बंद करने या दरवाज़ा खोलने की. उपयोगकर्ता की दूसरी पुष्टि यह है के लिए, किसी ख़ास डिवाइस की विशेषता का इस्तेमाल नहीं किया जाता. इससे आपको यह तय करने में मदद मिलती है कि Google Assistant एक चैलेंज जारी करता है. उदाहरण के लिए, आपके पास OnOff Trait के लिए चैलेंज जारी करने की लेकिन सुरक्षा कैमरे के साथ छेड़छाड़ करना चाहते हैं, लेकिन OnOff रोशनी के लिए खास हो. Assistant भी आज़माया जा सकता है कुछ मामलों में चुनौतियां आती हैं. उदाहरण के लिए, आपके यह अनुरोध कर सकता है कि Assistant अगर एनएफ़सी कीफ़ोब उस दरवाज़े के आस-पास नहीं है, लेकिन ऐसा नहीं है, तो दरवाज़ा खोल दो अगर कीफ़ोब मौजूद है, तो चैलेंज को जारी किया जा सकता है.

Assistant दो तरह की चुनौतियां जारी कर सकता है - साफ़ तौर पर दी गई पुष्टि या व्यक्तिगत पहचान संख्या (पिन). इससे पता चलता है कि QUERY और EXECUTE इंटेंट के लिए चैलेंज के ब्लॉक को Assistant से आपकी कार्रवाई पर वापस भेजा गया. साथ ही, यह challengeNeeded गड़बड़ी स्वीकार करता है जवाब. इसके बाद Assistant, इंटेंट अनुरोध को वापस भेजता है चैलेंज ब्लॉक में 'चैलेंज डेटा' के साथ आपकी कार्रवाई. इसके बाद आप चैलेंज के डेटा की पुष्टि करके, यह पता करें कि उपयोगकर्ता ने सही सुरक्षा दी है या नहीं जवाब.

Assistant, चैलेंज देने के लिए डायलॉग का इस्तेमाल करता है. हालांकि, अगर Assistant का इस्तेमाल बिना आवाज़ वाले प्लैटफ़ॉर्म, पिन, और पुष्टि, स्क्रीन पर की जाती हैं.

इस सुविधा के साथ काम करने वाले डिवाइस के टाइप

उपयोगकर्ता की सेकंडरी पुष्टि करने की सुविधा, सभी तरह के डिवाइसों पर काम करती है.

साथ काम करने वाले डिवाइस Trait

दूसरे उपयोगकर्ता की पुष्टि करने की सुविधा, सभी डिवाइस Trait के लिए काम करती है.

इस्तेमाल किए जा सकने वाले चैलेंज के टाइप

यहां उपयोगकर्ता की पुष्टि करने के लिए इस्तेमाल होने वाले सेकंडरी चैलेंज के टाइप दिए गए हैं:

  • कोई चुनौती नहीं - ऐसा अनुरोध और जवाब जो उपयोगकर्ता की पुष्टि करने का सेकंडरी चैलेंज.
  • ackNeeded - उपयोगकर्ता की दूसरी पुष्टि करने के लिए जिसकी ज़रूरत है साफ़ तौर पर स्वीकार करना (हां या नहीं) और विशेषता की स्थितियों का इस्तेमाल इस तरह भी करना चाहिए: जवाब. सुरक्षा के लिहाज़ से, इस तरह के चैलेंज का सुझाव नहीं दिया जाता डिवाइस और लक्षण.
  • pinNeeded - उपयोगकर्ता की दूसरी पुष्टि के लिए, जिसके लिए पर्सनल आइडेंटिफ़िकेशन नंबर (पिन), सुरक्षा से जुड़े डिवाइसों के लिए सबसे अच्छा काम करता है और लक्षण.

कोई चुनौती नहीं

इस उदाहरण में, EXECUTE अनुरोध को स्वीकार किए जाने और उसका रिस्पॉन्स देने के बारे में बताया गया है. लाइटें चालू करने का चैलेंज.

उपयोगकर्ता लाइटें जलाओ.
Google Assistant ठीक है, तीन लाइटें चालू कर रही हूँ.
अनुरोध करें
{
  "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 चैलेंज इस तरह के हैं:

ackacked सामान्य

इस उदाहरण में, 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
          }
        }]
      }]
    }
  }]
}
जवाब 1
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [{
      "ids": ["123"],
      "status": "ERROR",
      "errorCode": "challengeNeeded",
      "challengeNeeded": {
        "type": "ackNeeded"
      }
    }]
  }
}
अनुरोध 2
{
  "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
          }
        }]
      }]
    }
  }]
}
जवाब 2
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [{
      "ids": ["123"],
      "status": "SUCCESS"
    }]
  }
}

Trait स्टेट के साथ शेड्यूल किया गया

एक सेकंडरी उपयोगकर्ता की पुष्टि की पुष्टि करें, जो विशेषता. उदाहरण के लिए, अगर आपको TemperatureSetting Trait और दोनों thermostatMode और thermostatTemperatureSetpoint सेट हैं, Assistant पूछ सकता है कि क्या आपको वाकई में हीटिंग सिस्टम सेट करना है एयर कंडिशनर का तापमान 28 डिग्री पर सेट कर रहा हूँ?

आप प्रतिक्रिया में कोई राज्य भी शामिल कर सकते हैं, ताकि Assistant, दिए गए डेटा के आधार पर कोई खास कार्रवाई करता है अनुरोध.

यहां दिए गए एट्रिब्यूट और स्थितियां, Trait स्टेट वाले ackNeeded के साथ काम करती हैं. ऐप्लिकेशन सूची में किसी विशेषता की जानकारी दिखने से पता चलता है कि इसके सभी राज्य इस्तेमाल किए जा सकते हैं.

इस उदाहरण में, ackNeeded चैलेंज के साथ अनुरोध और रिस्पॉन्स दिखाया गया है, जो Trait की स्थिति का इस्तेमाल करता है. यह एयर कंडिशनर मोड को गर्म में बदल देता है और तापमान 28 डिग्री पर सेट कर दिया जाएगा. इसके बाद, Assistant लोगों से पूछता है हीटिंग सिस्टम चालू करने और तापमान को 28 पर सेट करने की अनुमति के लिए डिग्री क्योंकि 28 के thermostatTemperatureSetpoint को राज्य के तौर पर दिखाया गया है डालें.

उपयोगकर्ता एसी मोड को गर्म मोड पर सेट करें.
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"
          }
        }]
      }]
    }
  }]
}
जवाब 1
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [{
      "ids": ["123"],
      "status": "ERROR",
      "states": {
        "thermostatMode": "heat",
        "thermostatTemperatureSetpoint": 28
      },
      "errorCode": "challengeNeeded",
      "challengeNeeded": {
        "type": "ackNeeded"
      }
    }]
  }
}
अनुरोध 2
{
  "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
          }
        }]
      }]
    }
  }]
}
जवाब 2
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [{
      "ids": ["123"],
      "status": "SUCCESS",
      "states": {
        "thermostatMode": "heat",
        "thermostatTemperatureSetpoint": 28
      }
    }]
  }
}

pinNeeded

सुरक्षा डिवाइसों के लिए, pinNeeded चैलेंज का सुझाव दिया जाता है.

इस उदाहरण में, pinNeeded के साथ शुरुआती अनुरोध और उसके जवाब को दिखाया गया है चुनौती दें. उदाहरण में, pinNeeded चैलेंज के साथ जवाब मिलता है. इसलिए Assistant पिन मांगता है. इसके बाद, उपयोगकर्ता ये काम कर सकता है: गलत या मान्य पिन दें.

अनुरोध का नमूना और गलत या मान्य पिन के लिए जवाब:

उपयोगकर्ता दरवाज़ा अनलॉक करें.
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"
      }
    }]
  }
}

गलत पिन

इस उदाहरण में, 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"
      }
    }]
  }
}

मान्य पिन डालें

इस उदाहरण में, एक मान्य पिन का अनुरोध करने और उसका जवाब देने के बारे में बताया गया है.

उपयोगकर्ता 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 - ठीक है

पूरी सूची देखें गड़बड़ियों और अपवाद के तौर पर मार्क किया जा सकता है.