Giản đồ đặc điểm RunCycle cho nhà thông minh
action.devices.traits.RunCycle
– Trait này đại diện cho bất cứ thiết bị nào có thời lượng hoạt động liên tục và có thể truy vấn được.
Các thiết bị như vậy sẽ báo cáo tổng số chu kỳ khi bắt đầu hoạt động và mỗi chu kỳ mà thiết bị hiện đang thực hiện trong khi chạy. Điều này cho phép người dùng thực hiện các truy vấn, chẳng hạn như:
- Máy sấy đang ở chu kỳ nào?
- Máy rửa bát còn được bao nhiêu chu kỳ?
- Máy sấy đang làm gì?
- Khi nào quá trình rửa sẽ hoàn tất?
Một số thiết bị nhất định có khoảng thời gian ở định dạng không theo chu kỳ. Bất kỳ thiết bị nào chạy trong một khoảng thời gian cụ thể đều có thể báo cáo thời gian còn lại mà không có chu kỳ. Cách này cũng xử lý những trường hợp mà chu kỳ có thể không nhất quán (ví dụ: máy rửa bát không phải lúc nào cũng sử dụng được tất cả các chu kỳ). Ví dụ: người dùng có thể hỏi Máy hút bụi của tôi sẽ chạy trong bao lâu? sẽ trả về khoảng thời gian tính theo đơn vị tỷ lệ với thời gian còn lại. Điều này cũng áp dụng cho các thiết bị được liệt kê ở trên; Quần áo sẽ sấy bao lâu nữa? sẽ trả về thời lượng tính bằng phút.
Các thiết bị có thể trả về nội dung đã biết và phản hồi TTS của Trợ lý sẽ tạo thành câu trả lời đúng nhất dựa trên dữ liệu hiện có (ví dụ: Máy rửa bát đang chạy và sẽ hoàn tất sau khoảng 20 phút nữa.)
RunCycle hiện là một trait chỉ có thể đọc – nó không có lệnh mà chỉ có trạng thái để truy vấn. Trong tương lai, có thể sẽ có các cơ chế để chạy lại chu kỳ hoặc bỏ qua các chu kỳ (tốt với vòi phun nước, không tốt với máy giặt).
THUỘC TÍNH của thiết bị
Không có.
TRẠNG THÁI của thiết bị
Các thực thể có đặc điểm này có thể báo cáo các trạng thái sau trong thao tác QUERY
. Để tìm hiểu thêm về cách xử lý ý định QUERY
, vui lòng xem phần Thực hiện ý định.
Tiểu bang | Loại | Nội dung mô tả |
---|---|---|
currentRunCycle |
Mảng |
Bắt buộc. Chứa các từ đồng nghĩa cho chu kỳ hiện tại trong mỗi ngôn ngữ được hỗ trợ. |
[item, ...] |
Đối tượng |
Tên từ đồng nghĩa theo chu kỳ. |
currentCycle |
Chuỗi |
Bắt buộc. Chu kỳ hiện tại đang được thực hiện. |
nextCycle |
Chuỗi |
Không bắt buộc. Chu kỳ tiếp theo để thực hiện. |
lang |
Chuỗi |
Bắt buộc. Mã ngôn ngữ cho các tên chu kỳ đã cho. Xem phần Các ngôn ngữ được hỗ trợ. |
currentTotalRemainingTime |
Số nguyên |
Bắt buộc. Thời gian còn lại khi hoạt động, tính bằng giây. |
currentCycleRemainingTime |
Số nguyên |
Bắt buộc. Thời gian còn lại trong chu kỳ hiện tại, tính bằng giây. |
Ví dụ
Thiết bị đang xả nước thêm 5 phút nữa và sẽ hoàn tất sau 20 phút.
{ "currentRunCycle": [ { "currentCycle": "rinse", "lang": "en" } ], "currentTotalRemainingTime": 1200, "currentCycleRemainingTime": 300 }
Thiết bị đang xả rửa thêm 5 phút trước khi chuyển sang chế độ xoay.
{ "currentRunCycle": [ { "currentCycle": "rinse", "nextCycle": "spin", "lang": "en" } ], "currentTotalRemainingTime": 600, "currentCycleRemainingTime": 300 }
Lệnh trên thiết bị
Không có.
THÔNG BÁO trên thiết bị
Các thiết bị có đặc điểm này có thể trả về trọng tải thông báo sau đây trong quá trình thay đổi trạng thái thiết bị. Để tìm hiểu thêm về cách triển khai thông báo, hãy xem bài viết Thông báo cho các Hành động của nhà thông minh.
Các trường | Loại | Nội dung mô tả |
---|---|---|
RunCycle |
Bắt buộc. Gói thông báo. |
|
Hỗ trợ một trong các chức năng sau: | ||
0
|
Đối tượng |
Thành công |
priority |
Số nguyên |
Bắt buộc. Biểu thị cấp thông báo. Giá trị hiện được hỗ trợ là 0, cho biết rằng thông báo phải được đọc to. |
status |
Chuỗi |
Bắt buộc. Kết quả của toán tử. Các giá trị được hỗ trợ:
|
currentCycleRemainingTime |
Số nguyên |
Bắt buộc. Thời gian còn lại trong chu kỳ hiện tại, tính bằng giây. |
1
|
Đối tượng |
Lỗi |
priority |
Số nguyên |
Bắt buộc. Biểu thị cấp thông báo. Giá trị hiện được hỗ trợ là 0, cho biết rằng thông báo phải được đọc to. |
status |
Chuỗi |
Bắt buộc. Kết quả của toán tử. Các giá trị được hỗ trợ:
|
errorCode |
Chuỗi |
Bắt buộc. Giá trị có thể là bất kỳ mã lỗi nào cho trait này, ví dụ: |
Ví dụ
Thiết bị đã chạy xong.
{ "RunCycle": { "priority": 0, "status": "SUCCESS", "currentCycleRemainingTime": 0 } }
Đã xảy ra lỗi khi hoàn tất chu kỳ hiện tại.
{ "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceStuck" } }