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

action.devices.SYNC

এই উদ্দেশ্যটি প্রদত্ত ব্যবহারকারীর সাথে যুক্ত ডিভাইসের তালিকা এবং তাদের ক্ষমতার অনুরোধ করে।

এটি অ্যাকাউন্ট লিঙ্ক করার সময় বা কোনও ব্যবহারকারী ম্যানুয়ালি তাদের ডিভাইসগুলি পুনরায় সিঙ্ক করার সময় ট্রিগার হয়। আপনার পূর্ণতা প্রতিটি ডিভাইসের জন্য সমর্থিত বৈশিষ্ট্য এবং বৈশিষ্ট্যগুলির সাথে প্রতিক্রিয়া জানা উচিত।

আপনার SYNC প্রতিক্রিয়া ব্যবহারকারীর সাথে যুক্ত সমস্ত ডিভাইস ফেরত দেবে। এটি কোনও নির্দিষ্ট ডিভাইসের কাছে পৌঁছানোর যোগ্য কিনা তা নির্ধারণ করে না। এটি QUERY এবং EXECUTE প্রতিক্রিয়া দ্বারা পরিচালিত হয়৷

আরও বিশদ বিবরণের জন্য, সনাক্ত করুন এবং সিঙ্ক দেখুন।

বিন্যাস অনুরোধ

ক্ষেত্র টাইপ বর্ণনা
requestId স্ট্রিং

প্রয়োজন।

অনুরোধের আইডি।

inputs অ্যারে

প্রয়োজন।

অভিপ্রায় অনুরোধের সাথে মিলে যাওয়া ইনপুটগুলির তালিকা৷

[ item, ... ] অবজেক্ট

উদ্দেশ্য অনুরোধের সাথে যুক্ত টাইপ এবং পেলোড।

intent

প্রয়োজন।

(ধ্রুবক মান: "action.devices.SYNC" )

উদ্দেশ্য অনুরোধের ধরন।

উদাহরণ

সিঙ্ক অভিপ্রায় অনুরোধ

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}

প্রতিক্রিয়া বিন্যাস

ক্ষেত্র টাইপ বর্ণনা
requestId স্ট্রিং

প্রয়োজন।

সংশ্লিষ্ট অনুরোধের আইডি।

payload অবজেক্ট

প্রয়োজন।

অভিপ্রায় প্রতিক্রিয়া পেলোড.

agentUserId স্ট্রিং

প্রয়োজন।

এজেন্টের প্ল্যাটফর্মে অনন্য (এবং অপরিবর্তনীয়) ব্যবহারকারী আইডি প্রতিফলিত করে। স্ট্রিংটি Google-এর কাছে অস্বচ্ছ, তাই যদি এজেন্ট সাইডে একটি অপরিবর্তনীয় ফর্ম বনাম একটি পরিবর্তনযোগ্য ফর্ম থাকে, তবে অপরিবর্তনীয় ফর্মটি ব্যবহার করুন (যেমন ইমেলের পরিবর্তে একটি অ্যাকাউন্ট নম্বর)৷

errorCode স্ট্রিং

SYNC এ পদ্ধতিগত ত্রুটির জন্য

debugString স্ট্রিং

বিশদ ত্রুটি যা ব্যবহারকারীদের কাছে কখনই উপস্থাপিত হবে না তবে বিকাশের সময় লগ করা বা ব্যবহার করা যেতে পারে।

devices অ্যারে

প্রয়োজন।

ব্যবহারকারীর মালিকানাধীন ডিভাইসের তালিকা। শূন্য বা তার বেশি ডিভাইস ফেরত দেওয়া হয় (শূন্য ডিভাইস মানে ব্যবহারকারীর কোনো ডিভাইস নেই, অথবা সেগুলি সবগুলো সংযোগ বিচ্ছিন্ন করে দিয়েছে)।

[ item, ... ] অবজেক্ট

ডিভাইস মেটাডেটা।

id স্ট্রিং

প্রয়োজন।

ডেভেলপারের ক্লাউডে ডিভাইসের আইডি। এটি ব্যবহারকারীর জন্য এবং বিকাশকারীর জন্য অনন্য হতে হবে, কারণ ভাগ করার ক্ষেত্রে আমরা একই ডিভাইসের একাধিক দৃশ্য অনুমান করতে এটি ব্যবহার করতে পারি। এটি ডিভাইসের জন্য অপরিবর্তনীয় হওয়া উচিত; এটি পরিবর্তন হলে, সহকারী এটিকে একটি নতুন ডিভাইস হিসাবে বিবেচনা করবে।

type স্ট্রিং

প্রয়োজন।

ডিভাইসের হার্ডওয়্যার প্রকার।

traits অ্যারে

প্রয়োজন।

এই ডিভাইসের বৈশিষ্ট্যের তালিকা। এটি কমান্ড, বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করে এবং বলে যে ডিভাইসটি সমর্থন করে৷

[ item, ... ] স্ট্রিং

সমর্থিত বৈশিষ্ট্যের নাম।

name অবজেক্ট

প্রয়োজন।

এই ডিভাইসের নাম।

defaultNames অ্যারে

ব্যবহারকারীর পরিবর্তে বিকাশকারী দ্বারা প্রদত্ত নামের তালিকা, প্রায়শই প্রস্তুতকারকের নাম, SKU, ইত্যাদি।

[ item, ... ] স্ট্রিং

ডিভাইসের ডিফল্ট নাম।

name স্ট্রিং

প্রয়োজন।

ডিভাইসের প্রাথমিক নাম, সাধারণত ব্যবহারকারী দ্বারা প্রদান করা হয়। এটিও সেই নাম যা সহকারী প্রতিক্রিয়াগুলিতে ডিভাইসটি বর্ণনা করতে পছন্দ করবে৷

nicknames অ্যারে

ডিভাইসের জন্য ব্যবহারকারীর দ্বারা প্রদত্ত অতিরিক্ত নাম।

[ item, ... ] স্ট্রিং

ডিভাইসের ডাকনাম।

willReportState বুলিয়ান

প্রয়োজন।

রিয়েল টাইম ফিড দ্বারা এই ডিভাইসটির অবস্থা আপডেট করা হবে কিনা তা নির্দেশ করে৷ (রিপোর্টিং স্টেটের জন্য রিয়েল টাইম ফিড ব্যবহার করার জন্য সত্য, এবং পোলিং মডেল ব্যবহার করার জন্য মিথ্যা।)

notificationSupportedByAgent বুলিয়ান

(ডিফল্ট: false )

ডিভাইসের জন্য বিজ্ঞপ্তিগুলি সক্ষম করা আছে কিনা তা নির্দেশ করে৷

roomHint স্ট্রিং

সেটআপ সহজ করতে ব্যবহারকারীর বাড়িতে ডিভাইসের বর্তমান রুম প্রদান করে।

deviceInfo অবজেক্ট

প্রয়োজনে এক-অফ যুক্তিতে ব্যবহারের জন্য ডিভাইসের বর্ণনাকারী ক্ষেত্রগুলি রয়েছে (যেমন 'ভাঙা ফার্মওয়্যার সংস্করণ X-এর হালকা Y-এর রঙ সামঞ্জস্য করা প্রয়োজন', বা 'সুরক্ষা ত্রুটির জন্য ফার্মওয়্যার Z-এর সমস্ত ব্যবহারকারীকে অবহিত করা প্রয়োজন')।

manufacturer স্ট্রিং

বিশেষ করে উপযোগী যখন ডেভেলপার অন্যান্য ডিভাইসের জন্য একটি হাব হয়। Google এখানে প্রস্তুতকারকদের একটি আদর্শ তালিকা প্রদান করতে পারে যাতে যেমন TP-Link এবং Smartthings উভয়ই একইভাবে 'osram' বর্ণনা করে।

model স্ট্রিং

নির্দিষ্ট ডিভাইসের মডেল বা SKU শনাক্তকারী।

hwVersion স্ট্রিং

হার্ডওয়্যারের সাথে সংযুক্ত নির্দিষ্ট সংস্করণ নম্বর যদি উপলব্ধ থাকে।

swVersion স্ট্রিং

সফ্টওয়্যার/ফার্মওয়্যারের সাথে সংযুক্ত নির্দিষ্ট সংস্করণ নম্বর, যদি উপলব্ধ থাকে।

attributes অবজেক্ট

প্রতিটি বৈশিষ্ট্য স্কিমা রেফারেন্সে বর্ণিত প্রতি-বৈশিষ্ট্য বৈশিষ্ট্যের সাথে সারিবদ্ধ।

customData অবজেক্ট

বিকাশকারী দ্বারা সংজ্ঞায়িত বস্তু যা ভবিষ্যতের QUERY এবং EXECUTE অনুরোধের সাথে সংযুক্ত করা হবে, প্রতি ডিভাইসে সর্বাধিক 512 বাইট। আপনার ক্লাউড পরিষেবার প্রয়োজন হতে পারে এমন ডিভাইস সম্পর্কে অতিরিক্ত তথ্য সঞ্চয় করতে এই বস্তুটি ব্যবহার করুন, যেমন ডিভাইসের বিশ্বব্যাপী অঞ্চল। এই অবজেক্টের ডেটাতে কয়েকটি সীমাবদ্ধতা রয়েছে: কোনও সংবেদনশীল তথ্য, ব্যক্তিগতভাবে সনাক্তযোগ্য তথ্য সহ কিন্তু সীমাবদ্ধ নয়।

otherDeviceIds অ্যারে

স্থানীয় সম্পাদনের জন্য একটি ক্লাউড সিঙ্ক করা ডিভাইস সনাক্ত করতে ব্যবহৃত বিকল্প আইডিগুলির তালিকা৷

[ item, ... ] অবজেক্ট

বিকল্প ডিভাইস আইডি।

agentId স্ট্রিং

এজেন্টের আইডি। সাধারণত, এটি অ্যাকশন কনসোলে প্রজেক্ট আইডি।

deviceId স্ট্রিং

প্রয়োজন।

এজেন্ট দ্বারা সংজ্ঞায়িত ডিভাইস আইডি। ডিভাইস আইডি অনন্য হতে হবে.

উদাহরণ

SYNC অভিপ্রায় প্রতিক্রিয়া

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "agentUserId": "1836.15267389",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.OUTLET",
        "traits": [
          "action.devices.traits.OnOff"
        ],
        "name": {
          "defaultNames": [
            "My Outlet 1234"
          ],
          "name": "Night light",
          "nicknames": [
            "wall plug"
          ]
        },
        "willReportState": false,
        "roomHint": "kitchen",
        "deviceInfo": {
          "manufacturer": "lights-out-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        },
        "otherDeviceIds": [
          {
            "deviceId": "local-device-id"
          }
        ],
        "customData": {
          "fooValue": 74,
          "barValue": true,
          "bazValue": "foo"
        }
      },
      {
        "id": "456",
        "type": "action.devices.types.LIGHT",
        "traits": [
          "action.devices.traits.OnOff",
          "action.devices.traits.Brightness",
          "action.devices.traits.ColorSetting"
        ],
        "name": {
          "defaultNames": [
            "lights out inc. bulb A19 color hyperglow"
          ],
          "name": "lamp1",
          "nicknames": [
            "reading lamp"
          ]
        },
        "willReportState": false,
        "roomHint": "office",
        "attributes": {
          "colorModel": "rgb",
          "colorTemperatureRange": {
            "temperatureMinK": 2000,
            "temperatureMaxK": 9000
          },
          "commandOnlyColorSetting": false
        },
        "deviceInfo": {
          "manufacturer": "lights out inc.",
          "model": "hg11",
          "hwVersion": "1.2",
          "swVersion": "5.4"
        },
        "customData": {
          "fooValue": 12,
          "barValue": false,
          "bazValue": "bar"
        }
      }
    ]
  }
}