دليل قفل المنزل الذكي
action.devices.types.LOCK: يمكن للأقفال قفل الباب وفتحه والإبلاغ عن حالة القفل.
يشير هذا النوع إلى أنّ الجهاز يحصل على رمز القفل وبعض المرادفات والأسماء المستعارة ذات الصلة.
إمكانيات الجهاز
راجِع مستندات السمة ذات الصلة للاطّلاع على تفاصيل التنفيذ، مثل السمات والحالات التي يجب أن تدعمها خدمتك، وكيفية إنشاء ردود EXECUTE وQUERY.
السمات المطلوبة
هذه السمات والأوامر مطلوبة إذا كانت تنطبق على جهازك. إذا كان جهازك لا يتوافق مع هذه السمات، أدخِل رمز الخطأ functionNotSupported في استجابة QUERY أو EXECUTE. لمزيد من المعلومات، راجِع مقالة الأخطاء والاستثناءات.
مثال على جهاز: قفل بسيط
يحتوي هذا القسم على أمثلة لحمولات البيانات الخاصة بالنوايا التي تمثّل عملية "قفل" شائعة استنادًا إلى نوع الجهاز وسماته المذكورة أعلاه. في حال إضافة سمات أو إزالتها في عملية التنفيذ، عدِّل الردود وفقًا لذلك لعكس هذه التغييرات.
نموذج استجابة SYNC
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.LOCK", "traits": [ "action.devices.traits.LockUnlock" ], "name": { "name": "Simple lock" }, "willReportState": true, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
نموذج ردّ QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "isLocked": true, "isJammed": false } } } }
أمثلة على أوامر EXECUTE
LockUnlock
للحصول على تفاصيل إضافية حول مَعلمات الأمر، يُرجى الاطّلاع على مرجع
action.devices.traits.LockUnlock.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.LockUnlock", "params": { "lock": true } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "isLocked": true, "isJammed": false } } ] } }