دليل شبكة المنزل الذكي

action.devices.types.NETWORK: يمثّل مجموعة من عُقد جهاز التوجيه أو شبكة متداخلة يتم التحكّم فيها ككيان واحد بدلاً من أجهزة فردية. قد يعيد جهاز الشبكة تشغيله ويحدّث برامجه ويتضمّن أوضاعًا للتعامل مع عناصر التحكّم في جودة الخدمة (QoS) وقيود الأهل. يمكن للجهاز تنفيذ عمليات مثل تفعيل شبكة الضيوف وإعداد تقارير عن معلومات خاصة بالشبكة، مثل معدّلات نقل البيانات الحالية على الإنترنت.

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

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

راجِع مستندات السمة ذات الصلة للحصول على تفاصيل التنفيذ، مثل السمات والحالات التي يجب أن تدعمها خدمتك، وكيفية إنشاء ردود 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.NETWORK",
        "traits": [
          "action.devices.traits.Reboot",
          "action.devices.traits.NetworkControl"
        ],
        "name": {
          "name": "Simple network"
        },
        "willReportState": true,
        "attributes": {
          "supportsEnablingNetworkProfile": true,
          "supportsDisablingNetworkProfile": true,
          "supportsNetworkDownloadSpeedTest": true,
          "supportsNetworkUploadSpeedTest": true,
          "networkProfiles": [
            "kids"
          ]
        },
        "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,
        "networkEnabled": true,
        "networkSettings": {
          "ssid": "home-network-123"
        }
      }
    }
  }
}

أمثلة على أوامر EXECUTE

إعادة التشغيل

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

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

EnableDisableNetworkProfile

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

طلب
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.EnableDisableNetworkProfile",
                "params": {
                  "profile": "kids",
                  "enable": false
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "networkEnabled": true,
          "networkSettings": {
            "ssid": "home-network-123"
          }
        }
      }
    ]
  }
}

TestNetworkSpeed

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

طلب
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.TestNetworkSpeed",
                "params": {
                  "testDownloadSpeed": true,
                  "testUploadSpeed": true,
                  "followUpToken": "123"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true
        }
      }
    ]
  }
}

أخطاء الجهاز

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