دليل المرآب المنزلي الذكي

action.devices.types.GARAGE - يمكن أن تفتح أبواب المرائب وتغلقها وترصد أي حالة مفتوحة. ويمكن أن تشير أيضًا إلى ما إذا كان أحد الكائنات قد حجب مسار الباب أثناء إغلاقه أو إذا كان الباب مغلقًا، وبالتالي لا يمكن التحكّم فيه.

يشير هذا النوع إلى أن الجهاز يحصل على رمز المرآب وبعض العناصر ذات الصلة المرادفات والأسماء المستعارة.

إمكانيات الجهاز

راجع وثائق السمات المقابلة تفاصيل التنفيذ، مثل السمات والحالات التي يجب أن تتيحها خدمتك، وكيفية إنشاء ردود EXECUTE وQUERY.

السمات المطلوبة

هذه السمات والأوامر مطلوبة، إذا كانت منطبقة على الخاص بك. إذا لم يكن جهازك يتيح هذه السمات، أدخِل رمز الخطأ functionNotSupported في استجابة QUERY أو EXECUTE. عرض الأخطاء والاستثناءات لمزيد من المعلومات.

ننصح باستخدام هذه السمات إذا كانت منطبقة على جهازك. ومع ذلك، يمكنك مزج جميع السمات المتاحة ومطابقتها لمطابقة بياناتك على أفضل نحو وظائف المنتج.

متطلبات الجودة

  • وقت الاستجابة: يجب أن يكون أقل من أو يساوي 2000 ملي ثانية.
  • الموثوقية: يجب أن تكون أكبر من أو تساوي 97%.

مثال على جهاز: مرآب بسيط

يحتوي هذا القسم على مثال على حمولات البيانات المقصودة التي تمثّل "Garage" شائعًا. بناءً على نوع الجهاز والسمات المذكورة أعلاه. إذا قمتَ بإضافة أو إزالة سمات في التنفيذ، عليك تعديل ردودك وفقًا لذلك لتعكس هذه التغييرات.

نموذج رد المزامنة

طلب
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
الرد
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.GARAGE",
        "traits": [
          "action.devices.traits.OpenClose",
          "action.devices.traits.LockUnlock"
        ],
        "name": {
          "name": "Simple garage"
        },
        "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,
        "openPercent": 50,
        "isLocked": false,
        "isJammed": false
      }
    }
  }
}

نماذج أوامر التنفيذ

OpenClose

للحصول على تفاصيل إضافية حول معاملات الأوامر، عرض action.devices.traits.OpenClose المرجع.

طلب
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OpenClose",
                "params": {
                  "openPercent": 100
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "openPercent": 100
        }
      }
    ]
  }
}

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": "SUCCESS",
        "states": {
          "online": true,
          "isLocked": true,
          "isJammed": false
        }
      }
    ]
  }
}

أخطاء الجهاز

اطّلع على القائمة الكاملة الأخطاء والاستثناءات.
  • obstructionDetected - حاول المستخدم إغلاق باب المرآب لكن كان جسم يحجب الباب.
  • lockedState - حاول المستخدم التحكم في باب المرآب ولكنه في باب مغلق حالة لا تسمح له بالتحرك.