راهنمای روتر خانه هوشمند
action.devices.types.ROUTER
- روترها میتوانند راهاندازی مجدد شوند، نرمافزار خود را بهروزرسانی کنند، حالتهایی برای کنترل کیفیت خدمات (QoS) و محدودیتهای والدین داشته باشند، و عملیاتهای خاص شبکه را انجام دهند (مانند فعال کردن شبکه مهمان و گزارش دادن اطلاعات خاص شبکه مانند نرخ های فعلی اینترنت).
این نوع نشان میدهد که دستگاه نماد روتر و برخی از مترادفها و نامهای مستعار مرتبط را دریافت میکند.
قابلیت های دستگاه
برای جزئیات پیادهسازی، مانند ویژگیها و حالتهایی که سرویس شما باید از آنها پشتیبانی کند، و نحوه ایجاد پاسخهای EXECUTE و QUERY، به اسناد ویژگی مربوطه مراجعه کنید.
صفات مورد نیاز
این صفات و دستورات، در صورت وجود برای دستگاه شما، مورد نیاز هستند. اگر دستگاه شما از این ویژگی ها پشتیبانی نمی کند، کد خطای functionNotSupported
را در پاسخ QUERY یا EXECUTE وارد کنید. برای اطلاعات بیشتر به خطاها و استثناها مراجعه کنید.
صفات توصیه شده
این ویژگیها در صورت وجود برای دستگاه شما توصیه میشوند. با این حال، شما آزاد هستید که تمام ویژگیهای موجود را با هم ترکیب کنید تا به بهترین نحو با عملکرد محصول موجود خود مطابقت داشته باشد.
الزامات کیفیت
- تأخیر: باید کمتر یا مساوی 300 میلی ثانیه باشد.
- قابلیت اطمینان: باید بیشتر یا مساوی 97 درصد باشد.
دستگاه مثال: روتر ساده
این بخش شامل بارهای هدف نمونه است که یک «روتر» رایج را بر اساس نوع دستگاه و ویژگیهای بالا نشان میدهد. اگر ویژگیهایی را در پیادهسازی خود اضافه یا حذف میکنید، پاسخهای خود را متناسب با آن تغییر دهید تا آن تغییرات را منعکس کند.
نمونه پاسخ SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.ROUTER", "traits": [ "action.devices.traits.Reboot", "action.devices.traits.NetworkControl" ], "name": { "name": "Simple router" }, "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" }, "numConnectedDevices": 4, "networkUsageMB": 100.8 } } } }
نمونه دستورات 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 } } ] } }
DisableNetworkProfile را فعال کنید
برای جزئیات بیشتر در مورد پارامترهای فرمان، به مرجع 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 } } ] } }