API Giá trị khoá cung cấp các API quản lý dữ liệu tuỳ chỉnh mới cho các đối tượng Thiết bị, Phòng và Tự động hoá. Vòng đời của dữ liệu tuỳ chỉnh được xác định nghiêm ngặt theo vòng đời của đối tượng liên kết với dữ liệu đó. Ví dụ: dữ liệu tuỳ chỉnh (như "Phòng của Lucy") liên kết với một đối tượng Phòng sẽ tự động bị xoá, di chuyển hoặc chuyển (giữa các cấu trúc) cùng với đối tượng Phòng.
Thay đổi về API Kotlin tập trung vào giao diện hasCustomAppData và cung cấp các tiện ích cho đối tượng chứa dữ liệu ứng dụng tuỳ chỉnh, đồng thời bao gồm các hàm tạo, đọc, cập nhật và xoá (CRUD) tiêu chuẩn.
Ví dụ về thiết bị
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)
Ví dụ về phòng
val room = homeClient.rooms().findRoomByName(roomName)
room.updateValue("nickname", "Lucy's Room")
val response = room.getValue("nickname")
room.deleteValue("nickname")
Ví dụ về quy trình tự động hoá
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)
Quy định hạn chế
- Khoá phải là một chuỗi ký tự UTF-8 hợp lệ, có độ dài tối đa là 128. Khoá có thể là một chuỗi trống.
- Giá trị phải là một chuỗi ký tự UTF-8 hợp lệ, có độ dài tối đa là 1024. Giá trị có thể là một chuỗi trống.
- Mỗi đối tượng có thể có 10 hàng cặp khoá-giá trị.