مخطط سمة "الملء الذكي" للمنزل المزوّد بأجهزة ذكية
action.devices.traits.Fill: تنطبق هذه السمة على الأجهزة التي يمكن ملؤها، مثل حوض الاستحمام.
سمات الجهاز
قد تعرض الأجهزة التي تتضمّن هذه السمة السمات التالية كجزء من عملية SYNC. لمزيد من المعلومات حول التعامل مع طلبات SYNC، يمكنك الاطّلاع على مقالة تنفيذ الطلبات.
| السمات | النوع | الوصف |
|---|---|---|
availableFillLevels |
الكائن |
توضّح هذه السمة مستويات التعبئة المختلفة للجهاز. |
levels |
المصفوفة |
مطلوبة قائمة بأسماء المستويات والمرادفات الخاصة بكل لغة |
[item, ...] |
الكائن |
اسم المستوى ومرادفاته الخاصة باللغة |
level_name |
String |
مطلوبة تمثّل هذه السمة الاسم الداخلي للمستوى. قد لا يكون هذا الخيار سهل الاستخدام، وسيتم مشاركته بجميع اللغات. |
level_values |
المصفوفة |
مطلوبة مرادفات المستوى بكل لغة متاحة |
[item, ...] |
الكائن |
مرادفات المستوى بلغة معيّنة يجب توفير عنصر واحد على الأقل بقيمة |
level_synonym |
المصفوفة |
مطلوبة مرادف للمستوى يُستخدَم السلسلة الأولى في هذه القائمة كاسم أساسي للمستوى بهذه اللغة. |
[item, ...] |
String |
اسم المرادف يجب توفير عنصر واحد على الأقل بقيمة |
lang |
String |
مطلوبة رمز اللغة (ISO 639-1) اللغات المتاحة |
ordered |
Boolean |
مطلوبة إذا كانت القيمة صحيحة، يتعامل الجهاز مع قواعد نحوية إضافية لمنطق الزيادة أو النقصان، كما هو ممثّل في مصفوفة |
supportsFillPercent |
Boolean |
(القيمة التلقائية: إذا كانت القيمة صحيحة، سيتم قبول الأوامر لضبط المستوى على نسبة مئوية. |
أمثلة
جهاز يتضمّن إمكانات أساسية للملء أو التفريغ ولا يتيح مستويات ملء منفصلة
{}جهاز يتيح مستويات تعبئة منفصلة
{
"availableFillLevels": {
"levels": [
{
"level_name": "half_level",
"level_values": [
{
"level_synonym": [
"Half",
"Half way",
"One half"
],
"lang": "en"
}
]
},
{
"level_name": "full_level",
"level_values": [
{
"level_synonym": [
"Full",
"All the way",
"Complete"
],
"lang": "en"
}
]
}
],
"ordered": true
}
}حالات الجهاز
يمكن أن تعرض الكيانات التي تتضمّن هذه السمة الحالات التالية كجزء من عملية QUERY. لمزيد من المعلومات حول التعامل مع طلبات QUERY، يمكنك الاطّلاع على مقالة تنفيذ الطلبات.
| الولايات | النوع | الوصف |
|---|---|---|
isFilled |
Boolean |
مطلوبة قيمة صحيحة إذا كان الجهاز ممتلئًا بأي مستوى تكون القيمة False إذا كان الجهاز فارغًا تمامًا. |
currentFillLevel |
String |
مطلوبة إذا تم ضبط السمة |
currentFillPercent |
Number |
مطلوبة إذا تم ضبط السمة |
أمثلة
هل حوض الاستحمام ممتلئ؟
{
"isFilled": true
}هل حوض الاستحمام ممتلئ؟ (مع مستويات).
{
"isFilled": true,
"currentFillLevel": "half_level"
}أوامر الجهاز
قد تستجيب الأجهزة التي تتضمّن هذه السمة للأوامر التالية كجزء من عملية EXECUTE. لمزيد من المعلومات حول التعامل مع طلبات EXECUTE، يمكنك الاطّلاع على مقالة تنفيذ الطلبات.
action.devices.commands.Fill
املأ الجهاز أو فرِّغه.
المعلمات
| المعلمات | النوع | الوصف |
|---|---|---|
fill |
Boolean |
مطلوبة يتم ضبط القيمة على "صحيح" للملء، وعلى "خطأ" للتفريغ. |
fillLevel |
String |
تشير إلى |
fillPercent |
Number |
تشير إلى النسبة المئوية للمستوى المطلوب. |
أمثلة
املأ حوض الاستحمام.
{
"command": "action.devices.commands.Fill",
"params": {
"fill": true
}
}تَصرِيف مياه حوض الاستحمام
{
"command": "action.devices.commands.Fill",
"params": {
"fill": false
}
}املأ حوض الاستحمام حتى منتصفه.
{
"command": "action.devices.commands.Fill",
"params": {
"fill": true,
"fillLevel": "half_level"
}
}زيادة مستوى ملء حوض الاستحمام بمقدار واحد (يجب أن تكون قيمة السمة ordered هي true).
{
"command": "action.devices.commands.Fill",
"params": {
"fill": true,
"fillLevel": "full_level"
}
}