কীভাবে স্মার্ট হোম অ্যাকশন তৈরি করতে হয় তা শেখার নতুন গন্তব্য Google হোম ডেভেলপার সেন্টারে স্বাগতম। দ্রষ্টব্য: আপনি অ্যাকশন কনসোলে নির্মাণ কাজ চালিয়ে যাবেন।

সেকেন্ডারি ইউজার ভেরিফিকেশন

সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।

সেকেন্ডারি ইউজার ভেরিফিকেশন আপনাকে ভয়েস কমান্ডে সেকেন্ড ফ্যাক্টর সিকিউরিটি যোগ করতে দেয়। এটি আপনাকে কিছু নির্দিষ্ট ক্রিয়াকলাপের জন্য অতিরিক্ত সুরক্ষা যোগ করতে দেয় যেমন একটি সুরক্ষা ক্যামেরা বন্ধ করা বা একটি দরজা খোলা। সেকেন্ডারি ইউজার ভেরিফিকেশন একটি নির্দিষ্ট ডিভাইসের বৈশিষ্ট্যের সাথে আবদ্ধ নয় যা আপনাকে Google অ্যাসিস্ট্যান্টকে কখন চ্যালেঞ্জ করতে হবে তা নির্ধারণ করতে দেয়। উদাহরণস্বরূপ, আপনি একটি নিরাপত্তা ক্যামেরার জন্য অনঅফ বৈশিষ্ট্যের জন্য একটি চ্যালেঞ্জ ইস্যু করতে বেছে নিতে পারেন, কিন্তু আলোর জন্য অনঅফ বৈশিষ্ট্যের জন্য একটি চ্যালেঞ্জ ইস্যু করতে পারবেন না। একই ক্রিয়াকলাপের জন্য আপনি কিছু পরিস্থিতিতে Google সহায়ক সমস্যা চ্যালেঞ্জও পেতে পারেন। উদাহরণস্বরূপ, আপনি অনুরোধ করতে পারেন যে Google অ্যাসিস্ট্যান্ট একটি দরজা খোলার জন্য একটি চ্যালেঞ্জ অনুরোধ জারি করে যদি একটি NFC কীফব সেই দরজার কাছাকাছি না থাকে, কিন্তু যদি keyfob উপস্থিত থাকে তবে একটি চ্যালেঞ্জ ইস্যু করবে না।

গুগল অ্যাসিস্ট্যান্ট দুই ধরনের চ্যালেঞ্জ ইস্যু করতে পারে - স্পষ্ট স্বীকৃতি বা ব্যক্তিগত শনাক্তকরণ নম্বর (পিন)। এটি QUERY এ একটি চ্যালেঞ্জ ব্লক যোগ করে এবং Google অ্যাসিস্ট্যান্ট থেকে আপনার EXECUTE ফেরত পাঠানো ইন্টেন্টগুলি কার্যকর করে এবং একটি challengeNeeded গ্রহণ করে প্রয়োজনীয় ত্রুটি প্রতিক্রিয়া। Google অ্যাসিস্ট্যান্ট তারপর চ্যালেঞ্জ ব্লকে চ্যালেঞ্জ ডেটা সহ আপনার অ্যাকশনে অভিপ্রায়ের অনুরোধ ফেরত পাঠায়। তারপর ব্যবহারকারী সঠিক নিরাপত্তা প্রতিক্রিয়া দিয়েছে কিনা তা নির্ধারণ করতে আপনি চ্যালেঞ্জ ডেটা যাচাই করতে পারেন।

Google অ্যাসিস্ট্যান্ট চ্যালেঞ্জ ইস্যু করার জন্য ডায়ালগ ব্যবহার করে, কিন্তু আপনি যদি নন-ভয়েস সারফেসে Google অ্যাসিস্ট্যান্ট ব্যবহার করেন, তাহলে পিন এবং নিশ্চিতকরণ অন-স্ক্রীনে করা হয়।

সমর্থিত ডিভাইস প্রকার

সেকেন্ডারি ইউজার ভেরিফিকেশন সব ধরনের ডিভাইসে সমর্থিত।

সমর্থিত ডিভাইস বৈশিষ্ট্য

মাধ্যমিক ব্যবহারকারী যাচাইকরণ সমস্ত ডিভাইস বৈশিষ্ট্যের জন্য সমর্থিত।

সমর্থিত চ্যালেঞ্জ প্রকার

এইগুলি সমর্থিত মাধ্যমিক ব্যবহারকারী যাচাইকরণ চ্যালেঞ্জ প্রকার:

  • কোন চ্যালেঞ্জ নেই - একটি অনুরোধ এবং প্রতিক্রিয়া যা সেকেন্ডারি ব্যবহারকারী যাচাইকরণ চ্যালেঞ্জ ব্যবহার করে না।
  • ackNeeded - একটি মাধ্যমিক ব্যবহারকারী যাচাইকরণ যার জন্য স্পষ্ট স্বীকৃতি (হ্যাঁ বা না) প্রয়োজন এবং প্রতিক্রিয়া প্রতিক্রিয়া হিসাবে বৈশিষ্ট্যের অবস্থাও ব্যবহার করতে পারে। নিরাপত্তা ডিভাইস এবং বৈশিষ্ট্যের জন্য এই চ্যালেঞ্জের ধরন সুপারিশ করা হয় না।
  • পিন প্রয়োজনীয় - একটি মাধ্যমিক ব্যবহারকারী যাচাইকরণের জন্য একটি ব্যক্তিগত সনাক্তকরণ নম্বর (পিন) প্রয়োজন, যা নিরাপত্তা ডিভাইস এবং বৈশিষ্ট্যগুলির জন্য আদর্শ৷

কোন চ্যালেঞ্জ নেই

এই উদাহরণটি লাইট অন করার জন্য একটি চ্যালেঞ্জ ছাড়াই একটি সফল EXECUTE অনুরোধ এবং প্রতিক্রিয়া দেখায়।

ব্যবহারকারী বাতি জ্বালাও.
গুগল সহকারী ঠিক আছে, ৩টি লাইট জ্বালানো হচ্ছে
অনুরোধ
{
  "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
      }
    }]
  }
}

ackNeded

একটি মাধ্যমিক ব্যবহারকারী স্বীকৃতি প্রমাণীকরণ যা একটি বৈশিষ্ট্য বা একটি সাধারণ স্বীকৃতি প্রমাণীকরণের জন্য একাধিক অবস্থা ব্যবহার করতে পারে।

নিম্নলিখিত ধরণের ackNeeded চ্যালেঞ্জের ধরন রয়েছে:

সহজ প্রয়োজন

এই উদাহরণটি আলোকে ম্লান করার জন্য একটি ackNeeded চ্যালেঞ্জ এবং আলোকে ম্লান করার নিশ্চিতকরণ সহ একটি সাধারণ অনুরোধ এবং প্রতিক্রিয়া দেখায়।

ব্যবহারকারী বসার ঘরের আলো জ্বালিয়ে দিন।
গুগল সহকারী বসার ঘরের আলো ম্লান করা। তুমি কি নিশ্চিত?
ব্যবহারকারী হ্যাঁ.
গুগল সহকারী বসার ঘরের আলো ম্লান করা।
অনুরোধ 1
{
  "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"
    }]
  }
}

বৈশিষ্ট্য রাজ্যের সঙ্গে প্রয়োজন

একটি মাধ্যমিক ব্যবহারকারীর স্বীকৃতি প্রমাণীকরণ যা একটি বৈশিষ্ট্যের জন্য রাজ্য ব্যবহার করতে পারে। উদাহরণ স্বরূপ, আপনি যদি TemperatureSetting বৈশিষ্ট্যের সাথে কাজ করেন এবং thermostatMode এবং thermostatTemperatureSetpoint টেম্পারচারসেটপয়েন্ট উভয়ই সেট করা থাকে, Google সহকারী জিজ্ঞাসা করতে পারে আপনি কি নিশ্চিত যে আপনি এয়ার কন্ডিশনার 28 ডিগ্রিতে তাপ সেট করতে চান?

প্রদত্ত অনুরোধের ভিত্তিতে Google অ্যাসিস্ট্যান্টকে একটি নির্দিষ্ট ক্রিয়া সম্পাদন করার জন্য আপনি একটি প্রতিক্রিয়াতে একটি রাজ্য অন্তর্ভুক্ত করতে পারেন।

নিম্নলিখিত বৈশিষ্ট্য এবং রাজ্যগুলি বৈশিষ্ট্য রাজ্যগুলির সাথে ackNeeded সমর্থন করে৷ একটি নির্দিষ্ট বৈশিষ্ট্যের একটি তালিকা নির্দেশ করে যে এর সমস্ত রাজ্য সমর্থিত।

এই উদাহরণটি একটি ackNeeded চ্যালেঞ্জ সহ একটি অনুরোধ এবং প্রতিক্রিয়া দেখায় যা একটি বৈশিষ্ট্যের অবস্থা ব্যবহার করে। এটি এয়ার কন্ডিশনার মোডকে উত্তাপে পরিবর্তন করে এবং তাপমাত্রা 28 ডিগ্রিতে সেট করে। তারপরে, Google অ্যাসিস্ট্যান্ট ব্যবহারকারীদের কাছে তাপ চালু করতে এবং তাপমাত্রা 28 ডিগ্রীতে সেট করার স্বীকৃতির জন্য অনুরোধ করে কারণ প্রতিক্রিয়াতে 28 -এর একটি thermostatTemperatureSetpoint টেম্পারচারসেটপয়েন্ট একটি অবস্থা হিসাবে ফিরে আসে।

ব্যবহারকারী গরম করার জন্য এসি মোড সেট করুন।
গুগল সহকারী আপনি কি নিশ্চিত যে আপনি এয়ার কন্ডিশনার তাপ 28 ডিগ্রিতে সেট করতে চান?
ব্যবহারকারী হ্যাঁ.
গুগল সহকারী এয়ার কন্ডিশনারে তাপ 28 ডিগ্রিতে সেট করা হচ্ছে।
অনুরোধ 1
{
  "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 চ্যালেঞ্জ সহ একটি প্রতিক্রিয়া প্রদান করে, তাই Google সহকারী পিনটির জন্য জিজ্ঞাসা করে। এই সময়ে, ব্যবহারকারী একটি ভুল বা বৈধ পিন প্রদান করতে পারেন।

একটি ভুল বা বৈধ পিনের জন্য নমুনা অনুরোধ এবং প্রতিক্রিয়া:

ব্যবহারকারী দরজা খুলে দাও।
গুগল সহকারী আমি কি আপনার নিরাপত্তা কোড পেতে পারি?
অনুরোধ
{
  "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 সাথে অনুরোধ এবং প্রতিক্রিয়া দেখায়FailedPinNeeded চ্যালেঞ্জ। একটি প্রাথমিক pinNeeded চ্যালেঞ্জ ব্যর্থ হওয়ার পরে এই চ্যালেঞ্জটি ব্যবহার করা উচিত।

যখন একটি challengeFailedPinNeeded টাইপ ফেরত দেওয়া হয়, তখন Google সহকারী আবার নিরাপত্তা কোড চায়। যদি ব্যবহারকারী অনেক ব্যর্থ প্রচেষ্টা সঞ্চালন করে, আপনি একটি tooManyFailedAttempts ত্রুটি প্রতিক্রিয়া ফেরত দিতে পারেন। ত্রুটি প্রতিক্রিয়া দেখুন.

ব্যবহারকারী ৩৩৩২২২
গুগল সহকারী দুঃখিত, নিরাপত্তা কোড ভুল. আমি কি আপনার নিরাপত্তা কোড পেতে পারি?
অনুরোধ
{
  "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"
      }
    }]
  }
}

বৈধ পিন

এই উদাহরণটি একটি বৈধ পিনের অনুরোধ এবং প্রতিক্রিয়া দেখায়৷

ব্যবহারকারী ৩৩৩৪৪৪
গুগল সহকারী দরজা খুলছে।
অনুরোধ
{
  "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
      }
    }]
  }
}
ব্যবহারকারী বসার ঘরের আলো জ্বালিয়ে দিন।
গুগল সহকারী আমি কি আপনার নিরাপত্তা কোড পেতে পারি?
অনুরোধ
{
  "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 - ঠিক আছে।

ত্রুটি এবং ব্যতিক্রমগুলির সম্পূর্ণ তালিকা দেখুন।