مرحبًا بك في "مركز مطوّري برامج Google Home"، وجهتك الجديدة لتعلّم كيفية تطوير إجراءات منزلية ذكية. ملاحظة: ستواصل إنشاء الإجراءات في وحدة تحكم الإجراءات.
تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

دليل كراج المنزل الذكي

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

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

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

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

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

هذه السمات والأوامر مطلوبة، إذا كانت منطبقة على جهازك.

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

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

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

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

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

نموذج استجابة SYNC

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

فتح

للحصول على تفاصيل إضافية عن معلّمات الأوامر، راجِع مرجع 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
        }
      }
    ]
  }
}

فتح القفل

للحصول على تفاصيل إضافية عن معلّمات الأوامر، راجِع مرجع 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 - حاول المستخدم التحكّم في باب المرآب ولكنه في وضع القفل ولا يسمح له بتحريكه.