دليل نافذة المنزل الذكي

action.devices.types.WINDOW: يمكن فتح النوافذ وإغلاقها، ويمكن فتح الأقسام في اتجاهات مختلفة، ويمكن أيضًا قفلها وفتحها.

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

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

راجِع مستندات السمة ذات الصلة للاطّلاع على تفاصيل التنفيذ، مثل السمات والحالات التي يجب أن تدعمها خدمتك، وكيفية إنشاء ردود 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.WINDOW",
        "traits": [
          "action.devices.traits.LockUnlock",
          "action.devices.traits.OpenClose"
        ],
        "name": {
          "name": "Simple window"
        },
        "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": 0,
        "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
        }
      }
    ]
  }
}

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": "PENDING",
        "states": {
          "online": true,
          "openPercent": 100
        }
      }
    ]
  }
}

OpenCloseRelative

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

طلب
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OpenCloseRelative",
                "params": {
                  "openRelativePercent": 10
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الردّ
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "PENDING",
        "states": {
          "online": true,
          "openPercent": 10
        }
      }
    ]
  }
}

أخطاء الجهاز

يمكنك الاطّلاع على القائمة الكاملة للأخطاء والاستثناءات.