راهنمای ماشین چمن‌زنی خانگی هوشمند

action.devices.types.MOWER - تعاملات با ماشین‌های چمن‌زنی ممکن است شامل شروع، توقف و مکث چمن‌زنی، اتصال، بررسی چرخه فعلی، یافتن ماشین چمن‌زنی و تنظیم حالت‌های مختلف باشد.

این نوع نشان می‌دهد که دستگاه آیکون Mower و برخی مترادف‌ها و نام‌های مستعار مرتبط را دریافت می‌کند.

قابلیت‌های دستگاه

برای جزئیات پیاده‌سازی، مانند ویژگی‌ها و حالت‌هایی که سرویس شما باید پشتیبانی کند، و نحوه ساخت پاسخ‌های EXECUTE و QUERY، به مستندات مربوط به ویژگی‌ها مراجعه کنید.

صفات مورد نیاز

این ویژگی‌ها و دستورات، در صورت وجود برای دستگاه شما، الزامی هستند. اگر دستگاه شما از این ویژگی‌ها پشتیبانی نمی‌کند، کد خطای functionNotSupported را در یک پاسخ QUERY یا EXECUTE وارد کنید. برای اطلاعات بیشتر به بخش خطاها و استثنائات مراجعه کنید.

این ویژگی‌ها، در صورت وجود، برای دستگاه شما توصیه می‌شوند. با این حال، شما می‌توانید از بین تمام ویژگی‌های موجود، آن‌ها را با هم ترکیب و تطبیق دهید تا به بهترین شکل با عملکرد محصول فعلی شما مطابقت داشته باشد.

دستگاه نمونه: ماشین چمن‌زنی ساده

این بخش شامل نمونه‌هایی از payloadهای intent است که نشان‌دهنده‌ی یک "Mower" رایج بر اساس نوع دستگاه و ویژگی‌های بالا هستند. اگر ویژگی‌هایی را در پیاده‌سازی خود اضافه یا حذف می‌کنید، پاسخ‌های خود را متناسب با آن تغییرات تغییر دهید.

نمونه پاسخ SYNC

درخواست
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
پاسخ
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.MOWER",
        "traits": [
          "action.devices.traits.Dock",
          "action.devices.traits.EnergyStorage",
          "action.devices.traits.StartStop"
        ],
        "name": {
          "name": "Simple mower"
        },
        "willReportState": true,
        "attributes": {
          "queryOnlyEnergyStorage": true,
          "pausable": true,
          "availableZones": [
            "left driveway",
            "right driveway",
            "around the hedges"
          ]
        },
        "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,
        "isRunning": true,
        "isPaused": false,
        "isDocked": false,
        "activeZones": [
          "left driveway"
        ],
        "descriptiveCapacityRemaining": "HIGH",
        "capacityRemaining": [
          {
            "unit": "SECONDS",
            "rawValue": 36000
          },
          {
            "unit": "PERCENTAGE",
            "rawValue": 90
          }
        ]
      }
    }
  }
}

نمونه دستورات اجرایی

بارانداز

برای جزئیات بیشتر در مورد پارامترهای دستور، به مرجع action.devices.traits.Dock مراجعه کنید.

درخواست
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.Dock"
              }
            ]
          }
        ]
      }
    }
  ]
}
پاسخ
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "isDocked": true
        }
      }
    ]
  }
}

شروع/توقف

برای جزئیات بیشتر در مورد پارامترهای دستور، به مرجع action.devices.traits.StartStop مراجعه کنید.

درخواست
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.StartStop",
                "params": {
                  "start": true,
                  "zone": "right driveway"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
پاسخ
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "isRunning": true,
          "isPaused": false,
          "activeZones": [
            "right driveway"
          ]
        }
      }
    ]
  }
}

خطاهای دستگاه

لیست کامل خطاها و استثنائات را مشاهده کنید.