دليل مرآب المنزل المزوّد بأجهزة ذكية

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

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

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

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

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

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

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

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

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

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

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

نموذج استجابة المزامنة

طلب
{
  "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
      }
    }
  }
}

نموذج أوامر EXECUTE

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: حاول المستخدم التحكّم في باب المرآب ولكنه في حالة مقفلة، وبالتالي لا يسمح له بالتحرّك.