Key Value API

কী ভ্যালু API, ডিভাইস, রুম ও অটোমেশন অবজেক্টের জন্য নতুন কাস্টম ডেটা ম্যানেজমেন্ট API প্রদান করে। কাস্টম ডেটার লাইফসাইকেল, যে অবজেক্টের সাথে এটি যুক্ত তার লাইফসাইকেলের সাথে কঠোরভাবে সীমাবদ্ধ। যেমন, রুম অবজেক্টের সাথে যুক্ত কাস্টম ডেটা (যেমন, "লুসির রুম") রুম অবজেক্টের সাথে অটোমেটিক মুছে যাবে, সরানো হবে বা ট্রান্সফার করা হবে (স্ট্রাকচার জুড়ে)।

Kotlin API-তে পরিবর্তন মূলত hasCustomAppData ইন্টারফেসের উপর ভিত্তি করে করা হয়েছে এবং এটি কাস্টম অ্যাপ্লিকেশন ডেটা যে অবজেক্টের অন্তর্গত, সেটির এক্সটেনশন প্রদান করে এবং এতে স্ট্যান্ডার্ড তৈরি, পড়া, আপডেট করা ও মুছে ফেলা (CRUD) সংক্রান্ত ফাংশন অন্তর্ভুক্ত থাকে।

ডিভাইসের উদাহরণ

val device = homeClient.devicesWithLogging().findDeviceByName(deviceName)
var response = device.getValue(key)
println("Before: $response")
device.updateValue(key, value)
response = device.getValue(key)
println("After: $response")
device.deleteValue(key)

রুমের উদাহরণ

val room = homeClient.rooms().findRoomByName(roomName)
room.updateValue("nickname", "Lucy's Room")
val response = room.getValue("nickname")
room.deleteValue("nickname")

অটোমেশনের উদাহরণ

val automation = homeClient.automations().findAutomationByName(automationName)
var response = automation.getValue(key)
println("Before: $response")
automation.updateValue(key, value)
response = automation.getValue(key)
println("After: $response")
automation.deleteValue(key)

বিধিনিষেধ

  • কী অবশ্যই সঠিক UTF-8 অক্ষরের স্ট্রিং হতে হবে, যার সর্বাধিক দৈর্ঘ্য ১২৮। কীটি একটি খালি স্ট্রিং হতে পারে।
  • মানটি অবশ্যই সঠিক UTF-8 অক্ষরের স্ট্রিং হতে হবে, যার সর্বাধিক দৈর্ঘ্য ১০২৪। ভ্যালু খালি স্ট্রিং হতে পারে।
  • প্রতিটি অবজেক্টে ১০টি কী-ভ্যালু পেয়ারের সারি থাকতে পারে।