מדריך לנתב לבית חכם
action.devices.types.ROUTER
– הנתבים יכולים להפעיל מחדש את הנתבים, לעדכן את התוכנות שלהם, להגדיר מצבים כדי לטפל באמצעי הבקרה של איכות השירות (QoS) ובהגבלות הורים, ולבצע פעולות ספציפיות לרשת (למשל, הפעלת הרשת לאורחים ודיווח על מידע ספציפי לרשת כמו קצבי התפוקה הנוכחיים באינטרנט).
הסוג הזה מציין שהמכשיר מקבל את הסמל של הנתב ומספרים קשורים מילים נרדפות וכינויים.
יכולות המכשיר
אפשר לעיין במסמכי התיעוד המתאימים לגבי התכונה פרטי ההטמעה, כמו מאפיינים ומצבים שבהם השירות צריך לתמוך, ואיך לבנות תגובות EXECUTE ו-QUERY.
התכונות הנדרשות
התכונות והפקודות האלה נדרשים, אם הן רלוונטיות
במכשיר. אם המכשיר שלכם לא תומך בתכונות האלה, הזינו את קוד השגיאה של
functionNotSupported
בתגובה QUERY או EXECUTE. צפייה
שגיאות וחריגים לקבלת מידע נוסף.
תכונות מומלצות
מומלץ להשתמש בתכונות האלה, אם הן רלוונטיות למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל התכונות הזמינות כדי להתאים אותן בצורה הטובה ביותר הפונקציונליות של המוצר.
דרישות איכות
- זמן אחזור: חייב להיות שווה ל-300 אלפיות שנייה או קטן ממנו.
- אמינות: חייבת להיות יותר מ-97% או שווה לו.
מכשיר לדוגמה: נתב פשוט
הקטע הזה מכיל דוגמאות למטענים ייעודיים (payloads) של Intent שמייצגים 'נתב' נפוץ. על סמך סוג המכשיר והתכונות שמפורטות למעלה. אם מוסיפים או מסירים תכונות בהטמעה, תשנה את התשובות שלכם בהתאם כך שישקפו את השינויים האלה.
דוגמה של תגובת 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 } } ] } }
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 } } ] } }